摘要 :传统的 RAG 系统只能"检索"片段,往往缺乏全局观。今天推荐一个基于 Python 3.12+ 和 FastAPI 构建的开源项目 AgentForce。它融合了 GraphRAG(知识图谱增强)的认知能力与 Agentic Workflow(代理工作流)的执行能力,支持动态规划、多模态知识库构建及可视化交互,是学习和构建下一代 AI 应用的绝佳范例。
💡 为什么关注 AgentForce?
在构建企业级知识库或 AI 助手时,我们经常遇到两个痛点:
-
RAG 的"碎片化"问题:向量检索只能找到相关的文本块,无法回答像"总结这份财报的主要风险"这种需要理解全局关系的宏观问题。
-
Agent 的"执行力"问题:简单的 Chatbot 缺乏规划能力,无法处理"先查库存,再比价,最后生成报告"这种复杂任务。
AgentForce 正是为了解决这些问题而生。它不是一个简单的问答机器人,而是一个具备"图谱认知"和"自主规划"能力的智能平台。
项目地址:👉 https://github.com/TW-NLP/AgentForce
✨ 核心特性解读
1. ⚡️ Agentic Workflow (代理工作流)
AgentForce 引入了类似于人类的思考模式。它不仅仅是回答问题,而是在执行任务。
-
动态规划:Agent 会分析你的问题复杂度,自动判断是直接回答、查阅知识库,还是联网搜索(Tavily)。
-
长程记忆:内置了会话持久化机制,它记得住你们上周聊了什么,保证了上下文的连贯性。
-
多线程处理 :完备的 Session 管理,支持多用户并发使用。
2. 🕸️ Graph-Powered (图谱增强认知)
这是该项目最大的亮点。它利用 GraphRAG 技术,将碎片化的文档转化为结构化的知识图谱。
-
实体与关系提取:自动从文档中提取 Entity(实体)并构建 Relationship(关系)。
-
全局查询 (Global Query):这是传统 RAG 做不到的。它可以基于社区摘要(Community Summaries)回答宏观问题。
-
多模态支持:扔给它 PDF、Word、TXT 甚至 CSV,它都能处理。
3. 🎛️ 动态可配置 (Dynamic Control)
开发者最爱的特性------热更新。
-
模型热切换:可以在 GPT-4o, Claude-3.5 或本地模型之间无缝切换,无需重启服务。
-
工具链集成:一键开启 Tavily 联网搜索或 Firecrawl 网页爬取。
🛠️ 技术架构概览
AgentForce 采用了现代化的前后端分离架构,代码结构清晰,非常适合二次开发学习。
-
后端:Python 3.12+, FastAPI, Uvicorn, LangChain (可选), NetworkX
-
RAG 引擎:GraphRAG, 社区发现算法
-
前端:原生 JS (ES6+), HTML5, CSS3 (轻量级,无复杂构建依赖)
Plaintext
AgentForce/
├── config/ # [控制中心] 提示词、配置与记忆存储
├── src/ # [核心引擎]
│ ├── api/ # RESTful API & WebSocket
│ ├── services/ # 核心业务 (LLM, GraphRAG, Search)
│ └── workflow/ # 代理大脑 (Agent Nodes & Edges)
├── static/ # [交互界面] 轻量级 Web UI
├── run.py # 启动入口
└── README.md
🚀 快速上手体验
环境要求:Python 3.12+
第一步:克隆与安装
# 1. 克隆项目
git clone https://github.com/TW-NLP/AgentForce.git
cd AgentForce
# 2. 创建虚拟环境 (强烈推荐)
python -m venv venv
# Windows 激活: venv\Scripts\activate
# Mac/Linux 激活: source venv/bin/activate
# 3. 安装依赖
pip install -r requirements.txt
第二步:启动服务
AgentForce 分为后端 API 和前端 UI。
1. 启动后端引擎
python run.py
# 后端 API 将运行在 http://localhost:8000
2. 启动前端界面
cd static
python -m http.server 8080
# 访问浏览器 http://localhost:8080 即可开始使用
📖 玩法演示
1. 模型配置
系统启动后,点击左侧设置图标。填入你的 OpenAI API Key 或者兼容的 LLM 服务商信息。配置会自动保存到 saved_config.json,下次启动无需重新输入。
2. 构建知识库 (ETL)
进入"知识库"页面,拖拽上传你的 PDF 财报或技术文档。 观察控制台,你会看到 AgentForce 正在执行 ETL 流程 : 文本分块 -> 实体提取 -> 关系构建 -> 社区检出。 这个过程非常解压,也是 GraphRAG 的核心魅力所在。
3. 深度对话
回到对话框,尝试提一个复杂问题:
"你好,对比一下本公司上市时间和百度公司上市时间,生成报告。"
你会发现 Agent 不再是机械地列出原文,而是生成了一份综合性的分析报告。
🔌 API 扩展
对于想把功能集成到自己系统的开发者,后端提供了标准的 Swagger 文档。 启动后访问 http://localhost:8000/docs 即可查看所有接口,支持 POST /chat 对话、POST /graphrag/query 图谱查询等。
✍️ 总结
AgentForce 是一个展示了 GraphRAG 与 Agentic Workflow 如何落地的优秀案例。无论你是想学习最新的 RAG 技术,还是想搭建一个私有的企业级知识库,这个项目都值得一试。
如果你觉得项目不错,欢迎去 GitHub 点个 Star ⭐️ 支持一下作者!
🔗 项目地址 : https://github.com/TW-NLP/AgentForce