链载Ai

标题: 一文看懂GraphRAG:蚂蚁集团联合各所名校出品GraphRAG综述 [打印本页]

作者: 链载Ai    时间: 昨天 11:07
标题: 一文看懂GraphRAG:蚂蚁集团联合各所名校出品GraphRAG综述

一文看懂GraphRAG:蚂蚁集团联合各所名校出品GraphRAG综述

发布时间:2024 年 08 月 15 日

RAG GraphRAG

Graph Retrieval-Augmented Generation: A Survey

近期,RAG 技术在无需重新训练的情况下,成功应对了 LLM 的诸多挑战。通过引入外部知识库,RAG 显著提升了 LLM 输出的质量,有效解决了“幻觉”、领域知识缺失及信息过时等问题。然而,数据库中实体关系的复杂性对 RAG 构成了挑战。GraphRAG 技术应运而生,它利用实体间的结构信息,实现更精准的检索,增强关系知识的捕捉,并生成更符合上下文的响应。鉴于 GraphRAG 的独特优势,本文首次系统梳理了其方法论,涵盖了基于图的索引、图引导的检索及图增强的生成等关键环节。我们详细介绍了各阶段的核心技术与训练策略,并探讨了 GraphRAG 在下游任务、应用领域、评估体系及工业实践中的表现。最后,我们展望了未来的研究方向,旨在激发更多探索,推动该领域的持续发展。

https://arxiv.org/abs/2408.08921

本文为阅读该综述笔记,内容有所精炼和删减,推荐阅读原文,必定会有不小收货。


如遇无法添加,请+ vx: iamxxn886



1. 引言

尽管大语言模型这两年各方面表现非常出色,但是由于缺乏特定领域知识、实时更新信息,导致模型存在一定局限性。这些不足容易引发幻觉现象,即模型生成不准确甚至是虚构的信息。

所以,用外部知识来补充大型语言模型以缓解幻觉问题势在必行。检索增强生成(Retrieval-Augmented Generation, RAG)作为一种重要解决方案应运而生。

RAG通过在生成过程中融入检索组件来提升生成内容的质量和相关性。RAG 的核心在于能够动态查询大型文本语料库,将相关的事实知识纳入底层语言模型生成的响应之中。这种融合不但丰富了上下文深度,还保证了事实准确性和特异性。因其出色的表现和广泛的应用,RAG 备受关注,成为大语言模型应用领域的重点。

虽然 RAG 成果斐然,并在各个领域得到广泛应用,但在实际场景中仍面临一些局限:

图检索增强生成(GraphRAG)作为创新的解决方案出现,可以用来解决以上传统RAG的困局。

与传统的 RAG 不同,GraphRAG 从预先构建的图数据库中检索与给定查询相关且包含关系知识的图元素,如上图所示。这些元素可能包括节点、三元组、路径或子图。

GraphRAG 考虑了文本之间的联系,能够更准确、更全面地检索关系信息。

此外,图数据,如知识图,对文本数据进行了抽象和总结,大幅缩短了输入文本的长度,减少了冗长的问题。通过检索子图或图社区,能够获取全面的信息,借助捕获图结构中更广泛的上下文和相互联系,有效解决 QFS 挑战。

2. GraphRAG 概述

GraphRAG 是借助外部结构化知识图谱来增进语言模型的上下文理解,并生成更具洞见响应的框架。GraphRAG 的目标在于从数据库中检索出最为相关的知识,进而提升下游任务的答案质量。

鉴于候选子图的数量会随着图的规模呈指数增长,故而需要有效的近似方法。由此,运用图检索器提取最优子图 ,而后生成器依据检索到的子图生成答案。

所以,将 GraphRAG 的整个流程拆解为三个主要阶段:基于图的索引、图引导检索和图增强生成。

2.1 基于图的索引(G-Indexing)

基于图的索引构成了 GraphRAG 的初始阶段,旨在识别或构建图数据库 G,并在其基础上建立索引。

图数据库可以源于公共知识图谱、图形数据,或者依据专有数据源(如文本或其他形式的数据)来构建。索引过程通常涵盖映射节点和边的属性,在相互连接的节点间建立指针,以及组织数据以支持快速遍历和检索操作。索引决定了后续检索阶段的精细程度,在提升查询效率方面发挥着关键作用。

2.2 图引导检索(G-Retrieval)

在基于图的索引之后,图引导检索阶段的重点在于根据用户的查询或输入从图形数据库中提取相关信息。

具体来说,给定以自然语言表述的用户查询,检索阶段旨在从知识图谱中提取最相关的元素(例如,实体、三元组、路径、子图)。

2.3 图增强生成(G-Generation)

图增强生成阶段涉及基于检索到的图数据合成有意义的输出或响应。这可能包括回答用户的查询、生成报告等。在这个阶段,生成器将查询、检索到的图形元素以及可选的提示作为输入来生成响应。

3. 基于图的索引

图数据库的构建与索引乃是 GraphRAG 的基石,其质量直接左右 GraphRAG 的性能表现。

3.1 图数据

GraphRAG 在检索和生成过程中运用了各式各样的图数据。在此,依据其来源将这些数据划分为两类,分别是开放知识图和自建图数据。

3.1.1 开放知识图谱(Open Knowledge Graphs)

开放知识图指的是源自公开可用的存储库或数据库的图数据。运用这些知识图能够大幅缩减开发与维护所需的时间和资源。依据其范畴进一步将它们分为两类,即通用知识图和领域知识图

3.1.1.1 通用知识图谱(General Knowledge Graphs)

通用知识图谱主要存储通用的、结构化的知识,通常仰仗全球社群的集体输入与更新,确保信息库全面且持续更新。

百科知识图属于典型的通用知识图,涵盖了从人类专家和百科全书采集的大规模现实世界知识。例如:

常识知识图是另一类通用知识图。它们涵盖抽象的常识知识,例如概念之间的语义关联和事件之间的因果关系。典型的常识知识图包括:

3.1.1.2 领域知识图谱(Domain Knowledge Graphs)

特定领域的知识图谱对于强化 LLMs 解决特定领域问题至关重要。这些 KG 在特定领域提供专业知识,助力模型获取更深入的见解和对复杂专业关系的更全面理解。

在生物医学领域:

在电影领域:

此外,构建了一个名为 GR-Bench 的数据集,其中包含跨越学术、电子商务、文学、医疗保健和法律领域的五个领域知识图。

3.1.2 自建图数据(Self-Constructed Graph Data)

构建自定义图数据是将特定领域知识融入检索过程的巧妙手段。

对于那些不直接涉及图数据的下游任务,研究者们常提出从多元数据源(如文档、表格、数据库等)构建图谱,并借助GraphRAG技术提升任务表现。

为捕捉文档间的结构性联系,有提议构建异构文档图,涵盖共同引用、共同主题、共同发布场所等多种文档级关系,并通过共享关键词建立段落间的联系。

在捕捉文档内实体间关系,利用命名实体识别工具提取实体,再通过语言模型深入挖掘实体间关系,构建出知识图谱。

此外,针对特定下游任务,还需设计相应的映射方法。例如,在专利短语相似性推断任务中,将专利数据库转化为专利短语图,通过专利中出现的短语建立专利节点与短语节点间的联系,而专利节点间的联系则基于引用关系。在客户服务技术支持场景中,有提议将历史问题转化为知识图谱,通过树状结构保持问题内部联系,并通过语义相似度和阈值维护问题间的联系。

3.2 索引

基于图的索引对于提升图数据库查询操作的效率和速度至关重要,直接影响到后续的检索方法和细节程度。常见的基于图的索引方法包括图索引、文本索引和向量索引。

3.2.1 图索引(Graph Indexing)

图索引作为最常用的方法,保留了图的全部结构,确保任何节点及其边和邻近节点都能轻松访问。在后续检索阶段,可以应用广度优先搜索最短路径算法等经典图搜索算法来促进检索任务。

3.2.2 文本索引(Text Indexing)

文本索引通过将图数据转化为文本描述来优化检索过程。这些描述存储于文本语料库中,可以使用各种基于文本的检索技术,如稀疏检索和密集检索。一些方法通过预设规则或模板,将知识图谱转化为易于理解的文本。例如,使用预设模板将知识图谱中的三元组转换为自然语言,同时将相同主实体的三元组合并为段落。此外,还有方法将子图信息转化为文本描述,如通过社区检测在图上生成每个社区的摘要

3.2.3 向量索引(Vector Indexing)

向量索引通过将图数据转化为向量表示来提升检索效率,便于快速检索和有效处理查询。例如:

3.2.4 小结

以上三种索引方法各有独特优势:

在实际应用中,往往更青睐结合这些索引方法的混合方式,而非单纯依赖其中一种。

4. 图引导检索(Graph-Guided Retrieval)

在 GraphRAG 中,检索过程对于从外部图数据库提取相关且高质量的图数据,以保障生成输出的质量与相关性而言,至关重要。

然而,检索图数据面临两大显著挑战:

-(1)候选子图激增(Explosive Candidate Subgraphs):随着图规模的扩大,候选子图的数量呈指数式增长,这就需要启发式搜索算法来高效地探寻和检索相关子图。

-(2)相似度测量欠缺(Insufficient Similarity Measurement):要精准测量文本查询与图数据之间的相似度,就需要开发能够理解文本和结构信息的算法。

4.1 检索器(Retriever)

在 GraphRAG 中,各类检索器在应对检索任务的不同方面均具有独特优势。依据其基础模型将检索器分为三类:非参数检索器、基于语言模型(LM)的检索器和基于图神经网络(GNN)的检索器。

预处理步骤中所使用的模型,如查询编码和实体链接等,此处不予考虑,因为这些模型在不同方法中有所差异,并非重点。

4.1.1 非参数检索器(Non-parametric Retriever)

非参数检索器基于启发式规则或传统的图搜索算法,不依赖深度学习模型,从而实现了高检索效率。

4.1.2 基于 LM 的检索器(LM-based Retriever)

由于具备强大的自然语言理解能力,语言模型在 GraphRAG 中是高效检索器。

这些模型在处理和解读各类自然语言查询方面表现出色,使其在基于图的框架内适用于广泛的检索任务。

将语言模型分为两类:判别式和生成式语言模型。

4.1.3 基于 GNN 的检索器(GNN-based Retriever)

GNN 善于理解和利用复杂的图结构。基于 GNN 的检索器通常对图数据进行编码,而后依据与查询的相似度对不同的检索粒度进行评分。例如:

4.1.4 小结

在检索过程中,非参数检索器检索效率不错,但因缺乏下游任务的训练,可能存在检索不准确的问题。

同时,尽管基于语言模型的检索器和基于图神经网络的检索器检索准确率更高,却需要大量计算开销。

鉴于此互补性,许多方法提出了混合检索方式,以提升检索效率与准确性。众多方法采用多阶段检索策略,每个阶段运用不同模型。比如:

4.2. 检索范式

在 GraphRAG 中,不同的检索范式,包括单次检索、迭代检索和多阶段检索,对于提高检索信息的相关性与深度发挥着关键作用。

4.2.1 单次检索(Once Retrieval)

单次检索旨在通过一次查询获取所有相关信息。一类方法利用嵌入相似度来检索最相关的信息片段。另一类方法设计预定义的规则或模式,直接从图数据库中提取特定的结构化信息,如三元组、路径或子图。例如:

4.2.2 迭代检索(Iterative Retrieval)

在迭代检索中,采用多个检索步骤,后续的搜索取决于先前检索的成果。这些方法旨在通过连续迭代深化对检索信息的理解或完整性。进一步将迭代检索分为两类:(1)非自适应和(2)自适应检索。

4.2.2.1 非自适应检索(Non-Adaptive Retrieval)

非自适应方法通常遵循固定的检索顺序,检索的终止由设定最大时间或阈值来决定。例如,PullNet 通过T次迭代检索与问题相关的子图。

4.2.2.2 自适应检索(Adaptive Retrieval)

自适应检索的一大特色在于让模型自主决定完成检索活动的最佳时机。

例如,借助语言模型进行跳步预测,以此作为结束检索的指标。还有一批研究人员利用模型生成的特殊标记或文本作为检索过程的终止信号。

比如:ToG 提示大型语言模型代理探索多种可能的推理路径,直至大型语言模型根据当前推理路径判定问题能够得到解答。训练一个 RoBERTa 从每个主题实体拓展路径。在此过程中,引入一个名为“[END]”的虚拟关系来终止检索流程。

另一种常见方式是将大型模型视作代理,使其能够直接生成问题的答案,以此标志迭代结束。例如,提出基于大型语言模型的代理在图上进行推理。这些代理能够自主确定检索的信息,调用预先设定的检索工具,并依据检索到的信息停止检索过程。

4.2.3 多阶段检索(Multi-Stage Retrieval)

多阶段检索将检索过程线性地划分为多个阶段,在这些阶段之间还存在诸如检索增强甚至生成过程等额外步骤。在多阶段检索中,不同阶段可能采用各类检索器,这使得系统能够融合针对查询不同方面定制的各种检索技术。

4.2.4 小结

在 GraphRAG 中,一次性检索通常复杂度较低且响应时间较短,适用于需要实时响应的场景。相较而言,迭代检索往往涉及更高的时间复杂度,尤其是使用大型语言模型作为检索器时,可能导致处理时间较长。

检索范式的选择应依据具体的用例和需求来平衡精度与时间复杂度。

4.3 检索粒度(Retrieval Granularity)

依照不同的任务场景和索引类型,研究人员设计了不同的检索粒度,可分为节点、三元组、路径和子图。

每种检索粒度都有自身的优势,适用于不同的实际场景。

4.3.1 节点(Nodes)

节点能够实现对图中单个元素的精准检索,对于有针对性的查询和特定信息提取十分理想。通常来讲,对于知识图谱,节点指的是实体。对于其他类型的文本属性图,节点可能包含描述节点属性的文本信息。通过检索图中的节点,GraphRAG 系统能够提供关于其属性、关系和上下文信息的详尽见解。例如,以及构建文档图并检索相关的段落节点。以及从构建的知识图中检索实体。

4.3.2 三元组(Triplets)

三元组由实体及其关系以主语-谓语-宾语元组的形式构成,为图中的关系数据提供了一种结构化的呈现方式。三元组的这种结构化形式有利于实现清晰且有序的数据检索,在理解实体间关系及上下文相关性至关重要的场景中具有优势。

检索包含主题实体的三元组以获取相关信息,并首先运用预定义模板将图数据中的每个三元组转化为文本语句,接着采用文本检索器来提取相关三元组。

直接从图数据中检索三元组可能仍存在上下文广度和深度不足的问题,以致无法捕捉间接关系或推理链。建议基于原始问题生成逻辑链,再检索每个逻辑链的相关三元组。

4.3.3 路径(Paths)

对路径粒度数据的检索可被视为捕获实体之间的关系序列,从而增强了上下文理解和推理能力。

在 GraphRAG 中,检索路径因能够捕捉图中的复杂关系和上下文依赖关系而具有显著优势。

随着图规模的增大,可能的路径呈指数级增长,这使得路径检索面临挑战,计算复杂度也随之提升。

为解决此问题,一些依据预定义规则的方法来检索相关路径。例如:

还有一些借助模型在图上进行路径搜索的方法。

4.3.4 子图(Subgraphs)

检索子图具有显著优势,因其能够捕捉图内的综合关系上下文。这种粒度使 GraphRAG 能够提取和分析嵌入在较大结构中的复杂模式、序列和依赖关系,有助于更深入的洞察和对语义连接更细腻的理解。

为保证信息的完整性和检索效率,一些方法提出了一种基于初始规则的方法来检索候选子图,随后对其进行优化或进一步处理。从自行构建的专利短语图中检索专利短语的自我图。并且首先选取主题实体及其两跳邻居作为节点集,然后选择头和尾实体均在节点集中的边来构成子图。此外,还有一些基于嵌入的子图检索方法。

除了上述直接的子图检索方式,有些工作建议先检索相关路径,而后据此构建相关子图。比如,训练一个RoBERTa模型,通过顺序决策流程来识别多个推理路径,接着合并来自不同路径的相同实体,从而得出最终的子图。

4.3.5 混合粒度(Hybrid Granularties)

鉴于上述各类检索粒度的优劣,部分研究人员提议采用混合粒度,也就是从图数据中检索多种粒度的相关信息。这种粒度类型增强了系统捕获详细关系和更广泛的上下文理解的能力,进而减少噪声并提高检索数据的相关性。以往的诸多工作提议借助LLM代理来检索复杂的混合信息,运用基于LLM的代理自适应地选取节点、三元组、路径和子图。

4.3.6 小结

-(1)在实际应用中,检索粒度之间不存在清晰的界限,因为子图能够由多条路径构成,而路径又可以由若干三元组形成。

-(2)诸如节点、三元组、路径和子图之类的各种粒度在GraphRAG过程中具备不同的优势。

在选择粒度时,依据任务的具体情境,在检索内容和效率之间做好平衡至关重要。对于简单的查询或者当效率最为关键时,更精细的粒度如实体或三元组或许更受青睐,以优化检索速度和相关性。

相较而言,复杂场景往往得益于融合多种粒度的混合方法。这种方法能够确保更全面地理解图结构和关系,提升生成响应的深度和准确性。

因此,GraphRAG在粒度选择上的灵活性使其能够有效适应各个领域的各种信息检索需求。

4.4 检索增强(Retrieval Enhancement)

为保证高检索质量,研究人员提出了增强用户查询和检索所得知识的技术。把查询增强划分为查询扩展和查询分解,把知识增强分为合并与修剪。

这些策略共同优化了检索过程。虽然像查询重写之类的其他技术在RAG中常用,但在GraphRAG中应用较少。所以作者不对这些方法进行深入探讨,尽管它们有可能适用于GraphRAG。

4.4.1. 查询增强(Query Enhancement)

用于丰富信息以获取更优的检索效果。这可能涵盖查询扩展和查询分解。

4.4.1.1 查询扩展(Query Expansion)

由于查询通常较短且信息含量有限,查询扩展通过添加额外的相关术语或概念来补充或优化原始查询,从而改善搜索结果。利用LLM基于KG生成有依据的关系路径来增强检索查询。

4.4.1.2 查询分解(Query Decomposition)

查询分解技术把原始用户查询拆解或分解为更小、更具体的子查询。每个子查询通常聚焦于原始查询的特定方面或组成部分,有效地降低了语言查询的复杂性和模糊性。例如,把主要问题拆分为子句,每个子句代表一种不同的关系,并依次为每个子句检索相关的三元组。

4.4.2. 知识增强(Knowledge Enhancement)

在检索出初始结果后,运用知识增强策略来优化和改进检索器的结果。此阶段通常涉及知识合并和知识修剪流程,以凸显最相关的信息。

4.4.2.1 知识合并(Knowledge Merging)

知识合并所检索到的信息能够压缩和聚合信息,通过整合来自多个来源的相关细节,有助于获取更全面的视角。

这种方法不仅增强了信息的完整性和连贯性,还缓解了模型中输入长度限制的问题。

KnowledgeNavigator 通过三元组聚合来合并节点并压缩检索到的子图,以提升推理效率。在子图检索中,从每个主题实体检索到顶部路径以形成单个子图后,合并来自不同子图的相同实体以形成最终子图。并且基于关系合并检索到的子图,将满足相同关系的头实体和尾实体组合成两个不同的实体集,最终形成关系路径。

4.4.2.2 知识修剪(Knowledge Pruning)

知识修剪是指过滤掉不太相关或冗余的检索信息以细化结果。以往的修剪方法包含两个主要类别:基于重排序的方法和基于大型语言模型(LLM)的方法。

基于 LLM 的方法在捕捉复杂的语言模式和语义细微差别方面表现出众,从而提高了其更准确地对搜索结果进行排名或生成响应的能力。为避免引入噪声信息,和提议通过调用 LLM 来修剪不相关的图数据。

5. 图增强生成

在 GraphRAG 中,生成阶段将检索到的图数据与查询相融合,以提升回答质量,需依据下游任务来选定适宜的生成模型。

把检索到的图数据转化为与生成器适配的格式,生成器会将查询和转换后的图数据当作输入,从而生成最终响应。

5.1. 生成器

生成器的选取通常取决于当下的下游任务类型。

5.2. 图格式

当把 GNNs 用作生成器时,图数据能够直接编码。但当使用 LMs 作为生成器时,图数据的非欧几里得特性构成了难题,因为它无法直接与文本数据相结合输入到 LMs 中。为解决此问题,采用图转换器将图数据转换为与 LMs 兼容的格式。这种转换通过让 LMs 能够有效地处理和利用结构化的图信息,从而增强了其生成能力。

作者总结了两种不同的图格式:图语言和图嵌入。

5.2.1. 图语言

图描述语言乃是一种专为表征和呈现图数据而构建的规范化符号系统。它设定了统一的语法和语义框架,用以描绘图中的组件及其相互连接。借由这些语言,用户能够以机器可理解的格式统一地生成、操纵和解读图数据。它们能够实现图架构的定义、节点与边的属性规范,以及在图结构上进行操作和查询。

5.2.1.1 邻接/边表

邻接表和边表乃是描述图结构的常用手段。邻接表枚举每个顶点的紧邻,为稀疏图中的连接提供了紧凑的表述方式。

5.2.1.2 自然语言

鉴于用户的查询通常以自然语言呈现,再考虑到语言模型(LMs)卓越的自然语言理解能力,运用自然语言描述检索到的图数据便成为一种颇具吸引力的方法。通过将图数据转化为描述性、易于理解的语言,LMs 能够弥合原始数据表示与用户友好型信息之间的鸿沟,促进与数据驱动应用程序更有效的交互。

5.2.1.3 类代码形式

考虑到自然语言描述和其他 1-D 序列本质上难以直接呈现图数据的 2-D 结构,同时鉴于 LMs 强大的代码理解能力,尝试采用类代码格式来表示图结构。例如,研究使用图形建模语言(GML)和图形标记语言(GraphML)来表示图形。这些标准化语言专为图数据而设计,提供了涵盖节点、边及其相互关系的全面描述。

5.2.1.4 语法树

相较于直接将图扁平化,将图转变为类似于语法树的结构。语法树具有层次结构,作为拓扑图,也保持着拓扑顺序。此方法留存了更多的结构信息,增进了对图内在属性的理解和分析。这种转变不但保留了不同图元素之间的关系动态,还推动了更复杂的图分析和处理算法。

5.2.1.5 节点序列

通过节点序列来呈现图,这些序列通常依据既定规则生成。相较于自然语言描述,这些序列更为精炼,且融入了先验知识,尤其是规则所强调的结构信息。将检索到的路径转化为节点序列,并输入到大型语言模型(LLM)中以提升任务表现。

LLaGA提出了两种模板,用以将图转化为节点序列。

5.2.2. 图嵌入

图语言方法将图数据转化为文本序列,可能导致上下文过长,增加计算成本,并可能超出LLM的处理能力。此外,即便借助图语言,LLM在完全理解图结构方面仍存在挑战。

因此,利用图神经网络(GNN)将图以嵌入形式表示,成为一个充满希望的替代方案。核心难题在于如何将图嵌入与文本表示融合到统一的语义空间中。目前的研究集中在使用前文提到的提示工程方法。

将图表示输入到语言模型主要通过开源模型实现,而非像GPT-4这样的闭源模型。尽管图嵌入方法避免了处理长文本输入的问题,但它们也面临其他挑战,如难以精确保留特定实体名称等信息和泛化能力不足。

5.3. 生成增强

在生成阶段,除了将检索到的图数据转换为生成器可接受的格式,并与查询一同输入以生成最终响应外,许多研究者还探索了多种生成增强技术来提升输出响应的质量。这些技术可根据其应用时机分为三类:生成前增强、生成中增强和生成后增强。

5.3.1. 生成前增强

生成前增强技术着眼于在将数据或表示输入生成器前,提升输入数据或表示的质量。实际上,生成前增强与检索之间并无明显界限。将检索阶段定义为从原始图中检索知识,并进行合并与修剪的过程。随后的操作则视为生成前增强。

常用的预生成增强手段主要在于对检索所得的图数据进行语义充实,以达成图数据与文本查询更紧密的融合。利用大型语言模型重写检索到的图数据,增进转换后的自然语言输出的自然度与语义丰富性。此方法不但保证图数据转化为更流畅、自然的语言,还丰富了其语义内涵。

5.3.2. 生成中增强

生成中增强通常依据中间结果或上下文线索调整生成策略。TIARA 引入了约束解码以控制输出空间并减少生成错误。在生成逻辑形式时,如果约束解码器检测到当前正在生成模式项,它会将下一个生成的标记限定在包含知识库(KB)类别和关系的尝试中的选项。与波束搜索相比,这种方式确保生成的模式项必定存在于知识图中,从而降低生成错误。还有其他方法调整大型语言模型的提示以实现多步推理。例如,MindMap 不仅生成答案,还生成推理过程。

5.3.3. 生成后增强

生成后增强在初始响应生成之后进行,主要包括整合多个生成的响应以获取最终响应。有些方法专注于整合在不同条件或输入下同一生成器的输出。

例如,为每个图社区生成摘要,接着依据摘要生成对查询的响应,然后使用大型语言模型对这些响应进行评分。最终,响应依据其分数降序排列,并依次纳入提示,直至达到令牌限制。随后,大型语言模型生成最终响应。并且首先将查询分解为若干子问题,然后为每个子问题生成答案,最后合并所有子问题的答案以得到最终答案。

6. 训练

6.1. 检索器的训练策略

6.1.1. 无训练

当前,主要有两种无训练检索器在使用:

6.1.2. 基于训练

训练检索器通常采用自回归的方式,即把先前的关系路径连接到查询的末尾。接着,模型依据这一连接后的输入来预测下一个关系。

然而,大多数数据集中检索内容的真实值缺失构成了一个重大难题。为解决此问题,许多方法尝试基于远程监督构建推理路径,以引导检索器的训练。还有另一类方法利用隐性的中间监督信号来训练检索器。

6.2. 生成器的训练

6.2.1. 无训练

无训练生成器主要适用于闭源大型语言模型或需要规避高训练成本的情形。检索到的图数据与查询一同输入到大型语言模型中。大型语言模型随后依据提示中给出的任务描述生成响应,极大地依赖其理解查询和图数据的固有能力。

6.2.2. 基于训练

对于生成式大型语言模型,可运用监督微调(SFT)进行微调,其中输入任务描述、查询和图数据,并将输出与下游任务的真实情况进行对比。

对于充当生成器的 GNN 或判别模型,采用针对下游任务的专门损失函数来有效训练模型。

6.3. 联合训练

同时联合训练检索器和生成器,凭借它们的互补优势来提升下游任务的性能。有些方法将检索器和生成器统一到一个模型里,通常是大型语言模型,并同时以检索和生成目标对它们进行训练。这种方法借助了统一架构的聚合能力,使模型能够在一个框架内无缝检索相关信息并生成连贯的响应。

其他方法包括先分别训练检索器和生成器,而后采用联合训练技术对两个组件进行微调。例如,子图检索器采用交替训练范式,其中检索器的参数被固定,利用图数据训练生成器。随后,生成器的参数被固定,并且使用来自生成器的反馈来引导检索器的训练。这种迭代流程有助于两个组件以协调的方式优化其性能。

7. 应用与评估

7.1. 下游任务

GraphRAG 应用于多种下游任务(尤其是 NLP 任务),涵盖问答、信息抽取等。

7.2. 应用领域

7.2.1. 电子商务

通过个性化推荐和智能客户服务来改善客户的购物体验并提高销售额。

用户和产品之间的历史交互能够自然地形成一个图,它含蓄地封装了用户的行为模式和偏好信息。然而,鉴于电子商务平台数量的增多以及用户交互数据量的持续增长,运用 GraphRAG 技术提取关键子图变得至关重要。集成不同类型或具有不同参数的多个检索器以提取相关子图,随后对其进行编码以用于预测用户的时间行为。为了提升客户服务问答系统的模型性能,构建具有问题内和问题间关系的过去问题图。对于每一个给定的查询,检索类似过去问题的子图以提高系统的响应质量。

7.2.2. 生物医学

GraphRAG 技术在生物医学问答系统中的应用愈发广泛,实现了先进的医疗决策表现。在这一领域,每种疾病都与特定症状相关联,每种药物都包含针对和治疗特定疾病的某些活性成分。一些研究人员为特定任务场景构建知识图谱,而另一些研究人员则利用诸如 CMeKG 和 CPubMed-KG 等开源知识图谱作为检索源。现有的方法通常从非参数检索器的初始搜索开始,接着设计通过重新排序来过滤检索内容的方法。此外,有些方法提议使用检索到的信息重写模型输入以增强生成效果。

7.2.3. 学术

在学术研究领域,每一篇论文由一位或多位研究人员创作,并与某个研究领域相关联。作者隶属于机构,并且作者之间存在诸如合作或者共同的机构隶属关系等关联。这些元素能够构建为图的形式。在这个图上使用 GraphRAG 有助于学术探索,包括为作者预测潜在的合作者、识别特定领域内的趋势等等。

7.2.4. 文学

类似于学术研究,在文学领域能够构建知识图谱,其节点代表书籍、作者、出版商和系列,边则标注为“由……撰写”“在……出版”“图书系列”等。GraphRAG 可用于增强智能图书馆等实际应用。

7.2.5. 法律

在法律情境中,案例与司法意见之间存在着广泛的引用关联,因为法官在做出新决策时常常参考以往的意见。这自然形成了一个结构化的图,其中节点代表意见、意见集群、案件记录和法院,边涵盖了诸如“意见引用”“意见集群”“集群案件记录”“案件记录法院”等关系。GraphRAG 在法律场景中的应用能够助力律师和法律研究人员完成各类任务,比如案例分析和法律咨询。

7.2.6. 其他

除上述应用之外,GraphRAG 还应用于其他实际场景,如情报报告生成和专利短语相似性检测。首先构建事件情节图(Event Plot Graph,EPG)并检索事件的关键方面,以辅助生成情报报告。创建专利短语图并检索给定专利短语的自我网络,以协助判断短语相似性。

7.3. 基准和指标

7.3.1. 基准

用于评估 GraphRAG 系统性能的基准可分为两类。

7.3.2. 指标

GraphRAG 的评估指标大致可分为两种主要类型:下游任务评估(生成质量)和检索质量。

7.3.2.1 下游任务评估(生成质量)

在大多数研究中,下游任务评估指标是评估 GraphRAG 性能的主要方式。例如,在 KBQA 中,精确匹配(EM)和 F1 分数通常用于衡量回答实体的准确性。此外,也有使用 BERT4Score 和 GPT4Score 来减少 LLM 生成与真实答案同义但不完全匹配的实体的情况。

在 CSQA 中,准确性是最常用的评估指标。对于诸如 QA 系统之类的生成任务,通常使用 BLEU、ROUGE-L、METEOR 等指标来评估模型生成文本的质量。

7.3.2.2 检索质量评估

在基于下游任务性能来评估 GraphRAG 可行的情况下,直接衡量检索内容的准确性颇具挑战。所以,许多研究运用特定的指标去衡量检索内容的精准度。比如,当有真实实体可用时,检索系统需要在检索信息的数量和答案覆盖范围之间找到平衡。因此,一些研究借助答案覆盖范围与检索子图大小之间的比率来评估检索系统的性能。此外,还有些研究探索了像查询相关性、多样性和保真度得分之类的指标,分别用以评估检索内容与查询的相似性、检索内容的多样性以及检索信息的保真度。

7.4. 工业中的 GraphRAG

8. 未来展望






欢迎光临 链载Ai (https://www.lianzai.com/) Powered by Discuz! X3.5