4.3 KiB
4.3 KiB
Agent 镜像推送总结
推送时间
2026-01-15
推送到的 ACR
agnettaiji.azurecr.io
已推送的镜像
1. Search Agent
- 镜像:
agnettaiji.azurecr.io/ai-agents/search-agent:latest - 平台: linux/arm64
- 状态: ✅ 已推送
- 更新内容:
- 添加 agent_callback_utils.py
- 支持从请求参数传递
llm_api_key和user_id - 集成回调功能,自动追踪工具使用(web_search, content_reader)
2. Jina Search Agent
- 镜像:
agnettaiji.azurecr.io/ai-agents/jina-search-agent:latest - 平台: linux/arm64
- 状态: ✅ 已推送
- 更新内容:
- 添加 agent_callback_utils.py
- 支持从请求参数传递
jina_api_key和user_id - 移除全局 JINA_API_KEY 环境变量依赖
- 集成回调功能,追踪工具使用(jina_reader)
3. MySQL Agent
- 镜像:
agnettaiji.azurecr.io/ai-agents/mysql-agent:latest - 平台: linux/arm64
- 状态: ✅ 已推送
- 更新内容:
- 重大重构: 从循环模式改为 FastAPI HTTP 服务
- 添加 agent_callback_utils.py
- 新增 FastAPI 端点:
/health,/query,/ - 支持从请求参数传递
openai_api_key和user_id - 集成回调功能,追踪工具使用(sql_database)
- 新增依赖: fastapi, uvicorn, requests, pydantic
4. PostgreSQL Agent
- 镜像:
agnettaiji.azurecr.io/ai-agents/postgresql-agent:latest - 平台: linux/arm64
- 状态: ✅ 已推送
- 更新内容:
- 重大重构: 从循环模式改为 FastAPI HTTP 服务
- 添加 agent_callback_utils.py
- 新增 FastAPI 端点:
/health,/query,/ - 支持从请求参数传递
openai_api_key和user_id - 集成回调功能,追踪工具使用(sql_database)
- 新增依赖: fastapi, uvicorn, requests, pydantic
5. Azure Blob Agent
- 镜像:
agnettaiji.azurecr.io/ai-agents/azure-blob-agent:latest - 平台: linux/arm64
- 状态: ✅ 已推送
- 更新内容:
- 添加 agent_callback_utils.py
- 支持从请求参数传递
litellm_api_key和user_id - 移除全局 LITELLM_API_KEY 环境变量依赖
- 集成回调功能,追踪工具使用(azure_blob_storage)
回调功能说明
所有 Agent 现在都支持:
- 自动时间追踪: 自动记录 Pod 运行时间
- 工具使用追踪: 记录使用的工具列表
- 用户 ID 追踪: 支持多租户计费
- 自动回调: 在请求结束时自动发送 POST 请求到回调 URL
回调 URL
- 默认:
http://mcp-server:8002/api/v1/billing/agent-callback - 可通过环境变量
AGENT_CALLBACK_URL自定义
回调数据格式
{
"agentName": "pod-name",
"userId": "user-123",
"podRunningTimeSeconds": 120,
"toolsUsed": ["tool1", "tool2"],
"startTime": "2026-01-15T10:00:00Z",
"endTime": "2026-01-15T10:02:00Z",
"requestId": "req-xxx"
}
API 密钥处理变化
之前
- 所有 API 密钥都通过环境变量设置
- 不支持多租户
现在
- API 密钥通过请求参数传递
- 支持多租户场景
- 其他配置仍然通过环境变量
请求示例
Search Agent
{
"query": "search query",
"llm_api_key": "sk-xxx",
"user_id": "user-123"
}
MySQL/PostgreSQL Agent
{
"query": "SQL query",
"openai_api_key": "sk-xxx",
"user_id": "user-123"
}
Azure Blob Agent
{
"query": "blob query",
"litellm_api_key": "sk-xxx",
"user_id": "user-123"
}
环境变量要求
所有 Agent 部署时需要设置:
POD_NAME: Pod 名称(必需,用于回调中的 agentName)AGENT_CALLBACK_URL: 回调 URL(可选,默认 http://mcp-server:8002/api/v1/billing/agent-callback)USER_ID: 默认用户 ID(可选,请求中未提供时使用)
验证命令
# 列出所有镜像
az acr repository list --name agnettaiji --output table
# 查看特定镜像的标签
az acr repository show-tags --name agnettaiji --repository ai-agents/search-agent --output table
后续步骤
- ✅ 所有 Agent 镜像已推送到 ACR
- ⏳ 需要更新 Kubernetes 部署文件以使用新镜像
- ⏳ 需要测试回调功能是否正常工作
- ⏳ 需要验证多租户 API 密钥处理
构建脚本
创建了批量构建脚本: build_all_agents.sh
# 使用方法
./build_all_agents.sh [TAG]
# 默认使用 latest 标签
./build_all_agents.sh