- 用于处理 API 请求的 FastAPI 服务器。
- 用于存储 Agent 会话、知识和记忆的 PostgreSQL 数据库。
- 一组预构建的 Agent,可作为起点。
快速入门
请按照以下步骤操作,以启动并运行您的 Agent API: 先决条件:应已安装并运行 Docker Desktop。1
克隆仓库
2
导出您的 OpenAI 密钥
3
启动应用程序
4
测试应用程序
此命令将启动:
- FastAPI 服务器,运行在
localhost:8000
。 - PostgreSQL 数据库,可通过
localhost:5432
访问。
- 在 localhost:8000/docs 测试 API。
- 连接到 Agno Playground 或 Agent UI:
- 打开 Agno Playground app.agno.com/playground/agents。
- 添加
http://localhost:8000
作为新的端点。您可以将其命名为Agent API
(或任何您喜欢的名称)。 - 选择您新添加的端点,然后开始与您的 Agent 聊天。
5
停止应用程序
文件夹结构
agent-api
文件夹包含以下结构:
预构建 Agent
/agents
文件夹包含预构建的 Agents,你可以将它们作为起点。
- Web Search Agent: 一个可以搜索网络的简单 Agent。
- Agno Assist: 一个可以帮助回答关于 Agno 的问题的 Agent。
- 重要提示: 在使用此 Agent 之前,请确保加载
agno_assist
知识库。
- 重要提示: 在使用此 Agent 之前,请确保加载
- Finance Agent: 一个使用 Yahoo Finance API 来获取股票价格和财务数据的 Agent。
管理 Python 依赖
1
修改 pyproject.toml
在
pyproject.toml
文件的 [tool.poetry.dependencies]
部分添加或更新您想要的 Python 包依赖。2
生成 requirements.txt
requirements.txt
文件用于构建应用程序镜像。修改 pyproject.toml
后,使用以下命令重新生成 requirements.txt
:3
重建 Docker 镜像
重建您的 Docker 镜像以包含更新的依赖项:
在生产环境中运行
本仓库包含一个Dockerfile
,用于构建适用于生产环境的容器镜像版本的应用程序。
在生产环境中运行的一般流程是:
- 更新
scripts/build_image.sh
文件并设置您的IMAGE_NAME
和IMAGE_TAG
变量。 - 构建镜像并将其推送到您的容器镜像仓库:
- 在您选择的云服务提供商上运行。
详细步骤
1. 为生产环境进行配置
- 确保您的生产环境环境变量(例如
OPENAI_API_KEY
、数据库连接字符串)得到安全管理。大多数云服务提供商都提供一种方法,将这些作为环境变量设置给您部署的服务。 - 检查
/agents
目录中的代理配置,并确保它们已根据您的生产需求进行设置(例如,正确的模型版本,任何特定于生产的设置)。
2. 构建您的生产 Docker 镜像
更新scripts/build_image.sh
脚本,设置您想要的 IMAGE_NAME
和 IMAGE_TAG
(例如 your-repo/agent-api:v1.0.0
)。
运行脚本来构建和推送镜像:
3. 部署到云服务
将镜像推送到镜像仓库后,您可以将其部署到支持容器化应用程序的各种云服务。一些常见的选项包括: 无服务器容器平台:- Google Cloud Run:一个全托管平台,可自动扩展您的无状态容器。
- AWS App Runner:轻松大规模部署容器化的 Web 应用程序和 API。
- Azure Container Apps:使用无服务器容器构建和部署现代应用程序和微服务。
- Amazon Elastic Container Service (ECS):通常与 AWS Fargate 结合用于无服务器计算,或与 EC2 实例结合使用。
- Google Kubernetes Engine (GKE):托管的 Kubernetes 服务。
- Azure Kubernetes Service (AKS):托管的 Kubernetes 服务。
- Railway.app:从 Dockerfile 轻松部署。
- Render:简化 Docker 容器、数据库和静态站点的部署。
- Heroku:支持部署 Docker 容器。
- Modal:用于在云端运行 Python 代码的平台,可以提供 Web 端点。
8000
上运行)、环境变量、扩展和数据库连接。
4. 数据库配置
默认的docker-compose.yml
文件为本地开发设置了一个 PostgreSQL 数据库。在生产环境中,请使用托管数据库服务(例如 AWS RDS、Google Cloud SQL、Azure Database for PostgreSQL)。
确保您的已部署应用程序配置了生产数据库的正确数据库连接 URL,通常通过环境变量进行配置。
附加信息
恭喜您成功运行了 Agent API。- 阅读如何在 将工作区与 Agent API 配合使用