# 🚀 Azure Blob Storage Agent 快速启动 ## 一键启动命令 ### 1. 构建镜像 ```bash cd /home/taiji/tools/agent-manager/agent_templates ./build_azure_blob_agent.sh latest ``` ### 2. 启动 Agent(本地测试) ```bash # 方式 A: 启动时提供连接字符串(推荐) docker run -d --name azure-blob-agent \ -p 8080:8080 \ -e LITELLM_API_BASE=http://20.2.70.108:4000 \ -e LITELLM_MODEL=gpt-3.5-turbo \ -e LITELLM_API_KEY=sk-1234 \ -e AZURE_STORAGE_CONNECTION_STRING="DefaultEndpointsProtocol=https;AccountName=xxx;AccountKey=xxx;EndpointSuffix=core.windows.net" \ azure-blob-agent:latest # 方式 B: 稍后通过 API 连接 docker run -d --name azure-blob-agent \ -p 8080:8080 \ -e LITELLM_API_BASE=http://20.2.70.108:4000 \ -e LITELLM_MODEL=gpt-3.5-turbo \ -e LITELLM_API_KEY=sk-1234 \ azure-blob-agent:latest # 然后调用 /connect API 连接 # 方式 C: 如果 LiteLLM 在另一个容器中 docker run -d --name azure-blob-agent \ --network host \ -e LITELLM_API_BASE=http://localhost:4000 \ -e LITELLM_MODEL=gpt-3.5-turbo \ -e LITELLM_API_KEY=sk-1234 \ -e AZURE_STORAGE_CONNECTION_STRING="YOUR_CONNECTION_STRING" \ azure-blob-agent:latest ``` ### 3. 测试 Agent #### 方法 1: 使用 Bash 测试脚本 ```bash ./test_azure_blob_agent.sh ``` #### 方法 2: 使用 Python 客户端 ```bash # 设置连接字符串(可选) export AZURE_STORAGE_CONNECTION_STRING="DefaultEndpointsProtocol=https;AccountName=xxx;..." # 运行客户端 python3 test_client.py ``` #### 方法 3: 使用 curl 手动测试 ```bash # 健康检查 curl http://localhost:8080/health # 连接到 Azure Storage curl -X POST http://localhost:8080/connect \ -H 'Content-Type: application/json' \ -d '{ "connection_string": "DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net" }' # 执行查询 curl -X POST http://localhost:8080/query \ -H 'Content-Type: application/json' \ -d '{"query": "列出所有容器"}' ``` ## 推送到 ACR ```bash # 登录 ACR az acr login --name agnettaiji # 推送镜像 docker tag azure-blob-agent:latest agnettaiji.azurecr.io/ai-agents/azure-blob-agent:latest docker push agnettaiji.azurecr.io/ai-agents/azure-blob-agent:latest ``` ## 在 K8s 中部署 ### 使用 agent-manager ```bash # 添加到 k8s_manager.py 的 image_map "azure_blob_agent": "agnettaiji.azurecr.io/ai-agents/azure-blob-agent:latest" # 创建 agent curl -X POST http://localhost:8000/agents \ -H 'Content-Type: application/json' \ -d '{ "name": "my-blob-agent", "template": "azure_blob_agent", "env": { "LITELLM_API_BASE": "http://litellm-service:4000", "LITELLM_MODEL": "gpt-3.5-turbo", "LITELLM_API_KEY": "sk-1234" } }' ``` ## 常见问题 ### Q: 容器启动失败 ```bash # 查看日志 docker logs azure-blob-agent # 检查 LiteLLM 是否可达 docker exec azure-blob-agent curl http://host.docker.internal:4000/health ``` ### Q: 无法连接到 Azure Storage ```bash # 验证连接字符串格式 # 正确格式包含: AccountName, AccountKey, EndpointSuffix # 测试连接 curl -X POST http://localhost:8080/connect \ -H 'Content-Type: application/json' \ -d '{"connection_string": "YOUR_STRING"}' -v ``` ### Q: 查询没有响应 ```bash # 检查是否已连接 curl http://localhost:8080/health | jq . # 查看详细日志 docker logs -f azure-blob-agent ``` ## 文件清单 ``` agent_templates/ ├── azure_blob_agent.py # 主程序 ├── azure_blob_agent.Dockerfile # Docker 镜像 ├── build_azure_blob_agent.sh # 构建脚本 ├── test_azure_blob_agent.sh # Bash 测试脚本 ├── test_client.py # Python 客户端 ├── AZURE_BLOB_AGENT_USAGE.md # 详细使用文档 └── QUICKSTART.md # 本文件 ``` ## 下一步 - 阅读 [详细使用文档](AZURE_BLOB_AGENT_USAGE.md) - 查看 [agent_templates README](../README.md) - 集成到你的应用中