Simple Agents 是一个企业级智能代理框架,基于 LangGraph 构建,提供开箱即用的 AI Agent 能力。适用于需要复杂任务编排、多模态处理和安全隔离的场景。
- 🔧 模块化架构 - 中间件、技能、工具完全解耦,易于扩展
- 🔒 安全隔离 - 每个对话独立沙箱环境(
data/sandbox_sessions/{thread_id}/)
- 🤖 子代理支持 - 内置研究子代理,支持任务委托和并行执行
- 📊 多模态处理 - 支持 PDF、Excel、Word、图片等文件处理
- 🌐 Web 研究能力 - 智能网页抓取、内容提取和 Markdown 转换
- 💾 持久化存储 - Redis + PostgreSQL,支持对话历史和状态管理
- 🔄 动态模型切换 - 运行时切换 LLM 模型(Anthropic/OpenAI/DeepSeek)
- 🎨 完整 UI - 配套 Web 聊天界面(agent-chat-ui)
simple-agents/
├── src/
│ ├── graph.py # 主 Agent 定义(LangGraph 入口)
│ ├── webapp.py # FastAPI 服务(文件下载、模型列表)
│ ├── middleware/ # 中间件层
│ │ ├── attachment_extract.py # 附件提取
│ │ ├── streaming_tool_call_fix.py # 流式输出修复
│ │ ├── generated_files.py # 生成文件追踪
│ │ └── suggested_questions.py # 建议问题生成
│ ├── skills/ # 技能模块(可插拔)
│ │ ├── pdf/ # PDF 处理(填充、转图片)
│ │ ├── xlsx/ # Excel 处理(重算、分析)
│ │ ├── pandas-data-analysis/ # 数据分析
│ │ ├── relation-graph/ # 关系图谱构建
│ │ └── tavily-search/ # 搜索增强
│ ├── tools/ # 基础工具
│ │ ├── think.py # 思考工具(推理链)
│ │ ├── fetch.py # URL 抓取
│ │ └── converts.py # 格式转换
│ └── prompts.py # 提示词管理
├── deepagents/ # 核心框架包
│ ├── graph.py # create_deep_agent 主函数
│ ├── middleware/ # 框架中间件
│ │ ├── filesystem.py # 文件系统操作
│ │ ├── memory.py # 记忆管理
│ │ ├── subagents.py # 子代理调度
│ │ ├── skills.py # 技能加载
│ │ └── summarization.py # 上下文压缩
│ └── backends/ # 后端实现
│ ├── sandbox.py # 沙箱隔离
│ ├── filesystem.py # 文件操作
│ └── store.py # 存储抽象
└── docker-compose.yml # 多服务编排
┌─────────────────┐
│ agent-chat-ui │ (端口 8124)
│ Web 聊天界面 │
└────────┬────────┘
│
▼
┌─────────────────┐
│ agents-api │ (端口 8123)
│ LangGraph 服务 │
└────┬───┬───┬────┘
│ │ │
│ │ └──────────┐
│ │ ▼
│ │ ┌───────────────┐
│ │ │browser-service│ (端口 2025)
│ │ │ 浏览器抓取 │
│ │ └───────────────┘
│ │
▼ ▼
┌─────┐ ┌──────────┐
│Redis│ │PostgreSQL│ (端口 5433)
└─────┘ └──────────┘
- 思考链(Chain of Thought) -
think_tool 支持复杂推理
- 上下文管理 - 自动压缩长对话,保持关键信息
- 流式输出 - 实时响应,优化用户体验
- 智能抓取 - 通过
browser-service 渲染 JavaScript 页面
- 内容提取 - 自动转换为 Markdown 格式
- 研究子代理 - 专门处理深度研究任务(限制 500 次工具调用)
| 文件类型 |
支持操作 |
| PDF |
填充表单、转图片、提取文本 |
| Excel |
公式重算、数据分析、图表生成 |
| Word |
内容提取、格式转换 |
| 图片 |
OCR、视觉理解 |
- Pandas 集成 - 自动生成数据分析代码
- SQL 分析 - 支持数据库查询和可视化
- 关系图谱 - 构建实体关系网络
- 沙箱环境 - 每个对话独立文件系统
- 工具限制 - 防止无限循环(全局 500 次,单工具可配置)
- API 认证 - 基于 API Key 的访问控制
- 中间件机制 - 请求/响应拦截和修改
- 技能插件 - 从
/skills 目录自动加载
- 动态工具 - 运行时注入工具(
config.configurable.dynamic_tools)
- 模型切换 - 支持多种 LLM 提供商
| 层级 |
技术 |
| 框架 |
LangGraph 1.0.9, LangChain 1.2.11 |
| LLM |
Anthropic Claude, OpenAI, DeepSeek |
| 后端 |
FastAPI 0.132.0, Python 3.12+ |
| 存储 |
Redis 6, PostgreSQL 16 (pgvector) |
| 前端 |
agent-chat-ui (React) |
| 容器 |
Docker Compose |
| 数据处理 |
Pandas 3.0.1, openpyxl 3.1.5 |
- 智能客服 - 多轮对话、知识库检索
- 内容创作 - 文章生成、文档处理
- 数据分析 - 自动化报表、可视化
- 研究助手 - Web 搜索、信息整合
- 金融分析 - 财报解读、市场研究
- 法律咨询 - 文档审查、案例检索
- 教育培训 - 作业批改、教学设计
- 电商运营 - 商品分析、用户画像
# 复制环境变量模板
cp .env.example .env
# 编辑 .env 文件
L_MODEL_MODEL_ID=claude-3-5-sonnet-20241022
L_MODEL_PROVIDER=anthropic
L_MODEL_API_KEY=sk-ant-xxxx
# 开发模式(单机)
./start_server.sh
# 生产模式(Docker Compose)
docker-compose up -d
| 特性 |
Simple Agents |
传统 Chatbot |
| 任务编排 |
✅ 多步骤自动化 |
❌ 单轮问答 |
| 文件处理 |
✅ 多格式支持 |
❌ 仅文本 |
| 代码执行 |
✅ 沙箱隔离 |
❌ 不支持 |
| 子任务委托 |
✅ 子代理机制 |
❌ 单一流程 |
| 特性 |
Simple Agents |
AutoGPT |
LangChain |
| 生产就绪 |
✅ 完整部署方案 |
❌ 实验性 |
⚠️ 需自行集成 |
| 安全隔离 |
✅ 内置沙箱 |
❌ 无隔离 |
⚠️ 需自行实现 |
| UI 界面 |
✅ 开箱即用 |
❌ 无 |
❌ 无 |
| 中间件 |
✅ 完整生态 |
❌ 有限 |
⚠️ 需自行开发 |
- 按量计费 - API 调用次数、Token 消耗
- 订阅制 - 企业版、专业版、基础版
- 私有部署 - 一次性授权费 + 年度维护
- 行业定制 - 金融/法律/教育专用版
- 集成服务 - 与企业现有系统对接
- 咨询培训 - Agent 开发培训、最佳实践
- 白标方案 - 品牌定制、源码授权
- 插件市场 - 技能/中间件付费生态
- 技术支持 - 企业级 SLA 保障
- 响应延迟: < 2s (首 Token)
- 并发支持: 100+ 对话/实例
- 文件处理: 支持 100MB+ 文档
- 沙箱隔离: 完全独立,无交叉污染
- 工具调用: 500 次/对话(可配置)
- 当前版本: v0.2.0
- Python 要求: >= 3.12
- LangGraph: 1.0.9
- 更新日期: 2026-04-29
如需技术支持或商务合作,请联系项目维护者。