论文基本信息
- 题目: KAG: Boosting LLMs in Professional Domains via Knowledge Augmented Generation (KAG: 通过知识增强生成在专业领域中赋能大型语言模型)
- 作者: Lei Liang, Mengshu Sun, Zhengke Gui, 等 (来自蚂蚁集团知识图谱团队和浙江大学)
- 发表地点与年份: 预印本 arXiv:2409.13731v3 [cs.CL],2024年9月26日提交
- 关键词术语与定义 :
- Knowledge Augmented Generation (KAG): 知识增强生成,本文提出的一个专业领域知识服务框架,旨在深度融合知识图谱 (KG) 和传统 RAG 的优势。
- Retrieval-Augmented Generation (RAG): 检索增强生成,一种通过从外部检索信息来增强 LLM 的技术。
- Logical Form: 逻辑形式,一种将自然语言问题转化为结构化、可执行的符号表示,用于指导检索和推理。
- Hybrid Reasoning: 混合推理,一种结合了语言推理、知识图谱推理和数值计算等多种推理方式的引擎。
摘要(详细复述)
- 背景: 尽管 RAG 技术能有效构建领域应用,但其仍存在局限:一是向量相似性与知识推理的实际相关性之间存在差距;二是对知识逻辑(如数值、时序关系、专家规则)不敏感,这阻碍了其在专业知识服务中的有效性。
- 方案概述 : 本文提出了一个名为 KAG (Knowledge Augmented Generation) 的专业领域知识服务框架。KAG 旨在通过充分利用知识图谱 (KG) 和向量检索的优势,来解决上述挑战。它通过五个关键方面来双向增强 LLMs 和 KGs 的性能和推理能力:
- LLM 友好的知识表示。
- KG 与原始文本块之间的相互索引。
- 逻辑形式引导的混合推理引擎。
- 基于语义推理的知识对齐。
- 针对 KAG 的模型能力增强。
- 主要结果/提升 :
- 在多跳问答任务中,KAG 显著超越了 SOTA 方法,在 HotpotQA 和 2WikiMultiHopQA 数据集上的 F1 分数分别实现了 19.6% 和 33.5% 的相对提升。
- KAG 已成功应用于蚂蚁集团的两个专业问答场景(电子政务和电子健康),在专业性方面比传统 RAG 方法有显著改进。
- 结论与意义: KAG 框架将被集成到开源知识图谱引擎 OpenSPG 中,使开发者能够更轻松地构建严谨的知识决策或便捷的信息检索服务,从而推动 KAG 的本地化开发和应用。
研究背景与动机
-
学术/应用场景与痛点 :
传统的 RAG 技术通过外部知识检索,有效缓解了 LLM 的"幻觉"问题。然而,在需要深度分析和推理的专业领域(如法律、医疗、金融),RAG 暴露了三大核心痛点:
- 推理能力不足 : 真实世界的业务流程往往需要基于实体间的特定关系进行推理性检索,而 RAG 通常依赖"文本或向量的相似性",可能导致检索结果不完整或重复,无法支持多步推理。
- 逻辑不敏感 : 现实世界的任务常涉及逻辑或数值推理(如比较大小、时间序列分析),而 LLM 的"下一个词元预测机制"在处理这些确定性问题时表现仍然较弱。
- 语义模糊: 传统 RAG 返回的文本块缺乏明确的语义,LLM 难以从中进行精确的规划和函数调用。
-
主流路线与局限 :
知识图谱 (KG) 技术恰好可以弥补这些不足。KG 使用明确的语义(SPO 三元组)组织信息,支持精确的结构化查询(如 SPARQL),并且查询结果具有明确的语义,可以作为变量用于后续的确定性计算。
| 技术路线 | 优点 | 不足之处 |
|---|---|---|
| 向量检索 RAG | 实现简单,能处理非结构化文本,覆盖面广。 | 推理能力弱,对逻辑和数值不敏感,检索结果可能不精确。 |
| 知识图谱 (KG) | 推理能力强,语义明确,支持精确查询和逻辑运算。 | 构建成本高,知识覆盖面可能不全,对自然语言的灵活表达处理能力有限。 |
| GraphRAG (现有融合方法) | 尝试将图结构引入 RAG,增强了多跳和跨段落能力。 | 仍主要停留在"图结构的知识库"层面,未充分利用 KG 的显式语义 和逻辑形式来引导整个检索和生成过程。 |
KAG 的核心动机是超越简单的图结构集成 ,将 KG 的语义类型、关系以及 KGQA 中常用的逻辑形式 (Logical Forms) 深度融入到检索和生成过程中,从而构建一个真正能够满足专业领域需求的知识增强框架。
问题定义(形式化)
该研究的核心任务是设计一个能够处理专业领域复杂问答的知识增强生成系统。
- 输入 :
- 一个自然语言问题 Q N L Q_{NL} QNL。
- 一个包含非结构化文档和结构化知识的领域知识库。
- 输出 :
- 一个准确、有逻辑、专业性强的回答 A A A。
- 核心挑战 : 如何设计一个框架,能够:
- 将 Q N L Q_{NL} QNL 分解为一系列可执行的、包含混合操作(检索、KG推理、数值计算等)的步骤。
- 在每一步中,精确地从知识库中获取所需信息(无论是文本块还是 KG 子图)。
- 对获取的信息进行整合和推理,最终生成答案。
创新点
- LLM 友好的知识表示框架 (LLMFriSPG) : 提出了一种新颖的知识表示方法,该方法遵循 DIKW (数据、信息、知识、智慧) 金字塔的层次结构。它不仅兼容无模式的信息抽取和有模式约束的专家知识构建,还支持知识图谱结构与原始文本块之间的相互索引 (mutual-indexing),为后续的混合检索奠定了基础。
- 逻辑形式引导的混合推理引擎 : KAG 的核心是一个由逻辑形式 (Logical Form) 驱动的混合求解和推理引擎。它将自然语言问题转化为结合了语言和符号的、可执行的问题解决流程。该引擎集成了四种不同的问题解决过程:文本检索、KG 推理、语言推理和数值计算,能够处理高度复杂的专业问题。
- 基于语义推理的知识对齐 : 框架在离线索引和在线检索阶段都引入了语义推理。通过定义和利用同义、上下位等语义关系,系统能够对自动抽取的零散知识进行对齐和连接,极大地提高了知识的标准化程度和连通性。
- KAG 定制化模型增强 : 论文没有将 LLM 视为一个固定的黑盒,而是提出通过特定的微调来增强通用 LLM 在 KAG 框架中所需的三种核心能力:自然语言理解 (NLU)、自然语言推理 (NLI) 和自然语言生成 (NLG),从而提升各功能模块的性能。
方法与核心思路
整体框架
KAG 框架由三个主要部分组成:KAG-Builder (离线索引构建)、KAG-Solver (在线查询处理) 和 KAG-Model (模型能力增强)。
其核心工作流程(依据论文 Figure 1)如下:
Foundation: KAG-Model Online: KAG-Solver Offline: KAG-Builder KG反馈 NLU NLI NLG LLM 规划 用户问题 逻辑形式 检索 & 推理 对齐 答案生成 索引管道 文档 领域知识库
步骤分解与模块详解
1. LLM 友好的知识表示 (LLMFriSPG)
这是 KAG 的基础。LLMFriSPG 将知识库分为三个层次(如图3):
- 原始文本块层 (RC): 包含经过语义分块的原始文档片段。
- 图信息层 (KGfr): 通过 OpenIE 等技术从 RC 中自动抽取的实体、关系等图结构信息,模式较为宽松 (Schema-Free or Semi-Schema)。
- 知识层 (KGcs): 遵循严格领域模式约束的、经过专家校验或规则定义的知识 (Schema-Constraint)。
一个关键的设计是相互索引 :KGfr 中的每个实体都通过 supporting_chunks 属性链接回 RC 中包含它的文本块,从而实现了从结构化知识到非结构化原文的可追溯性。
2. 知识对齐 (Knowledge Alignment)
为解决自动抽取带来的知识碎片化和不一致问题,KAG 引入了知识对齐机制。
- 核心思想: 利用 LLM 进行语义推理,来预测和补全索引项之间的语义关系。
- 六种常用语义关系 (Table 2) :
synonym,isA,isPartOf,contains,belongTo,causes。 - 应用 :
- 离线索引增强 :
- 实例消歧与融合: 识别并合并同义实体。
- 实例-概念链接 : 将实体链接到其对应的概念(如
<Chamber, belongTo, Legislative Body>)。 - 概念层次补全 : 补全概念间的
isA关系(如<Legislative Body, isA, Government Agency>)。
- 在线检索增强 : 当精确匹配失败时,利用这些语义关系进行查询扩展。例如,查询"白内障病人"时,可以通过
<cataract patient, isA, visually impaired>找到为"视障人士"准备的设施信息。
- 离线索引增强 :
3. 逻辑形式引导的混合推理引擎 (Logical Form Solver)
这是 KAG 最核心的创新,它将复杂的问答过程分解为多轮、多步骤的迭代求解。
- 流程 (Algorithm 1) :
- 规划 (LFPlanner) : LLM 将当前的用户问题
query_cur分解成一个或多个子问题,并为每个子问题生成一个逻辑形式 (Logical Form) 的表示。例如,问题"C罗2011年效力的、成立最晚的球队是哪个?"会被分解为三个步骤的逻辑形式(见 Table 14)。 - 推理 (Reasoner) : 对每个逻辑形式进行求解。推理器是一个混合引擎 :
- GraphRetrieval: 如果逻辑形式是纯粹的图查询,直接在 KG 上执行精确的结构化检索。
- HybridRetrieval: 如果需要结合文本信息,则同时利用图结构和向量检索来查找相关文档块。
- Math/Deduce: 执行数值计算或逻辑推导。
- 反思与迭代 (Judge & SupplyQuery) : 系统将一轮中所有子问题的答案存入一个全局记忆
memory中。然后判断整个问题是否已解决。如果未解决,LLM 会基于memory中的信息生成一个新的、更具针对性的补充问题query_cur,进入下一轮迭代。 - 生成 (Generator) : 当问题被判断为已解决时,LLM 基于
memory中的所有信息生成最终的自然语言答案。
- 规划 (LFPlanner) : LLM 将当前的用户问题
4. KAG 模型增强
KAG 不仅是一个框架,还包括一套针对性地提升 LLM 能力的方法。
- NLU 增强: 通过大规模指令重构和"标签分组 (label bucketing)"等策略,提升模型在实体识别、关系抽取等任务上的性能。
- NLI 增强 : 收集包含 8000 个概念的高质量概念知识库,并构建训练数据来增强模型在
isA,isPartOf等六种核心语义关系上的推理能力。 - NLG 增强 : 提出了两种微调方法(K-LoRA 和 AKGF)来使模型的生成风格和逻辑更符合领域要求。特别是 AKGF (Alignment with KG Feedback),它将 KG 作为"自动评估器",为 LLM 的生成内容提供正确性反馈(奖励信号),从而进行对齐。
实验设置
- 数据集 :
- 多跳问答: HotpotQA, 2WikiMultiHopQA, MuSiQue (各 1,000 个验证集问题)。
- 专业领域应用: 蚂蚁集团内部的电子政务 (11,000 份文档) 和电子健康场景。
- 对比基线: NativeRAG, HippoRAG, IRCoT。
- 评价指标 :
- 端到端问答: Exact Match (EM), F1 Score。
- 检索: Recall@2, Recall@5。
- 实现细节 :
- 骨干模型: DeepSeek-V2 API。
- KAG 中的多轮反思机制最多迭代 3 次。
实验结果与分析
主结果表
表8: 端到端问答性能对比
| 框架 | 模型 | HotpotQA (F1) | 2Wiki (F1) | MuSiQue (F1) |
|---|---|---|---|---|
| IRCoT+HippoRAG | ChatGPT-3.5 | 59.2 | 62.7 | 33.3 |
| IRCoT+HippoRAG | DeepSeek-V2 | 63.7 | 57.1 | 36.5 |
| KAG w/ LFSH_ref3 | DeepSeek-V2 | 76.2 | 76.2 | 48.7 |
表9: 检索性能对比 (HotpotQA)
| 检索器 | Recall@2 | Recall@5 |
|---|---|---|
| IRCoT + HippoRAG | 67.0 | 83.0 |
| KAG | 72.8 | 88.8 |
结果分析
-
端到端性能 : 如表8所示,KAG 在所有三个多跳问答数据集上都取得了压倒性的优势 。与同样使用 DeepSeek-V2 模型的 SOTA 方法 IRCoT+HippoRAG 相比,KAG 在 HotpotQA 上的 F1 分数从 63.7 提升到 76.2 (相对提升 19.6% ),在 2Wiki 上的 F1 分数从 57.1 提升到 76.2 (相对提升 33.5%),在 MuSiQue 上也有显著提升。这证明了 KAG 框架的卓越性能。
-
检索性能: 表9显示,KAG 的多步检索器在召回率上同样优于 SOTA 方法,这得益于其逻辑形式引导和知识对齐策略。
-
消融研究 (Table 10):
- 知识对齐的重要性 : 引入知识对齐 (K_Alignment) 后,相比仅有相互索引 (M_Indexing),F1 分数在各数据集上均有显著提升。这证明了通过语义推理增强图的连通性和标准化程度是有效的。
- 混合检索的优势 : 启用混合检索 (LFSH) 的逻辑形式求解器相比仅用图检索 (LFS) 或纯文本块检索 (CR),性能最高。这说明了同时利用 KG 的结构化推理和文本的丰富上下文是成功的关键。
-
工业应用 : 在电子政务场景中,相比 NaiveRAG,KAG 的精确率从 66.5% 提升到 91.6% ,召回率从 52.6% 提升到 71.8%。在电子健康场景中,各类任务的准确率也达到了 77% 到 94% 的高水平。
复现性清单
- 代码/数据 :
- 项目代码已在 GitHub 开源:
https://github.com/OpenSPG/KAG。
- 项目代码已在 GitHub 开源:
- 模型 : KAG 框架将会在开源 KG 引擎 OpenSPG 上提供原生支持。
- 评测脚本/提示: 论文附录详细展示了 KAG Solver 的一个完整执行案例 (Table 13),以及各种逻辑形式的推理案例 (Table 14),透明度高。
结论与未来工作
-
结论 :
本文提出了 KAG,一个为专业领域设计的、深度融合 KG 与 RAG 的知识增强生成框架。通过引入 LLM 友好的知识表示 、相互索引 、知识对齐 、逻辑形式引导的混合推理 和模型能力增强这五大创新,KAG 显著提升了 LLM 在复杂、需要推理的专业问答任务上的性能,其效果在公开基准和工业应用中都得到了验证。
-
未来工作:
- 降低 KG 构建成本和推理的透明度: 探索多源知识抽取、基于 OneGraph 的知识对齐、领域知识注入等技术。
- 增强模型的规划与分解能力: 这是一个重要的待研究方向。未来可以将 KAG 作为奖励模型,为 LLM 的规划能力提供反馈,从而提升其在复杂问题分解上的准确性、稳定性和可解性。
- 与 OpenKG 社区合作: 持续解决 LLM 与 KG 协作中的关键技术问题。