1. 为什么要提出KAG框架
检索增强生成(RAG)技术得到广泛运用,利用外部检索系统,显著提升大语言模型的时效性,并大幅减少模型幻觉。
为了进一步提升RAG在多跳任务、跨段落任务的性能,作者引入了知识图谱,包括GraphRAG、DALK、SUGRE、ToG 2.0 和 HippoRAG 等。
尽管 RAG 及其优化方案已经解决了因知识缺乏和更新导致的大部分幻觉问题,但生成的文本仍然缺乏连贯性和逻辑性,难以产生正确且有价值的答案,尤其是在法律、医学和科学等需要分析推理的专业领域:
• 首先,真实场景的业务流程一般需要基于知识片段之间特定关系的推理来收集与回答问题相关的信息。但RAG 通常依赖于文本或向量的相似性来检索参考信息,会可能导致搜索结果不完整和重复。
• 其次,真实场景往往涉及逻辑或数值推理,例如确定一组数据在时间序列中的增减情况,而语言模型使用的下一个标记预测机制在处理这类问题上仍然显得力不从心。
为了解决以上问题,本篇论文作者提出了知识增强生成(Knowledge Augmented Generation,KAG)。
2. KAG框架
KAG框架充分利用知识图谱和RAG技术的互补优势。不仅将图结构整合到知识库,还将知识图谱的语义类型、关系以及知识图谱问答(KGQA)整合到KAG中。
如上图所示,KAG 架构由三大核心组成:KAG-Builder、KAG-Solver 和 KAG-Model。
• KAG-Builder 负责构建离线索引,此模块提出了一个与大语言模型兼容的知识表示框架,并实现了知识结构与文本片段之间的互索引机制。
• KAG-Solver 引入了一个以逻辑形式为指导的混合推理引擎,整合了大型语言模型推理、知识推理和数学逻辑推理。利用语义推理进行知识对齐,以增强 KAG-Builder 和 KAG-Solver 在知识表示和检索方面的准确性。
• KAG-Model 则基于通用语言模型,针对每个模块所需的特定能力进行优化,从而全面提升模块性能。
2.1 知识表示框架 LMFriSPG
为了定义一个对大型语言模型更友好的知识语义表达方式,作者对 SPG 进行了三大方面的升级:深化文本上下文意识、动态属性和知识分层,并将其命名为 LLMFriSPG。
上图展示了 LLMFriSPG:一个专为大型语言模型(LLM)设计的友好型知识表示框架。
LLMFriSPG将实例与概念区分开来,通过概念实现与 LLMs 的对接。
SPG 的属性被划分为知识区和信息区,也就是静态区和动态区,分别与具有严格模式约束的决策专业知识以及具有开放信息表示的文档检索索引知识相兼容。
图中的红色虚线描绘了从信息提炼为知识的融合与挖掘过程。增强的文档块表示方法为 LLMs 提供了可追溯且易于解读的文本上下文。
其中 ℳ 代表 LLMFriSPG 定义的所有类型