KAG
融合知识图谱结构化推理与大模型能力,克服传统 RAG 的歧义性和噪声问题
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
融合知识图谱结构化推理与大模型能力,克服传统 RAG 的歧义性和噪声问题
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象一下这样的场景:某三甲医院的 IT 部门上线了一个 AI 问答系统,医护人员输入「糖尿病患者可以用二甲双胍吗」,系统返回了看起来专业但实际上存在配伍禁忌的答案。更严重的是,当医生追问「那肾功能不全的患者呢」,系统就彻底懵了——因为它根本不理解「糖尿病」「肾功能不全」「二甲双胍」之间的关系,只是靠向量相似度在匹配文字。
这背后暴露的,正是传统 RAG(检索增强生成)技术的核心短板:它能找相似,但不会推理。而 KAG(Knowledge Augmented Generation,知识增强生成)正是为了解决这个问题而来。
图1:KAG 核心原理 — 将自然语言转化为逻辑形式,在知识图谱上执行混合推理
传统的 RAG 系统工作方式很简单:把文档切成小块(Chunk),向量化后存入向量数据库,用户提问时找到最相似的几个 Chunk,让大模型基于这些片段回答。这种方式在简单问答上效果不错,但面对需要逻辑推理、多跳查询、专业领域知识的场景时,立刻露怯。
原因在于:向量相似度只能捕获「字面相似」,无法理解语义和关系。「刘德华的老婆是谁」和「刘德华是谁」向量可能差得很远,但答案是同一个实体。而知识图谱(Knowledge Graph)恰好弥补了这一点——它用节点表示实体,用边表示关系,天然适合表达复杂知识结构。
GraphRAG 的思路由此诞生:用知识图谱替代向量数据库进行检索。但 GraphRAG 也有问题:OpenIE(开放信息抽取)会引入大量噪声,实体关系错综复杂却缺乏约束,导致系统「想太多」。
KAG 的解决思路:不追求「大而全」的知识抽取,而是让知识构建「守规矩」——通过 Schema-Constraint 约束,让知识结构既保持灵活性,又避免失控的噪声。
图2:KAG 逻辑形式求解器 — 规划、推理、检索三类算子协同工作
KAG 框架分为三大核心模块:
kg-builder(知识构建器) 是第一层,负责将非结构化文本转化为结构化知识。它基于 LLMFriSPG(对大模型友好的知识表示框架),支持两种知识构建模式:无约束抽取(灵活但有噪声)和 Schema-Constraint 约束抽取(专业但需要预先定义结构)。关键创新是知识与 Chunk 互索引——图谱节点与原始文本块双向映射,既能基于图谱检索原文,又能追溯推理依据。
kg-solver(知识求解器) 是第二层,核心是将自然语言问题翻译为逻辑形式(Logical Form),在图谱上执行混合推理。它包含三类算子:规划算子(Planning)负责任务拆解,推理算子(Reasoning)负责图谱上的逻辑推导,检索算子(Retrieval)负责精确匹配和向量检索。四种求解模式可以自由组合:图谱推理、逻辑计算、Chunk 检索、LLM 推理,最终输出带推理链的答案。
knext(开发者工具包) 是第三层,面向开发者提供 CLI 工具和 Python API,可以对标 langchain 在 RAG 领域的地位。通过 knext 命令行,开发者可以管理项目、构建知识库、执行推理问答。
图3:KAG 整体技术架构 — 从知识构建到混合推理的完整闭环
KAG 已在多个垂直领域验证了效果。在法律场景,KAG 能够处理「张三于2023年与李四签订合同,2024年李四违约,张三可以主张哪些权利」这类需要多跳推理的问题,而传统 RAG 往往在第二跳就迷失方向。在医疗场景,面对「某药物在肾功能不全患者中的剂量调整」这类专业问题,KAG 能结合药品知识图谱和患者档案进行精确判断。
其 benchmark 数据也印证了这一点:在多跳问答任务上,KAG 相比传统 RAG 方法有显著提升,且随着跳数增加优势愈发明显。这符合直觉——跳数越多,关系推理的价值就越大。
面向普通用户(推荐):使用 Docker 一行命令启动完整 Web 界面,浏览器访问 http://127.0.0.1:8887,输入用户名 openspg 和密码 openspg@kag 即可开始使用。支持上传 Word 文档、配置知识库、对话问答和图谱可视化。
面向开发者:克隆仓库后 pip install -e . 安装 Python 包,基于 knext API 编写自定义知识构建和问答流程。代码结构清晰,kag/builder/ 处理知识构建,kag/solver/ 处理推理求解,knext/ 提供 CLI 接口。
KAG 也并非完美。首先,Schema-Constraint 模式需要领域专家预先定义知识结构,初期投入成本不低。其次,对 LLM 的依赖仍然很强——知识抽取和推理质量直接受模型能力制约。此外,目前 KAG 的可视化分析能力还比较基础,复杂图谱的分析界面有待丰富。
KAG 的出现标志着 RAG 技术从「相似度匹配」时代迈向「逻辑推理」时代。在专业领域,知识图谱与 LLMs 的深度融合正在成为共识——光靠「找最相似的段落」已经无法满足医疗、法律、金融等专业场景的严谨性要求。
阿里 OpenSPG 团队长期深耕知识图谱领域,KAG 是其在 LLMs 时代的最新答卷。配合 arXiv 论文支撑和技术文档的完整度,这个项目的工程严谨性和学术价值都值得关注。