chat2graph
图原生智能体系统,通过多智能体协作实现自然语言与图数据库对话,降低用图门槛
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
图原生智能体系统,通过多智能体协作实现自然语言与图数据库对话,降低用图门槛
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象一个场景:你手里有一张复杂的社交网络图谱,节点是用户账号,边缘是好友关系、转账记录、群聊互动——数据量级在百万级以上。你想找出一笔异常交易背后的人员关联链,传统做法是写 Cypher 查询语句,把「一跳、两跳邻居」「最短路径」「共同好友」这些概念翻译成精确的图数据库语法。这对 DBA 来说是基本功,但对业务分析师、产品经理甚至数据科学家来说,就是一道高高的技术门槛。
Chat2Graph 要解决的就是这道门槛。它是蚂蚁集团 TuGraph 团队开源的「图原生智能体系统」(Graph Native Agentic System),核心目标是:让任何人都能用自然语言与图数据库对话,背后的技术支撑,则是一套完整的混合多智能体架构。
这个项目的诞生有其清晰的行业脉络。业界有句不成文的说法:「23年卷 SFT,24年卷 RAG,25年卷智能体」。GraphRAG 技术(用知识图谱替代向量作为 RAG 的知识库)在 2024 年已经成熟,而 2025 年的方向是将智能体(Agent)引入图数据处理链路。Chat2Graph 正是在这个节点上诞生的——它不只是一个聊天界面,更是一套将智能体能力全面渗透到图数据库使用全链路的开源系统。
Chat2Graph 采用了一种叫做 One-Active-Many-Passive 的混合多智能体架构,这是整个系统最核心的设计哲学。
Leader(领导智能体) 是整个系统的「调度中枢」。当用户用自然语言发起一个任务时,Leader 负责对这个任务做分解(Job Decomposition),它会调用 LLM 分析用户意图,把一个模糊的需求拆解成若干个可执行的子任务(Sub-Job),每个子任务交给对应的 Expert(专家智能体)执行。在分解过程中,Leader 使用「面向智能体链(Chain of Agents,CoA)」的方式进行图规划——它不是线性地列任务清单,而是用图结构来描述任务之间的依赖关系和执行顺序,这样可以更好地处理复杂的多跳推理场景。
Expert(专家智能体) 是具体的执行者,数量和类型可以根据业务场景动态扩展。当前代码库中已经包含多种专家角色:图数据库操作专家、代码执行专家、浏览器操作专家等。每个专家都有自己专属的工具集(Toolkit)和工作流(Workflow),通过 MCP(Model Context Protocol)协议实现与外部系统的集成。MCP 是一种新兴的智能体间通信协议,允许智能体以一种标准化的方式调用外部工具和获取上下文,Chat2Graph 在这一层做了较早的探索和集成。
Reasoner(推理引擎) 实现了「快&慢思考结合」的双 LLM 推理机制。这借鉴了 Kahneman 的「系统一/系统二」认知理论:快思考用于处理简单直接的查询,比如「查询某节点的所有属性」;慢思考用于处理需要多步推理的复杂问题,比如「找出从 A 到 B 的所有路径中哪条涉及最多中介节点」。这种分层设计让系统在响应速度和推理深度之间取得了平衡。
Chat2Graph 的存储层设计体现了对「图+AI」场景的深度理解。它同时接入两类数据库:
Neo4j 作为主图数据库,存储实体(Entity)和关系(Relation)的结构化数据。这是 Chat2Graph 管理图谱知识的底层基础设施,用户上传文档后,系统会自动提取其中的实体和关系,存入 Neo4j 形成知识图谱。
ChromaDB 作为向量数据库,用于存储文档和实体的高维嵌入表示。在知识检索阶段,系统会先用向量相似度做初步召回,再用图数据库中的关系信息做精确筛选——这种「向量粗召回 + 图关系精排」的双阶段检索策略,是当前 GraphRAG 领域的主流方案。
两者结合的好处是:向量检索擅长找到语义相似的内容(图谱中没有明确标注但语义相近的节点),而图数据库擅长捕捉结构化的关联关系(两跳邻居、最短路径、社区检测等)。两种能力叠加,才能真正发挥「Graph + AI」的优势。
智能体的记忆系统(Memory)是 Chat2Graph 的另一亮点。它采用了分层记忆架构,从近到远分为三层:
短期记忆(Short-term Memory):记录当前会话中的对话历史和中间推理结果,用于支持多轮对话中的上下文连贯性。当用户追问「上一条查询结果中,那个节点的直接邻居是谁」时,系统会从短期记忆中获取上一步的结果。
长期记忆(Long-term Memory):存储跨会话积累的结构化知识,比如「某类查询的常用模式」「某个领域的专业术语定义」等。这部分记忆会被写入图数据库,持久化保存。
工作记忆(Working Memory):在执行具体任务时,动态聚合相关的记忆片段,形成任务专用的上下文窗口。比如在执行「查找异常交易关联链」任务时,系统会优先加载与「交易」「异常」「资金流向」相关的记忆。
这种分层设计的优势在于:既保证了多轮对话的流畅性,又避免了上下文窗口的无限膨胀,同时让跨会话的知识积累成为可能。
一个功能完备的智能体系统需要集成大量工具(Tool):图数据库查询、网页浏览、代码执行、文件读写……Chat2Graph 的做法是将这些工具本身也建模为图谱中的节点和边——工具知识图谱(Toolkit Knowledge Graph)。
在这个图谱中,每个工具是一个节点,工具之间的调用依赖关系、参数传递关系、功能互补关系都用边来表示。当 Leader 需要调度某个 Expert 执行任务时,它可以通过查询工具知识图谱,动态决定该 Expert 需要调用哪些工具、以什么顺序调用。相比传统的「固定工具集 + 条件分支」方案,这种图结构化的工具管理让系统更容易扩展新工具,也更容易发现工具之间的协同关系。
Chat2Graph 提供了一个基于 React + Umi.js + Ant Design 构建的 Web 界面。这个界面不仅提供了传统的聊天对话框,还内置了图谱可视化能力——用户的对话历史、查询结果中的实体关系,都会以交互式图谱的形式展示出来。用户可以点击图谱中的节点,查看其属性和邻居关系,也可以直接在图谱上做操作(比如高亮某个子图、导出查询结果)。
前端还使用了 @antv/g6 作为图谱可视化的底层渲染引擎。G6 是蚂蚁 AntV 团队开源的图可视化库,在处理大规模图数据时有较好的性能表现。
坦率地说,Chat2Graph 的部署对普通用户来说有一定门槛。没有提供 Docker 支持,是当前版本最大的遗憾——这意味着用户必须自己配置 Python 3.10-3.11 环境、安装 Poetry、管理 Node.js 和 npm、处理 Neo4j 或 TuGraph 的安装和启动。
不过,项目在文档方面的投入是值得称道的。它提供了完整的中英文文档,涵盖产品简介、快速开始、技术原理、使用手册、开发指南和运维手册六个维度。README 中还附带了详细的技术路线图(Roadmap),让用户对项目的未来发展方向一目了然。bin/ 目录下提供的 start.sh、build.sh 等脚本,虽然不是 Docker 一键部署,但对于熟悉 Shell 的开发者来说,已经足够友好。
部署步骤简化版:
git clone https://github.com/TuGraph-family/chat2graphbin/build.sh(自动安装 Poetry 依赖 + 构建前端)bin/start.sh 启动服务亮点:
局限:
Chat2Graph 的开源,是 2025 年「Graph + AI」领域的一个标志性事件。它代表了从「用 AI 辅助图数据库使用」(AI for Graph)到「用图结构增强 AI 推理能力」(Graph for AI)的范式升级。蚂蚁团队选择将内部沉淀了数年的图智能体技术开源,既是对开源社区的回馈,也是对「图原生智能体」这一新方向的有力背书。
对于 AI 爱好者来说,Chat2Graph 展示了如何用多智能体架构处理复杂的关系推理问题;对于开发者来说,它的 SDK 设计(位于 app/core/sdk/)提供了清晰的服务接口,方便做二次开发和系统集成。随着 GraphRAG 技术的持续成熟和 MCP 生态的扩张,Chat2Graph 这类「图原生智能体」系统的价值将会更加凸显。