本文于 2025-01-17 10:56 更新,部分内容具有时效性,如有失效,请留言
综合介绍
AI Agent Service Toolkit 是一个基于LangGraph、FastAPI和Streamlit构建的完整工具集,旨在帮助开发者快速构建和运行AI代理服务。该工具包提供了一个灵活的框架,支持用户自定义代理的功能与交互方式,适合于各种应用场景。无论是开发聊天机器人、数据分析工具,还是其他基于AI的服务,用户都可以利用该工具包快速实现。工具包的设计考虑到了易用性和可扩展性,用户可以通过简单的配置和代码修改,轻松集成所需的功能。
功能列表
- LangGraph 代理 :使用 LangGraph 框架构建的可定制代理。
- FastAPI 服务 :提供流式和非流式端点的服务。
- 高级流式处理 :支持基于令牌和消息的流式处理。
- 内容审核 :实现 LlamaGuard 进行内容审核(需要 Groq API 密钥)。
- Streamlit 界面 :提供与代理交互的用户友好聊天界面。
- 多代理支持 :在服务中运行多个代理并通过 URL 路径调用。
- 异步设计 :利用 async/await 高效处理并发请求。
- 反馈机制 :包括与 LangSmith 集成的基于星级的反馈系统。
- 动态元数据 :/info 端点提供有关服务和可用代理及模型的动态配置元数据。
- Docker 支持 :包括 Dockerfiles 和 docker compose 文件,便于开发和部署。
- 测试 :包括完整的单元和集成测试。
使用帮助
安装流程
- 直接在 Python 中运行 :
- 确保至少有一个 LLM API 密钥:
echo 'OPENAI_API_KEY=your_openai_api_key' >> .env
- 安装依赖项并同步:
pip install uv uv sync --frozen
- 激活虚拟环境并运行服务:
source .venv/bin/activate python src/run_service.py
- 在另一个终端中激活虚拟环境并运行 Streamlit 应用:
source .venv/bin/activate streamlit run src/streamlit_app.py
- 使用 Docker 运行 :
- 确保至少有一个 LLM API 密钥:
bash echo 'OPENAI_API_KEY=your_openai_api_key' >> .env
- 使用 Docker Compose 运行:
bash docker compose up
- 确保至少有一个 LLM API 密钥:
功能操作流程
- LangGraph 代理 :
- 定义代理:在
src/agents/
目录中定义具有不同能力的代理。 - 配置代理:使用
langgraph.json
文件配置代理的行为和设置。
- 定义代理:在
- FastAPI 服务 :
- 启动服务:运行
src/service/service.py
启动 FastAPI 服务。 - 访问端点:通过
/stream
和/non-stream
端点访问代理服务。
- 启动服务:运行
- Streamlit 界面 :
- 启动界面:运行
src/streamlit_app.py
启动 Streamlit 应用。 - 交互使用:通过用户友好的聊天界面与代理进行交互。
- 启动界面:运行
- 内容审核 :
- 配置 LlamaGuard:在
.env
文件中添加 Groq API 密钥以启用内容审核功能。
- 配置 LlamaGuard:在
- 多代理支持 :
- 配置多个代理:在
src/agents/
目录中定义多个代理,并通过不同的 URL 路径调用。
- 配置多个代理:在
- 反馈机制 :
- 集成反馈系统:在代理服务中集成基于星级的反馈系统,收集用户反馈以改进服务。
- 动态元数据 :
- 访问元数据:通过
/info
端点获取有关服务和可用代理及模型的动态配置元数据。
- 访问元数据:通过
- 测试 :
- 运行测试:在
tests/
目录中运行单元和集成测试,确保服务的稳定性和可靠性。
- 运行测试:在