攻克知识图谱复杂推理!KG-Agent自主智能体框架全攻略,一篇吃透!

摘要

本文旨在提升大语言模型(Large Language Models, LLMs)在知识图谱(Knowledge Graphs, KGs)上的推理能力,以实现对复杂问题的解答。受现有 “设计大语言模型与知识图谱交互策略” 相关方法的启发,我们提出一种基于大语言模型的自主智能体框架 ——KG-Agent。该框架能让小规模大语言模型主动做出决策,直至完成在知识图谱上的推理过程。

在 KG-Agent 中,我们整合了大语言模型、多功能工具箱、基于知识图谱的执行器及知识记忆模块,并设计了一套自主迭代机制:通过自主选择工具,再更新记忆模块,从而实现对知识图谱的推理。为确保有效性,我们采用编程语言将知识图谱上的多跳推理过程形式化,并构建了一个基于代码的指令数据集,用于对基础大语言模型进行微调。大量实验表明,仅使用 1 万个样本对 LLaMA-7B 模型进行微调,就在域内和域外数据集上均超越了使用更大规模大语言模型或更多数据的现有最优方法。本文的代码与数据将公开发布。

1 引言

尽管大语言模型在各类自然语言处理(NLP)任务中表现卓越(Brown 等人,2020;Zhao 等人,2023),但仅依靠其参数化知识,在解决复杂任务(如多跳推理、知识密集型推理)时能力仍有限(Hu 等人,2023b;Lan 等人,2023)。知识图谱(KG)以图结构形式存储海量知识三元组,已被广泛用于为大语言模型补充外部知识(Pan 等人,2023)。由于知识图谱数据体量庞大且格式结构化,大语言模型难以有效利用其中的信息。现有研究主要采用两种方法为大语言模型融合知识图谱数据:检索增强方法(Ye 等人,2022)与协同增强方法(Jiang 等人,2023b)。前者会检索与任务相关的三元组并将其序列化,作为提示词的一部分输入大语言模型;后者则设计知识图谱与大语言模型之间的信息交互机制,通过迭代方式寻找问题的解决方案。其中,协同增强方法能同时利用知识图谱的结构化检索能力(如 SPARQL 查询)与大语言模型的语言理解能力,取得了与现有最优方法相当甚至更优的性能(Gu 等人,2023)。然而,现有协同增强方法仍存在两大局限性:
第一,大语言模型与知识图谱的信息交互机制通常是预定义的(例如遵循人工设计的多轮交互流程),无法灵活适配各类复杂任务(Luo 等人,2023;Jiang 等人,2023b)。例如,面对推理过程中突发的需求(如难度变化、新增约束条件)时,这类机制往往失效。
第二,这些方法(Wang 等人,2023a)大多依赖性能更强的闭源大语言模型接口(如 ChatGPT、GPT-4)来理解或学习解决复杂任务。但由此提炼出的推理流程或步骤,往往受限于特定任务场景或模型能力,未必适用于指导小规模大语言模型。为解决上述问题,本文提出 KG-Agent—— 一种基于大语言模型的自主智能体框架,用于完成知识图谱上的复杂推理任务。研究动机主要有两点:(1)设计无需人工干预、能在推理过程中主动决策的自主推理方法;(2)让小规模模型(如 70 亿参数大语言模型)无需依赖闭源大语言模型接口,即可有效完成复杂推理。为实现这一目标,本文做出三项主要技术贡献:

  1. 通过构建多功能工具箱,扩展大语言模型处理结构化数据的能力,使其能对知识图谱数据及中间结果执行离散或高级操作(如筛选、计数、检索);
  2. 利用现有知识图谱推理数据集构建基于代码的指令数据,用于微调大语言模型:先根据知识图谱上的推理链生成程序,再据此构建指令数据集;
  3. 提出一套基于 “工具选择 - 记忆更新” 的自主迭代机制,整合微调后的大语言模型、多功能工具箱、基于知识图谱的执行器及知识记忆模块,实现对知识图谱的自主推理。

为验证有效性,我们在域内和域外任务(包括基于知识图谱的问答任务 KGQA 与开放域问答任务 ODQA)上对 KG-Agent 进行了评估。结果显示,仅使用 1 万个样本对小规模模型 LLaMA-7B 进行微调,就在域内数据集上超越了具有竞争力的大语言模型基线(例如,在 CWQ 和 GrailQA 数据集上,仅使用原始训练集约 36% 和 23% 的数据量,F1 分数就分别相对提升了 7.5% 和 2.7%);在域外数据集上,KG-Agent 的零样本性能也优于全数据监督微调模型(例如,在 WQ-Freebase 和 TQ-Wiki 数据集上,准确率分别相对提升了 9.7% 和 8.5%)。

2 相关工作

基于大语言模型的知识图谱推理

得益于强大的零样本和少样本能力,近年来已有研究利用大语言模型实现知识图谱上的推理。现有工作大致可分为两类:检索增强方法(Shu 等人,2022)与协同增强方法(Gu 等人,2023)。

检索增强方法会从知识图谱中检索三元组并将其序列化,再输入大语言模型以辅助生成最终结果(如答案或 SPARQL 查询)(Ye 等人,2022)。这种方式会丢失原始知识图谱中的结构化信息,且可能检索到冗余知识,从而限制大语言模型的理解。为缓解这些问题,协同增强方法设计了大语言模型与知识图谱之间的信息交互机制,允许大语言模型通过多次查询知识图谱来解答问题(Jiang 等人,2023b)。具体而言,这类方法要么先生成完整推理计划,再在知识图谱上落地执行(Li 等人,2023),要么基于知识图谱逐步制定推理计划(Luo 等人,2023)。尽管性能更优,但现有方法中的信息交互机制通常是预定义的,无法灵活适配各类复杂任务。相比之下,本文提出的 KG-Agent 能在知识图谱推理过程中自主决策,无需人工干预。

基于大语言模型的智能体

近年来,大语言模型展现出惊人的长程规划与推理能力(Shinn 等人,2023;Zhong 等人,2023),基于大语言模型的智能体已逐渐成为自主解决复杂交互任务的研究热点(Wang 等人,2023b)。

大量智能体聚焦于通用任务解决:例如,ReAct(Yao 等人,2023)提出一种提示方法,将大语言模型(如 ChatGPT)转化为语言智能体,使其能与外部环境交互、接收反馈,并生成下一步推理动作;AutoGPT¹ 进一步为大语言模型(如 GPT-4)赋予长短期记忆管理能力及搜索引擎等外部工具调用能力,以自主响应用户需求。此外,还有部分智能体针对特定领域设计:如 WebGPT(Nakano 等人,2021)适用于网页浏览场景,MM-REACT(Yang 等人,2023)适用于多模态场景,ProgPrompt(Singh 等人,2023)适用于现实生活场景。

然而,现有涉及语言智能体的研究大多依赖性能更强的闭源大语言模型接口(如 ChatGPT、GPT-4)来理解或学习解决复杂任务。本文提出的 KG-Agent 是首个仅依赖相对小规模(70 亿参数)大语言模型,就能支持知识图谱复杂推理的自主智能体框架。

¹https://github.com/Significant-Gravitas/AutoGPT

3 预备知识

本节首先对知识图谱(KG)进行形式化定义,再对基于知识图谱的复杂知识推理任务进行形式化描述。

知识图谱通常由大量事实三元组构成,可表示为

,其中E和R
分别表示实体集与关系集。三元组⟨e, r, e′⟩描述了 “头实体e与尾实体e’之间存在关系r” 这一事实知识。每个实体e都有唯一的实体 ID(或字符串值),并属于某一实体类型t(如 “国家(Country)”“人物(Person)”)。此外,我们引入 “邻域关系” 来表示实体集{e}的入度关系与出度关系,定义为

问题形式化

本文假设存在一个知识图谱G,且该图谱包含给定自然语言问题的答案实体。研究目标是构建一个基于大语言模型的智能体,能基于给定知识图谱自主推断出问题的答案。已有研究表明,领域专用接口有助于大语言模型处理结构化数据(Jiang 等人,2023b),因此本文进一步假设存在一个工具箱T
,以方便获取知识图谱中的信息。形式化地,给定自然语言问题q、工具箱T与知识图谱G,本文旨在构建一个高性能智能体,通过利用工具箱T中的工具与知识图谱G中的知识,推导出问题q的最终答案集合Aq = {e})。

4 方法设计

本节将详细介绍用于自主解决知识图谱复杂推理任务的 KG-Agent 框架。KG-Agent 的核心是一个经过良好指令微调的大语言模型,该模型能在知识图谱推理过程中自主决策。我们首先通过设计工具箱扩展大语言模型处理知识图谱数据及中间结果的能力(4.1 节);其次,利用现有知识图谱问答(KGQA)数据集构建知识图谱推理程序,并将其转化为格式化的指令微调数据,以增强模型的逐步推理能力(4.2 节);最后,基于知识记忆模块设计高效的智能体框架,支持对知识图谱的自主推理(4.3 节)。下文将逐一阐述 KG-Agent 的技术细节。

4.1 知识图谱工具箱

由于大语言模型难以准确处理结构化数据(Jiang 等人,2023b),我们构建了一个辅助工具箱,以降低大语言模型利用知识图谱信息的难度。根据现有研究(Gu 等人,2021;Cao 等人,2022),在知识图谱(如 Freebase、Wikidata)上进行推理通常需要三类基础操作:从知识图谱中提取信息、根据问题语义筛选无关信息、对提取的信息进行运算。因此,我们为大语言模型设计了三类适用于知识图谱推理的工具:提取工具、语义工具与逻辑工具。

  • 提取工具

    :用于辅助获取知识图谱中的信息。结合知识图谱的基本数据类型,我们设计了 5 种工具,分别支持获取关系(get_relation)、头实体 / 尾实体(get_head_entity/get_tail_entity),以及根据特定类型或约束条件获取实体(get_entity_by_type/get_entity_by_constraint),操作对象可为某一实体集或其他输入信息(如关系、类型)。

  • 逻辑工具

    :用于支持对提取的知识图谱信息进行基础运算,包括实体计数(count)、实体集交集(intersect)与并集(union)、条件验证(judge),以及以当前实体集作为最终答案结束推理过程(end)。

  • 语义工具

    :利用预训练模型实现特定功能,包括关系检索(retrieve_relation)与实体消歧(disambiguate_entity)。这类工具扩展了知识图谱的基础操作,可支持更高级的知识图谱推理功能。

工具箱中所有工具的详细定义与使用方法请参见附录 B 的表 8。需注意,由于每种工具的格式与使用方式均已统一,该工具箱可根据实际需求灵活扩展。

4.2 KG-Agent 的指令微调

为实现自主推理过程,我们构建了一个高质量指令数据集,用于对小规模大语言模型(即 LLaMA2-7B)进行微调。具体步骤为:首先利用现有知识图谱问答(KGQA)数据集生成知识图谱推理程序,再将其分解为多个步骤,最后将每个步骤构建为 “输入 - 输出” 形式的指令数据。

4.2.1 知识图谱推理程序生成

不同于从闭源大语言模型(如 GPT-4)中提炼推理流程,我们提出利用现有知识图谱问答数据集构建知识图谱推理程序。这类数据集包含带标注的 SQL 查询语句,执行这些查询可直接从知识图谱中提取问题的答案实体。其中,SQL 查询通常包含关系链、条件或约束,这些信息对推理程序的构建十分有益。具体流程如下:首先,将 SQL 查询在知识图谱上落地,得到一个查询图;然后,从查询图中提取推理链与约束条件;最后,将推理链分解为多个代码片段,构成推理程序。

推理链提取

由于完整知识图谱规模庞大且包含无关数据,第一步需获取与问题相关的小规模知识图谱子图(即查询图)。参考现有研究(Yin 等人,2020),我们通过规则匹配从知识图谱中得到查询图。如后文图 1(b)所示,查询图呈树形结构,可直接映射为逻辑形式(Yin 等人,2020),能清晰反映执行 SQL 查询以获取答案的流程。接下来,从问题中提及的实体(如 “克里斯蒂亚诺・罗纳尔多(Cristiano Ronaldo)”)出发,采用广度优先搜索(BFS)遍历查询图中的所有节点。该过程最终会生成一条连接起始实体与答案实体的推理链(如 “teams→roster_team”),同时自然融入相关约束条件(如 “roster_from = 2011”)或数值运算(如 “founded must be last”,即 “成立时间最晚”)。

图 1:本文提出的 KG-Agent 框架概述

上半部分展示了该智能体的工作流程,下半部分为指令微调数据构建示例及 “输入 - 输出对” 的提示词模板。为简洁起见,我们对关系的表层形式进行了简化。

术语补充说明

  • KG-Agent

    :框架专有名称,全称为 “Knowledge Graph-Agent”,此处保留原词以体现标识性,中文可理解为 “知识图谱智能体”;

  • instruction fine-tuning data synthesis

    :指令微调数据构建,指将知识图谱推理流程转化为 “输入(问题 + 工具说明 + 历史步骤)- 输出(下一个工具调用)” 形式数据的过程,是训练模型自主推理的核心数据来源;

  • relation surface form

    :关系表层形式,指知识图谱中关系的自然语言表述(如 “效力于”“成立时间”),区别于底层的符号化表示(如实体 ID、关系 ID),简化后更便于模型理解与人类阅读。

推理程序生成

提取推理链后,我们下一步将其转换为多个相互关联的三元组,每个三元组通常对应一个中间推理步骤。最终,我们将这些三元组重新表述为若干代码格式的函数调用 —— 这些函数调用代表工具调用操作,执行后可基于知识图谱(KG)获取对应的三元组。给定一个三元组⟨e, r, e′⟩,我们设计了一种基于规则的方法来生成函数调用,以体现从实体 e 到实体 e′的信息流向。具体而言,我们首先调用 get_relation (e) 函数,获取知识图谱中与实体 e 相关联的当前候选关系集合 {r};随后选择一个关系 r,并将其传入其他所需函数(如 get_tail_entity(获取尾实体)或 get_entity_by_constraint(按约束条件获取实体)),最终得到新的实体。我们按照推理链的顺序生成所有函数调用,组合成最终的知识图谱推理程序,用于构建指令数据集。图 1(b)展示了一个示例,直观说明从带标注的 SQL 查询到所需知识图谱推理程序的转换过程。

4.2.2 知识图谱推理指令构建

得到知识图谱上的推理程序后,我们进一步利用它构建用于监督微调(Supervised Fine-Tuning, SFT)的指令数据。如 4.2.1 节所述,我们的指令数据高度依赖推理程序,且与知识图谱问答(KGQA)的中间推理步骤保持一致。

输入 - 输出对构建

合成的知识图谱推理程序由一系列函数调用组成。对于每个函数调用,我们都会构建一个 “输入 - 输出对” 作为指令。具体来说:

  • 输入

    包含四部分内容:问题、工具箱定义、当前知识图谱信息(即当前实体集的下一个候选关系)、当前步骤之前的历史推理程序;

  • 输出

    为当前步骤的函数调用。

在执行当前推理步骤的函数调用后,输入中的 “历史推理程序” 和 “当前知识图谱信息” 会相应更新,输出则更新为下一步骤的函数调用。通过迭代上述过程,对于知识图谱问答(KGQA)数据集中的每个样本,我们可从其对应的推理程序中得到多个输入 - 输出对,这些 pairs 完整呈现了在知识图谱上的推理轨迹。为帮助大语言模型(LLMs)更好地理解,我们采用统一的提示词格式(如图 1(c)所示)对每个输入 - 输出对进行格式化,最终得到指令微调数据。

智能体指令微调

基于上述格式化的指令微调数据,我们对一个小规模大语言模型(即 LLaMA-7B)进行监督微调 —— 该模型的规模远小于以往研究中使用的骨干模型(Jiang 等人,2023b)。形式上,对于每个样本,我们将完整推理轨迹的所有输入 - 输出对表示为 {⟨x₁, y₁⟩, …, ⟨xₜ, yₜ⟩, …, ⟨xₙ, yₙ⟩},其中⟨xₜ, yₜ⟩代表第 t 步的输入和真实响应,n 代表总步骤数。为简化表述,下文将每个输入和输出分别记为 x 和 y。在指令微调过程中,我们将输入 x 和输出 y 输入到仅解码器(decoder-only)结构的大语言模型中,并最小化真实响应 y 上的交叉熵损失,公式如下:

其中,m 表示输出 y 中的令牌(token)数量,yₖ和 yₖ₋₁分别代表输出中的第 k 个令牌和第 k 个之前的令牌。

4.3 知识图谱自主推理

指令微调后,我们进一步设计了一个高效的智能体框架,使 KG-Agent 能够在知识图谱上自主执行多步推理以寻找答案。KG-Agent 的整体结构如图 1(a)所示,主要包含四个组件:

  1. 核心组件:经过指令微调的大语言模型(4.2 节),又称 “基于大语言模型的规划器(LLM-based planner)”;
  2. 多功能工具箱(4.1 节);
  3. 基于知识图谱的执行器(KG-based executor):用于执行工具调用操作;
  4. 知识记忆模块(knowledge memory):记录推理全程的上下文和当前有用信息。

下文将详细介绍 KG-Agent 如何在知识图谱上实现自主推理。

知识记忆模块初始化

知识记忆模块存储当前有用的信息,为基于大语言模型的规划器提供决策支持,主要包含四部分内容:自然语言问题、工具箱定义、当前知识图谱信息、历史推理程序。其中:

  • 前两部分由给定问题和工具箱定义初始化,在推理过程中保持不变;
  • 后两部分初始化为空列表,在大语言模型生成函数调用、执行器调用对应工具后,每一步都会持续更新。

工具选择规划器

基于当前知识记忆模块中的信息,基于大语言模型的规划器会在每一步选择一个工具与知识图谱交互。具体来说,我们先将当前知识记忆模块中的所有内容按对应提示词模板格式化,组成输入(与 4.2.2 节 “智能体指令微调” 中使用的输入格式一致);随后,大语言模型从输入中选择一个工具及其参数,生成一个函数调用。

通常,规划器需要调用预定义工具箱中的工具以满足四类任务需求:

  • 将问题中提及的实体与知识图谱关联(如调用 “get_candidate_entity”(获取候选实体)、“disambiguate_entity”(实体消歧));
  • 访问知识图谱信息(如调用 “get_relation”(获取关系)、“get_head_entity”(获取头实体));
  • 处理中间结果(如调用 “count”(计数)、“intersect”(求交集));
  • 返回最终答案并结束推理过程(如调用 “end”(结束推理))。

记忆更新执行器

规划器生成函数调用后,基于知识图谱的执行器会使用程序编译器执行该调用。执行器可缓存或操作中间变量,并从知识图谱中提取新的实体或关系。执行完成后,知识记忆模块会相应更新:

  1. 将当前函数调用添加到 “历史推理程序” 中;
  2. 若调用的工具用于从知识图谱中获取新信息(如 “get_relation”),则将新信息添加到 “当前知识图谱信息” 中,以更新知识记忆模块。

KG-Agent 自主迭代推理

KG-Agent 框架通过自主迭代上述 “工具选择 - 记忆更新” 过程,实现逐步推理 —— 知识记忆模块用于保存已从知识图谱中获取的信息。在此过程中,智能体的多轮决策过程类似于 “沿知识图谱的关系游走”;一旦找到答案实体,智能体将自动停止迭代过程。需注意,整个推理过程与任务类型(如问答)和特定知识图谱无关,因此该框架具有通用性,可应用于需在任意知识图谱上进行推理的各类复杂任务。

4.4 与现有研究的对比

根据工作流程,现有知识图谱推理方法可分为两类:

  1. 第一类方法(如 KB-BINDER(Li 等人,2023)、Pangu(Gu 等人,2023)、StructGPT(Jiang 等人,2023b)、RoG(Luo 等人,2023)):设计大语言模型与知识图谱之间的预定义交互方式,无法灵活适配各类复杂任务;
  2. 第二类方法(如 ChatDB(Hu 等人,2023a)):通过思维链(chain-of-thought)和记忆增强实现自主推理,但依赖性能强大的闭源大语言模型接口(如 ChatGPT),且无法使用工具执行特定操作(如计数(count))。

本文提出的 KG-Agent 是首个支持 “大语言模型 - 知识图谱复杂交互” 的自主智能体框架,且融合了工具与记忆增强功能。此外,与 KB-BINDER、StructGPT、ChatDB 等方法使用的骨干模型相比,我们仅通过对一个更小的 70 亿参数开源大语言模型(LLaMA-7B)进行指令微调,就实现了这一自主智能体。同时,智能体的指令微调数据来自多个知识图谱(如 Wikidata、Freebase),这有助于 KG-Agent 学习在不同知识图谱上的通用自主决策能力。

5 实验

5.1 实验设置

我们选取 4 个常用的知识图谱问答(KGQA)数据集作为域内数据集,分别是基于 Freebase 知识图谱的 WebQSP、CWQ、GrailQA,以及基于 Wikidata 知识图谱的 KQA Pro;选取 3 个开放域问答(ODQA)数据集作为域外数据集,即 WQ、NQ 和 TQ。此外,我们设置了三类基准方法用于对比:在域内数据集上,对比子图推理方法、基于语言模型(LM)的序列到序列(seq2seq)生成方法和基于大语言模型(LLM)的方法;在域外数据集上,对比微调类方法和基于大语言模型的方法。上述数据集、基准方法、评估协议及实现细节的详细说明,均已在附录 A 中呈现。

表 1:不同方法对比

表 2:基于 Freebase 知识图谱的 WebQSP、CWQ 测试集及 GrailQA 验证集结果

表 3:基于 Wikidata 知识图谱的 KQA Pro 测试集准确率结果

(注:Davinci-002、GPT-4 和 ChatGPT 的结果由本文作者评估得出,其他基准方法的结果引自 Cao 等人(2022)的研究。)

表 4:域外开放域问答(ODQA)数据集验证集子集的结果

表 5:MetaQA 数据集三个子集的结果

(注:基准方法的结果引自 Jiang 等人(2023b)的研究。)

5.2 主要实验结果

域内数据集结果

表 2 和表 3 分别展示了基于 Freebase 和 Wikidata 知识图谱的域内数据集结果。首先,在 WebQSP 和 KQA Pro 数据集上,基于语言模型的序列到序列生成方法比子图推理方法取得了更优的 F1 分数。这表明,由语言模型生成的 SPARQL 查询能获取更完整的答案集合,且这种结构化查询相比传统子图推理方法,更能支持最大值、计数等复杂操作。其次,尽管大语言模型性能强大,但在 WebQSP、GrailQA 和 KQA Pro 数据集上,直接使用 Davinci-003、ChatGPT 甚至 GPT-4,与性能最优的微调方法相比仍存在较大差距,这说明仅依靠大语言模型难以解决复杂问答问题。最后,在混合数据集上完成指令微调后,本文提出的 KG-Agent 在所有数据集上的性能均显著优于其他所有竞争性基准方法。借助不同数据集间的相互增强作用,本文方法在 WebQSP、CWQ 和 GrailQA 数据集上的 F1 分数分别提升了 1.7%、7.5% 和 2.7%。得益于自主推理机制,本文方法能在两种知识图谱上完成推理,并在所有数据集上实现了一致性性能提升。

域外数据集结果

完成指令微调后,我们直接在域外数据集上评估了 KG-Agent 的零样本性能。如表 4 所示,尽管 T5、BART 等小型预训练语言模型经过了全量数据微调,但仍无法有效解答这些事实性问题。Davinci-003 和 ChatGPT 由于参数规模庞大,在基于维基百科(其预训练语料可能包含该数据)构建的 NQ 和 TQ 数据集上表现良好,但在基于 Freebase 知识图谱构建的 WQ 数据集上性能不佳。与之相反,本文的 KG-Agent 无需记忆特定知识,只需学习如何与知识图谱交互即可;因此,它能在零样本设置下利用外部知识图谱,且相比经过微调的预训练语言模型,实现了一致性性能提升。

表 6:不同采样比例下指令微调后,三个域内数据集的 F1 分数

5.3 进一步分析

在特定领域知识图谱上的迁移能力

为评估本文方法在其他知识图谱上的迁移能力,我们在基于电影领域知识图谱构建的 MetaQA 数据集上对 KG-Agent 进行了测试。参考现有研究(He 等人,2021;Jiang 等人,2023b),表 5 展示了测试集上的单样本(one-shot)结果。直接使用 ChatGPT 解答这些领域特定问题时,性能表现不佳:在 MQA-3 跳(三跳问答)子集上,其性能相比经过监督微调的 TransferNet 模型,绝对下降了 45%。为大语言模型配备知识图谱后,StructGPT 的性能相比 ChatGPT 提升了约 37%,大幅超越后者。而本文的 KG-Agent 在所有子集上,相比具有竞争力的监督微调基准方法,均实现了一致性性能提升。这表明,该智能体确实学习到了在知识图谱上推理的通用能力,且这种能力能有效迁移到其他知识图谱上。

指令数据量的影响

我们探究了指令数据量对 KG-Agent 性能的影响,结果如图 2 所示。在保持采样比例不变的情况下,我们将指令数据总量以指数方式从 2k(2000 条)扩展至 64k(64000 条),并在 WebQSP 和 CWQ 数据集上评估了 F1 分数和 Hits@1 分数。结果显示,随着指令微调数据量的增加,模型性能逐步提升,最终趋于稳定,这体现了数据量的重要性。同时,当数据量从 16k 增加到 64k 时,KG-Agent 的性能未出现显著提升。我们认为这与指令微调数据的多样性有关,这一观点也得到了现有研究(Chung 等人,2022;Aribandi 等人,2022)的支持。因此,未来我们将构建更多样化的样本,以进一步提升模型性能。

图 2:不同指令微调数据量下,KG-Agent 在 WebQSP 和 CWQ 测试集上的 F1 分数(左图)和 Hits@1 分数(右图)

(注:横坐标为训练数据量(Amount of Training Data),单位为 “条(k)”;左图纵坐标为 F1 分数(F1 (%)),右图纵坐标为 Hits@1 分数(Hits@1 (%));两条曲线分别代表 WebQSP 和 CWQ 数据集的结果。)

微调数据比例的影响

实验发现,仅从现有数据集中采样 10k(10000 条)样本,就足以让骨干大语言模型学习到自主决策能力。在此基础上,我们进一步开展消融实验:在保持指令微调数据总量不变的前提下,探究采样比例对智能体性能的影响。具体而言,我们在保持另外两个数据集比例不变的情况下,将其中一个数据集的采样比例翻倍,并评估了 WebQSP、CWQ 和 GrailQA 数据集上的智能体性能,结果如表 6 所示。可以看出,随着某一数据集采样比例的增加,智能体在该数据集上的性能会持续提升;但对于三个数据集的平均性能而言,所有比例变体的结果均低于我们所选的原始比例。这表明,我们选择的采样比例能让大语言模型平衡并掌握更全面、更通用的能力。

6 结论

本文提出了一种自主智能体框架 KG-Agent,用于协同大语言模型(LLMs)和知识图谱(KGs),实现知识图谱上的复杂推理。该方法首先构建了一个知识图谱工具箱,包含三类工具,可支持知识图谱推理中的典型操作;其次,设计了一套基于 “工具选择 - 记忆更新” 的自主迭代机制,整合了大语言模型、多功能工具箱、基于知识图谱的执行器和知识记忆模块,用于知识图谱推理;随后,利用现有知识图谱问答(KGQA)数据集,构建了基于代码的指令微调数据集;最后,仅使用 10k 条微调样本,就基于规模较小的 70 亿参数大语言模型(7B LLM)实现了该自主智能体。实验表明,该智能体在多数情况下,性能均优于基于全量数据微调或使用更大规模大语言模型的现有最优基准方法。未来研究中,我们将考虑扩展该框架,以处理更多类型的结构化数据(如数据库、表格等)。

局限性

尽管 KG-Agent 在各类复杂事实性问答任务中均展现出优异性能,但其方法仍存在一些局限性。首先,我们仅将 LLaMA2-7B 作为骨干大语言模型(LLM),该模型经过指令微调后虽具备较强能力,但仍需开展更多实验,对其他参数规模相近的大语言模型(如 Mistral-7B(Jiang 等人,2023a)或 CodeLLaMA-7B(Rozière 等人,2023))进行评估。其次,当前研究聚焦于通过知识图谱(KG)推理来解答事实性问题,未来应考虑扩展该框架,使其能够处理更多类型的知识源,例如数据库或表格。第三,我们仅在基于知识图谱的事实性问答任务上对方法进行了评估,未来研究需纳入更广泛的评估场景(如数据到文本(data-to-text)、形式语言到文本(formal-language-to-text)(Xie 等人,2022)),以验证方法的通用性。最后,尽管我们已尽力微调大语言模型,使其仅基于知识图谱信息回答问题,并避免针对用户问题生成具有歧视性和风险性的响应,但仍需添加更多基于规则的方法,对预测结果进行后处理,以过滤非法响应。

OK,文章解读就到这里了,下面做下摘要:

这篇文档讲了一种叫KG-Agent的新型智能体框架,专门解决大语言模型(LLMs)在 “知识图谱(KG)上做复杂推理” 时的短板 —— 比如要回答 “C 罗 2011 年效力的、成立时间最晚的球队是哪支”,需要在知识图谱里先找 C 罗的球队、再筛选 2011 年的队伍、最后比较成立时间,传统模型要么不会一步步查图谱,要么依赖复杂人工规则。KG-Agent 让小模型(比如 70 亿参数的 LLaMA2-7B)不用靠大模型 API,自己就能 “自主决策 + 调用工具查图谱 + 记结果继续推理”,用很少的数据训练,在多个复杂问答任务上比现有方法表现更好。先搞懂背景:知识图谱是存 “实体 - 关系 - 实体” triples 的结构化数据库(比如 “C 罗 - 效力于 - 曼联”“曼联 - 成立时间 - 1878 年”),能帮模型补全外部知识,但大模型处理图谱有两个大问题:

  1. 不会灵活查:要么把图谱信息全塞给模型(信息冗余、丢结构),要么按固定步骤查(比如 “先找实体→再找关系”),遇到复杂问题(多约束、多跳)就卡壳;
  2. 依赖大模型:之前的改进方法大多靠 ChatGPT、GPT-4 这类闭源大模型,小模型要么不会用图谱,要么推理混乱。

KG-Agent 的核心思路:“给小模型配工具 + 教它自主推理,用少量数据练出图谱推理能力”
KG-Agent 不搞复杂的模型结构,就靠 “工具箱 + 指令微调 + 自主迭代机制”,让小模型学会在图谱上 “一步一步找答案”,关键做了三件事:

1. 给模型配 “图谱操作工具箱”,解决 “不会查” 的问题

传统模型只能纯文字推理,KG-Agent 专门设计了三类工具,让模型能像人用数据库一样操作图谱:

  • 提取工具

    :查基础信息,比如 “get_relation(查实体的关联关系)”“get_tail_entity(按关系查尾实体)”—— 比如输入 “C 罗” 和 “效力于”,能查出他效力过的所有球队;

  • 逻辑工具

    :处理中间结果,比如 “count(数实体数量)”“intersect(找实体交集)”“end(返回最终答案)”—— 比如筛选 “2011 年 C 罗效力的球队” 和 “成立时间最晚的球队” 的交集;

  • 语义工具

    :处理模糊信息,比如 “disambiguate_entity(实体消歧)”—— 比如 “乔丹” 可能指篮球运动员或演员,工具能根据问题选对图谱里的实体。
    这些工具格式统一,模型生成工具调用代码(比如get_tail_entity(C罗, 效力于)),就能触发图谱查询,拿到结果。

2. 用 “代码化指令数据” 微调,教模型 “怎么想”

不用人工标 “第一步查什么、第二步算什么”,而是把现有图谱问答数据集(比如 WebQSP、CWQ)里的 “推理链” 转成 “工具调用代码”,让模型学规律:
比如原始问题 “C 罗 2011 年效力的、成立最晚的球队”,先把标注的 SQL 查询转成 “图谱查询图”,再拆成代码步骤:

  1. get_relation(C罗)

    → 拿到 “效力于” 等关系;

  2. get_tail_entity(C罗, 效力于)

    → 拿到 C 罗所有球队;

  3. get_entity_by_constraint(球队, 效力时间, =, 2011)

    → 筛选 2011 年的球队;

  4. get_entity_by_constraint(筛选后球队, 成立时间, argmax)

    → 找成立最晚的;

  5. end(结果)

    → 返回答案。
    把这些步骤做成 “输入(问题 + 工具说明 + 历史步骤)→ 输出(下一个工具调用)” 的训练数据,用 1 万条样本微调 LLaMA2-7B,模型就知道 “遇到这类问题该按什么顺序调用工具”。

3. 设计 “自主迭代机制”,让模型 “自己推进推理”

微调后的模型不是被动执行步骤,而是能像人一样 “记结果、选工具、继续推”,核心靠 “知识记忆” 和 “循环决策”:

  • 知识记忆

    :记录推理全程的关键信息 —— 问题、工具说明、已查的图谱信息(比如 “C 罗 2011 年效力皇马”)、历史工具调用代码,模型每次决策都能参考之前的结果;

  • 自主循环

    :模型先看记忆里的信息,选一个工具调用(比如 “现在要查皇马的成立时间”)→ 工具查图谱返回结果(“1902 年”)→ 记忆更新 → 模型再判断 “要不要继续查(比如还有没有其他球队)” 或 “返回答案”,直到找到最终结果。

比如回答 “C 罗 2011 年效力的成立最晚球队” 时,模型会先查 C 罗的球队,再筛 2011 年的,接着比成立时间,全程不用人干预,还能自己修正错误(比如查错球队时,重新调用筛选工具)。

KG-Agent 的效果:小模型也能打赢大模型和全量数据训练的方法

实验用 70 亿参数的 LLaMA2-7B,仅用 1 万条训练样本,结果很亮眼:

  • 在熟悉的图谱任务上(比如 WebQSP、CWQ)

    :比用全量数据训练的方法好 —— 比如在 CWQ 数据集上,F1 分数比最好的基线高 7.5%,用的训练数据却只有对方的 36%;

  • 在陌生的图谱 / 任务上(比如电影领域的 MetaQA、开放域问答 WQ-Freebase)

    :零样本性能比全量微调的模型好 —— 比如在 WQ-Freebase 上,准确率比 T5-Large 高 8.5%,连 ChatGPT 直接回答都不如它(ChatGPT 在 MetaQA 的 3 跳问题上准确率只有 43.2%,KG-Agent 能到 92.1%);

  • 跨图谱通用

    :在 Freebase、Wikidata、电影专用图谱上都能稳定发挥,说明模型学的是 “推理方法”,不是死记知识。

总结

KG-Agent 本质是 “给小模型装个图谱工具箱 + 教它自主规划”:不用依赖大模型 API,不用海量标注数据,就靠工具化操作和强化推理流程,让小模型也能在知识图谱上解决复杂问题。它的价值在于 —— 降低了 “图谱推理” 的门槛,未来能扩展到数据库、表格等更多结构化数据场景,让小模型在需要 “精准查知识 + 多步推理” 的任务(比如专业问答、数据分析)上更实用。

如何学习大模型 AI ?

我国在AI大模型领域面临人才短缺,数量与质量均落后于发达国家。2023年,人才缺口已超百万,凸显培养不足。随着Al技术飞速发展,预计到2025年,这一缺口将急剧扩大至400万,严重制约我国Al产业的创新步伐。加强人才培养,优化教育体系,国际合作并进,是破解困局、推动AI发展的关键。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

2025最新大模型学习路线

明确的学习路线至关重要。它能指引新人起点、规划学习顺序、明确核心知识点。大模型领域涉及的知识点非常广泛,没有明确的学习路线可能会导致新人感到迷茫,不知道应该专注于哪些内容。

对于从来没有接触过AI大模型的同学,我帮大家准备了从零基础到精通学习成长路线图以及学习规划。可以说是最科学最系统的学习路线。

在这里插入图片描述

针对以上大模型的学习路线我们也整理了对应的学习视频教程,和配套的学习资料。

大模型经典PDF书籍

新手必备的大模型学习PDF书单来了!全是硬核知识,帮你少走弯路!

在这里插入图片描述

配套大模型项目实战

所有视频教程所涉及的实战项目和项目源码等
在这里插入图片描述

博主介绍+AI项目案例集锦

MoPaaS专注于Al技术能力建设与应用场景开发,与智学优课联合孵化,培养适合未来发展需求的技术性人才和应用型领袖。

在这里插入图片描述

在这里插入图片描述

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费

在这里插入图片描述

为什么要学习大模型?

2025人工智能大模型的技术岗位与能力培养随着人工智能技术的迅速发展和应用 , 大模型作为其中的重要组成部分 , 正逐渐成为推动人工智能发展的重要引擎 。大模型以其强大的数据处理和模式识别能力, 广泛应用于自然语言处理 、计算机视觉 、 智能推荐等领域 ,为各行各业带来了革命性的改变和机遇 。

在这里插入图片描述

适合人群

  • 在校学生:包括专科、本科、硕士和博士研究生。学生应具备扎实的编程基础和一定的数学基础,有志于深入AGI大模型行业,希望开展相关的研究和开发工作。
  • IT行业从业人员:包括在职或失业者,涵盖开发、测试、运维、产品经理等职务。拥有一定的IT从业经验,至少1年以上的编程工作经验,对大模型技术感兴趣或有业务需求,希望通过课程提升自身在IT领域的竞争力。
  • IT管理及技术研究领域人员:包括技术经理、技术负责人、CTO、架构师、研究员等角色。这些人员需要跟随技术发展趋势,主导技术创新,推动大模型技术在企业业务中的应用与改造。
  • 传统AI从业人员:包括算法工程师、机器视觉工程师、深度学习工程师等。这些AI技术人才原先从事机器视觉、自然语言处理、推荐系统等领域工作,现需要快速补充大模型技术能力,获得大模型训练微调的实操技能,以适应新的技术发展趋势。
    在这里插入图片描述

课程精彩瞬间

大模型核心原理与Prompt:掌握大语言模型的核心知识,了解行业应用与趋势;熟练Python编程,提升提示工程技能,为Al应用开发打下坚实基础。

在这里插入图片描述

RAG应用开发工程:掌握RAG应用开发全流程,理解前沿技术,提升商业化分析与优化能力,通过实战项目加深理解与应用。 在这里插入图片描述

Agent应用架构进阶实践:掌握大模型Agent技术的核心原理与实践应用,能够独立完成Agent系统的设计与开发,提升多智能体协同与复杂任务处理的能力,为AI产品的创新与优化提供有力支持。
在这里插入图片描述

模型微调与私有化大模型:掌握大模型微调与私有化部署技能,提升模型优化与部署能力,为大模型项目落地打下坚实基础。 在这里插入图片描述

顶尖师资,深耕AI大模型前沿技术

实战专家亲授,让你少走弯路
在这里插入图片描述

一对一学习规划,职业生涯指导

  • 真实商业项目实训
  • 大厂绿色直通车

人才库优秀学员参与真实商业项目实训

以商业交付标准作为学习标准,具备真实大模型项目实践操作经验可写入简历,支持项目背调

在这里插入图片描述
大厂绿色直通车,冲击行业高薪岗位
在这里插入图片描述

文中涉及到的完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费

在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值