像 GPT-4 和 Llama-3 这样的大型语言模型 (LLMs) 彻底改变了我们与信息交互的方式。它们能力惊人,但也存在有据可查的缺陷: 它们会产生幻觉 (凭空捏造) ,而且它们的知识是静态的——截止于它们的训练日期。
为了解决这个问题,AI 社区主要转向了 知识图谱 (Knowledge Graphs, KGs) 。 通过将 LLM 的回答建立在结构化的事实数据库 (如 Apple, Headquartered_In, Cupertino 这样的三元组) 之上,我们在理论上可以两全其美: 既拥有 LLM 的推理能力,又拥有数据库的事实准确性。这个领域被称为 知识图谱问答 (Knowledge Graph Question Answering, KGQA) 。
但在大多数 KGQA 研究中存在一个潜在的假设: 我们假设知识图谱是完美的。
在学术基准测试中,知识图谱通常被视为真理的完整存储库。如果你问一个问题,答案被假设为存在于图谱中的某处。但在现实世界中,知识图谱是混乱、稀疏且不完整的。当 LLM 在图谱中寻找答案,但所需的特定链接根本不存在时,会发生什么?
这引出了一篇新的研究论文,题为 *“Generate-on-Graph: Treat LLM as both Agent and KG for Incomplete Knowledge Graph Question Answering” (在图上生成: 将 LLM 同时视为智能体和知识图谱以解决不完整知识图谱问答) *。这项背后的研究人员提出了一种名为 Generate-on-Graph (GoG) 的新方法。它弥合了结构化数据与 LLM 直觉之间的鸿沟,使得系统即使在数据库缺失关键事实的情况下,也能回答复杂的问题。
“完整性”思维的问题
要理解这篇论文的重要性,我们首先需要看看当前的系统是如何失败的。
想象一下你问 AI: “苹果总部所在地区的时区是什么?”
在一个完美的世界里 (下图中的场景 B) ,系统会查看知识图谱。它追踪一条路径:
- Apple Inc \(\rightarrow\) Headquartered In \(\rightarrow\) Cupertino (库比蒂诺)
- Cupertino \(\rightarrow\) Time Zone \(\rightarrow\) Pacific Standard Time (太平洋标准时间)
答案完全通过遍历现有的链接找到。

然而,请看 图 1 中的场景 (c)。这代表了 不完整知识图谱问答 (IKGQA) 。 在这里,“Cupertino” 和 “Pacific Standard Time” 之间的链接在数据库中丢失了。
标准的 KGQA 系统会在 Cupertino 处走进死胡同并返回“我不知道”。相反,如果 LLM 单独行动 (场景 a) ,可能会完全幻觉出总部的实际位置。
研究人员认为,要解决这个问题,我们需要停止将 LLM 和 KG 视为两个独立的实体 (即一个纯粹查询另一个) 。相反,我们应该将 LLM 既视为 智能体 (Agent) (负责指导搜索) ,又视为 知识图谱 (Knowledge Graph) (负责提供缺失的事实) 。
LLM + KG 的格局
在深入探讨解决方案之前,先对我们目前结合这些技术的方式进行分类是很有帮助的。如 图 2 所示,通常存在两种现有的范式,以及新提出的方法。

- 语义解析 (Semantic Parsing, SP): LLM 充当翻译器。它将自然语言问题转换为逻辑查询 (如 SPARQL 或 SQL) 。该查询在数据库上执行。
- *缺陷: * 如果数据库缺少链接,查询将不返回任何内容。LLM 没有机会进行干预。
- 检索增强 (Retrieval Augmented, RA): 系统从 KG 中检索相关路径,并将它们作为上下文输入给 LLM。
- *缺陷: * 这些方法严重依赖于在图中找到一条“推理路径”。如果由于数据缺失导致路径断裂,检索步骤将无法提供必要的上下文,LLM 只能靠猜。
解决方案: Generate-on-Graph (GoG) (如面板 c 所示) 采用了一种不同的方法。它承认虽然 KG 是准确的,但它是稀疏的。LLM 虽然容易产生幻觉,但包含了丰富的通用知识。GoG 创建了一个反馈循环,当 LLM 遇到死胡同时,可以动态地为图谱 生成 新的节点和边。
Generate-on-Graph (GoG) 方法
GoG 方法的核心是一个名为 Thinking-Searching-Generating (思考-搜索-生成) 的框架。它将 LLM 转化为一个智能体,该智能体迭代地探索图谱,但拥有一个超能力: 如果它找不到事实,它会尝试“回忆”它。
让我们使用这个例子逐步拆解其架构: “苹果总部所在地区的时区是什么?”

1. 思考 (规划)
过程始于 LLM 充当规划者。它分析问题并将其分解。
- *想法 1: * “首先,我需要找出苹果总部在哪里。”
- *决策: * 智能体决定需要在知识图谱中搜索 “Apple Inc”。
2. 搜索 (智能体角色)
LLM 使用工具在实际的知识图谱上执行 SPARQL 查询。
- *动作: *
Search[Apple Inc] - *结果: * KG 返回一个邻居子图。它找到了一个三元组:
(Apple Inc, headquarter, Cupertino)。 - *过滤: * LLM 过滤掉无关的噪声 (比如 “Apple Inc, CEO, Tim Cook”) ,因为当前的想法是关于位置的。
3. 生成 (知识图谱角色)
这是论文的关键贡献。
- *想法 2: * “好的,总部在 Cupertino。现在我需要 Cupertino 的时区。”
- *动作: *
Search[Cupertino] - *观察: * KG 返回了像
(Cupertino, located_in, California)和(Cupertino, adjoin, Palo Alto)这样的链接。 关键是,关于时区的三元组缺失了。
在标准系统中,流程通常到此为止。但在 GoG 中,系统识别出了这个缺口。它触发了 生成 (Generate) 动作。
- *动作: *
Generate[Cupertino, timezone] - *过程: * LLM 查看检索到的上下文 (Cupertino 在 California,靠近 Palo Alto) 并利用其内部预训练权重生成新的事实三元组。
- *结果: * LLM 生成:
(Cupertino, timezone, Pacific Standard Time)。
4. 验证与完成
系统不会盲目信任生成的内容。它执行一个验证步骤 (使用 LLM) 来检查生成的三元组在给定上下文下是否合理。一旦通过验证,这个新三元组就被视为图谱的临时部分。
- *最终想法: * “时区是太平洋标准时间。”
- *动作: *
Finish[Pacific Standard Time]。
实验设置: 破坏图谱
为了证明这种方法有效,研究人员不能只使用标准数据集——他们必须先“破坏”它们。
他们选取了两个流行的基准测试: WebQuestionSP (WebQSP) 和 Complex WebQuestion (CWQ) , 并创建了“不完整”版本 (IKGQA 数据集) 。他们通过识别 关键三元组 (crucial triples)——回答问题所需的特定事实——并以不同的比例 (20%、40%、60% 和 80%) 随机删除它们来做到这一点。
这创造了一个残酷的测试环境。如果一种方法 100% 依赖于图谱 (如语义解析) ,随着不完整性的增加,其性能理论上应降至接近零。
结果
GoG 的性能与几个基线进行了比较,包括:
- 提示方法: 标准 IO,思维链 (Chain-of-Thought, CoT)。
- 语义解析: ChatKBQA。
- 检索增强: Think-on-Graph (ToG),StructGPT。
结果如 表 1 所示,突显了 GoG 方法的鲁棒性。

数据中的关键要点:
- 在不完整图谱上的主导地位: 看
IKG列。在 Complex WebQuestion (CWQ) 数据集上,GoG 获得了 44.3% 的分数,显着优于之前的最先进方法 ToG (37.9%)。在 WebQSP 上,差距更大 (66.6% 对比 63.4%)。 - 语义解析崩溃: 正如预测的那样,像 ChatKBQA 这样的方法在不完整图谱上表现崩溃 (在 CWQ 上从 76.5% 降至 39.3%) 。当查询返回
NULL时,它们根本无法通过。 - 甚至在完整图谱上也表现更好: 令人惊讶的是,GoG 在 完整 图谱 (CKG) 上通常也表现更好。这可能是因为它的“思考”步骤相比 ToG 等竞争对手使用的束搜索 (beam-search) 方法,允许更好的规划和子图探索。
缺失数据的影响
研究人员通过移除高达 80% 的关键信息,将模型推向了极限。
下图 (图 4) 可视化了 GoG 根据其在生成阶段检索到的“相关三元组”数量的表现。

这张图表揭示了一个有趣的动态: 上下文很重要。 当 GoG 在尝试生成缺失链接之前找到 一些 相关信息 (如邻近城市或州信息) 时,它的表现最好。如果它有 0 个上下文,性能较低。如果它有太多上下文 (20+ 三元组) ,性能也会下降,这可能是由于噪声/干扰造成的。
为什么 GoG 能赢: 处理复杂数据
GoG 的一个微妙优势是它处理 复合值类型 (Compound Value Types, CVTs) 的能力。
在像 Freebase 这样的知识图谱中,并非所有东西都是简单的 主体 -> 谓词 -> 客体 链接。有时你会有一个代表事件的中间节点。例如,“Brad Paisley 的教育”可能是一个节点,链接到“机构: Belmont”和“学位: 学士”。

标准的检索方法通常会在 CVT 节点处“卡住”,因为它不是最终答案。GoG 的迭代“思考”步骤使其能够识别这些节点,并决定进一步搜索一跳,有效地导航那些让其他智能体困惑的复杂图结构。
局限性与错误
没有系统是完美的。虽然 GoG 通过将大多数步骤建立在图谱之上来减轻幻觉,但在 生成 (Generate) 阶段又重新引入了这种风险。

如 图 6 所示, 幻觉 (绿色) 约占错误的 30-34%。当 LLM 自信地生成一个不正确的缺失三元组时,就会发生这种情况。例如,如果图谱中缺少教练管理的球队,LLM 可能会猜测与该教练相关的最著名的球队,即使问题问的是特定时间段。
然而,请注意蓝色部分 (“Decompose Error” 分解错误) 。GoG 相当擅长规划;逻辑错误比幻觉或简单的匹配错误要少。
结论: 混合 AI 的未来
论文 “Generate-on-Graph” 代表了神经符号 AI (Neuro-Symbolic AI) (神经网络与符号逻辑的结合) 向前迈出的成熟一步。
通过接受 知识图谱永远是不完整的 这一事实,研究人员改变了目标。我们不再需要完美的数据库来进行结构化推理。相反,我们可以将知识图谱用作可靠的地图,而将 LLM 用作智能侦察兵,它可以填补地图上的空白点。
对于学生和研究人员来说,关键要点是:
- 现实世界的鲁棒性: 评估指标应优先考虑不完整、混乱的数据,而不是经过净化的学术基准。
- 双重角色: LLM 不应仅仅是数据库的“接口”。它们应该是构建回答查询所需数据的积极参与者。
- 迭代推理: “思考-搜索-生成”循环是处理复杂、多跳问题的一种强大范式。
随着 LLM 的不断发展,像 GoG 这样的方法可能会成为与企业数据交互的标准,在这些场景中,完美的数据治理只是一个遥不可及的梦想。
](https://deep-paper.org/en/paper/2404.14741/images/cover.png)