diff --git a/.env.example b/.env.example index 74b7877..9f9c7df 100644 --- a/.env.example +++ b/.env.example @@ -9,7 +9,7 @@ # 智谱 AI API 密钥(用于在线模型调用 GLM-4.7-Flash) # 获取地址: https://open.bigmodel.cn/ -ZHIPUAI_API_KEY=your_zhipuai_api_key_here +ZHIPUAI_API_KEY=4d568a4367f1442bbc226cc0daf84566.44SsKVWkVIM2Mkeg # 本地 vLLM 服务认证 Token(用于本地 Gemma 模型调用) # 如果使用本地 vLLM 容器,需要设置此值与 vLLM 容器的 --api-key 参数一致 diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index 8b0cfa4..df2ad55 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -16,6 +16,29 @@ jobs: run: | python3 --version pip3 --version + + - name: 验证 Secrets 配置 + run: | + echo "🔐 检查环境变量注入情况..." + + if [ -n "$ZHIPUAI_API_KEY" ]; then + echo "✅ ZHIPUAI_API_KEY 已注入(长度:${#ZHIPUAI_API_KEY})" + else + echo "⚠️ ZHIPUAI_API_KEY 未注入(将使用空值,智谱模型不可用)" + fi + + if [ -n "$VLLM_LOCAL_KEY" ]; then + echo "✅ VLLM_LOCAL_KEY 已注入(长度:${#VLLM_LOCAL_KEY})" + else + echo "⚠️ VLLM_LOCAL_KEY 未注入(将使用空值,本地模型不可用)" + fi + + echo "" + echo "💡 提示:如果看到警告,请在 Gitea 仓库 Settings → Actions → Secrets 中添加对应密钥" + env: + ZHIPUAI_API_KEY: ${{ secrets.ZHIPUAI_API_KEY }} + VLLM_LOCAL_KEY: ${{ secrets.VLLM_LOCAL_KEY }} + - name: 确保基础镜像已拉取 run: | docker pull python:3.11-slim || true @@ -34,7 +57,7 @@ jobs: echo "等待后端服务启动..." sleep 15 for i in {1..10}; do - if curl -f http://localhost:8001/ > /dev/null 2>&1; then + if curl -f http://localhost:8001/health > /dev/null 2>&1; then echo "✅ 后端服务正常" exit 0 fi diff --git a/app/backend.py b/app/backend.py index 0df0c2e..2e7dc61 100644 --- a/app/backend.py +++ b/app/backend.py @@ -54,6 +54,13 @@ app.add_middleware( ) +# ========== 健康检查端点 ========== +@app.get("/health") +async def health_check(): + """健康检查端点,用于 Docker 和 CI/CD 监控""" + return {"status": "ok", "service": "ai-agent-backend"} + + # ========== Pydantic 模型 ========== class ChatRequest(BaseModel): message: str