agent-service-toolkit
基于 LangGraph + FastAPI + Streamlit 的企业级 AI Agent 服
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
基于 LangGraph + FastAPI + Streamlit 的企业级 AI Agent 服
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象一下,你需要给公司搭建一个 AI 助手——既能回答员工问题,又能调用内部工具,还要记录对话历史供后续分析。如果每个环节都要从零开发,光是认证、日志、多轮对话管理就够喝一壶的。JoshuaC215 的 Agent Service Toolkit 正是为解决这一痛点而生:它把 AI Agent 服务端的全部基础设施打包成一个模板,让开发者专注业务逻辑,把通用能力交给框架处理。
Agent Service Toolkit 是一个开源的 LangGraph + FastAPI + Streamlit 全栈工具包,面向需要自建 AI Agent 服务的开发者。它不是玩具 demo,而是一个可直接用于生产的环境,包含完整的服务端、客户端和 Web UI,支持 Docker 一键部署。
作者 JoshuaC215 的设计思路非常明确:提供一个可扩展的 Agent 基础设施模板,开发者只需往 src/agents/ 目录里添加自己的 Agent 逻辑,就能快速上线新能力,而无需重新搭建认证、流式输出、历史记录等基础能力。
这个项目在 GitHub 上获得了 4300+ stars,吸引了多个基于它二次开发的开源项目(如 PolyRAG、agent-web-kit),说明其模板设计得到了社区认可。
整个系统由三个核心服务组成,通过 Docker Compose 协同工作:
1. PostgreSQL 数据库:持久化存储 Agent 的对话历史和长期记忆。LangGraph 的 Store 接口依赖 PostgreSQL 提供跨会话的向量/键值存储能力。
2. FastAPI Agent Service(端口 8080):核心推理引擎,基于 LangGraph 实现多步骤推理流。提供标准的 REST API 接口,支持流式(streaming)和非流式两种调用模式。接口经过 OpenAPI 文档化,可在 /redoc 查阅。
3. Streamlit Web UI(端口 8501):面向终端用户的对话界面,通过 HTTP 调用 Agent Service。支持语音输入/输出,并内置了基于 Groq API 的内容审核功能。
用户 --(浏览器)--> Streamlit UI :8501
|
v
FastAPI Agent Service :8080
|
v
LangGraph Agent (核心推理)
|
PostgreSQL (记忆存储)
| 组件 | 技术选型 | 作用 |
|---|---|---|
| Agent 框架 | LangGraph v1.0 | 多步骤推理流、human-in-the-loop、长期记忆 |
| 后端服务 | FastAPI | 高性能异步 API、流式响应 |
| 前端界面 | Streamlit | 快速构建数据/AI 交互界面 |
| 数据校验 | Pydantic | 请求/响应结构定义 |
| 数据库 | PostgreSQL 16 | 对话历史、长期记忆存储 |
| 部署工具 | Docker Compose | 一键启动、热重载开发 |
| 依赖管理 | uv | 快速 Python 包管理 |
LangGraph v1.0 最新特性:项目紧跟 LangGraph 版本迭代,实现了 interrupt() 人机交互、Command 流程控制、Store 长期记忆等 v1.0 新特性。这些特性使得 Agent 在执行过程中可以暂停等待人工确认,或在后续会话中调用历史上下文。
多模型多 Agent 支持:通过 URL 路径区分不同 Agent(如 /research_assistant/invoke),支持同时运行多个 Agent 实例,并通过配置动态选择底层语言模型(OpenAI、Anthropic、Ollama、VertexAI 等)。
高级流式输出:项目实现了创新的双模式流式传输——既支持 token 级别的逐字输出,也支持完整的消息结构流式返回,满足不同前端组件的需求。
内容审核集成:借助 Groq API 的 Safeguard 模块,在 Agent 输入输出环节自动过滤敏感内容,适合企业内网部署场景。
热重载开发:使用 docker compose watch 模式,修改 src/agents/、src/service/ 等目录的代码后,对应容器自动重启,无需手动重建,大幅提升迭代效率。
部署极其简单,只需三步:
.env.example 为 .env,填入 OPENAI_API_KEYdocker compose watchhttp://localhost:8501 开始对话零配置、无需 GPU、支持多 LLM 提供商——这使得它在 Hackathon、原型验证、小团队内网部署等场景下非常实用。
docs/RAG_Assistant.md 手动配置 ChromaDB。随着大模型能力逐步同质化,Agent 基础设施的标准化和工程化 成为下一阶段竞争的核心。Agent Service Toolkit 提供了目前业界最完整、最接近生产级别的 LangGraph 部署参考。它证明了一件事:LangGraph 不仅能做实验性 Agent,还能通过 FastAPI + Docker 的工程化组合,支撑起真正可用的 AI 服务。
多个社区项目基于它二次开发(PolyRAG、agent-web-kit 等),也说明其架构具有良好的可扩展性,值得 AI 应用开发者关注和借鉴。