Review of Graph Retrieval-Augmented Generation Research
In recent years, Retrieval-Augmented Generation (RAG) has achieved remarkable success in enhancing the performance of large language models (LLMs) by integrating external knowledge bases. By referencing external knowledge bases, RAG can refine the outputs of LLMs, effectively addressing issues such as hallucinations, lack of domain-specific knowledge, and outdated information. However, the complex relational structures among different entities in the databases pose challenges. In response, GraphRAG utilizes the structured information between entities to achieve more precise and comprehensive retrieval, capturing relational knowledge and facilitating more accurate context-related generation. This paper outlines the related technologies and technical principles of GraphRAG, examines its downstream tasks, application domains, and evaluation criteria, and finally explores future research directions for GraphRAG, offering insights into the future trends of technological development.
GraphRAG
大语言模型(LLM)如GPT-4
尽管LLMs在语言理解和文本生成方面表现出色,但由于缺乏特定领域的知识、实时更新的信息和专有知识(这些都不在LLMs的预训练语料库中),它们可能会表现出局限性。这些差距可能导致一种被称为“幻觉”的现象,即模型生成不准确甚至虚构的信息
检索增强生成(RAG)因此出现,旨在通过在生成过程中集成检索组件来增强生成内容的质量和相关性
尽管RAG已经取得了令人印象深刻的结果并在各种领域得到广泛应用,但它在现实场景中面临一些限制:(1) 忽视关系:在实践中,文本内容并非孤立存在,而是相互关联的。传统的RAG无法捕捉到仅通过语义相似性无法表示的重要结构化关系知识。例如,在论文通过引用关系相互链接的引用网络中,传统的RAG方法专注于基于查询找到相关论文,但忽视了论文之间重要的引用关系。(2) 冗余信息:RAG在以文本片段形式串联作为提示时经常重复内容。这使得上下文变得过长,导致“迷失在中间”
图检索增强生成(GraphRAG)
检索增强生成(Retrieval Augmented Generation, RAG)是一种连接外部数据源以增强大语言模型输出质量的技术。这种技术帮助LLM访问私有数据或特定领域的数据,并解决幻觉问题。经典的RAG包括三个步骤:(1) 索引:将文档语料库拆分为较短的块,并通过编码器构建向量索引。(2) 检索:根据相似度,在问题和组块之间,检索相关文档片段。(3) 生成:在已检索到的上下文的基础上生成问题的答案。
从广义上讲,GraphRAG可被视为RAG的一个分支。从图数据库中检索相关关系知识,而非文本语料库。与基于文本的RAG相比,GraphRAG考虑了文本之间的关系,并将结构信息作为文本的附加知识纳入,着重基于结构化图数据的索引、检索和利用,这与纯粹处理文本信息存在实质差异。
凭借出色的文本理解、推理和生成能力,大语言模型正在革新自然语言处理领域。尽管大语言模型主要设计用于处理纯文本,难以处理包含复杂结构信息的非欧几里得数据
KBQA是自然语言处理中的一项重要任务,旨在根据外部知识库回答用户查询,从而实现事实验证和文本理解等目标
本节将介绍GraphRAG的一些背景知识,以便更好地理解本综述。首先,本节介绍了GraphRAG中使用的文本属性图(TAGs),然后对GraphRAG的检索和生成阶段可以使用的两种模型类型:图神经网络和语言模型进行了正式定义。
GraphRAG中使用的图数据可以统一表示为文本属性图(TAG),其中节点和边都具有文本属性。典型的TAG类型之一是知识图(KG),其中节点是实体,边是实体之间的关系,而文本属性则是实体和关系的名称。
图神经网络(GNN)是一种深度学习框架,用于对图数据建模。经典GNN如GCN
(1)
其中N(i)表示节点i的邻居,MSG表示计算基于节点、邻居节点和它们之间边的消息的函数,AGG指的是使用可交换函数(如均值、求和或最大值)组合接收的消息的聚合函数,UPD表示使用聚合消息更新每个节点属性的函数。
随后,可以应用一个readout函数来获得全局级别的表示
(2)
在GraphRAG中,GNN可用于获取图数据在检索阶段的表示,以及对检索到的图结构进行建模。
语言模型(LM)擅长语言理解,主要分为两类:判别式和生成式。判别式模型如BERT
早期,RAG和GraphRAG侧重于改进判别式语言模型的预训练技术。最近,ChatGPT
GraphRAG是一种框架,通过利用外部结构化知识图增强LLM的上下文理解能力,从而生成更明智的响应,如
GraphRAG的目标是从数据库中检索最相关的知识,从而增强下游任务的回答质量。该过程可形式化定义为:
(3)
其中 是对TAG给定 时查询 的最优回答,A是潜在响应集合。之后,我们使用图检索器 和回答生成器 (其中 、 是可学习参数)联合建模目标分布 ,并利用全概率公式对 进行分解,公式可形式化为:
(4)
其中 是最优子图。由于候选子图数量随图的大小呈指数级增长,因此需要启发式搜索算法来有效探索和检索相关子图。第一行的近似由第二行给出。具体而言,采用图检索器提取最优子图 ,然后生成器基于检索到的子图生成答复。
因此,在本文中,我们将GraphRAG的整个过程分解为三个主要阶段:基于图的索引、基于图的检索和基于图的生成。
基于图的索引(G-Indexing)是GraphRAG的初始阶段,旨在识别或构建一个与下游任务相符的图数据库g,并在其上建立索引。图数据库可源自公开知识图
基于图的检索(G-Retrieval)紧随基于图的索引,着眼于根据用户查询或输入从图数据库中提取相关信息。具体而言,给定自然语言表达的用户查询q,检索阶段旨在从知识图中提取最相关的元素(如实体、三元组、路径、子图),可形式化为:
(4)
其中 是最优检索的图元素,Sim()是一个测量用户查询与图数据之间语义相似性的函数。R()表示一个缩小子图搜索范围的函数,考虑到效率因素。
图增强生成(G-Generation)涉及基于检索到的图数据综合有意义的输出或响应,包括回答用户查询、生成报告等。在此阶段,生成器以查询、检索到的图元素和可选的提示作为输入来生成响应,可表示为:
(5)
其中F()是一个将图数据转换为生成器可处理的形式的函数。
GraphRAG在电子商务、生物医学、学术、文学、法律等领域得到了广泛应用,这归因于它能够将结构化知识图与自然语言处理优势相结合的卓越能力。
在电子商务领域,主要目标是通过个性化推荐和智能客户服务来提升客户购物体验和增加销售。在这一领域中,用户与产品之间的历史交互自然形成了一个图,隐含了用户行为模式和偏好信息。然而,由于电子商务平台数量不断增加,用户交互数据量也在不断增长,利用GraphRAG技术从中提取关键子图至关重要。Wang等人
最近,GraphRAG技术越来越多地应用于生物医学问答系统,实现了先进的医疗决策性能。在这一领域,每种疾病都与特定症状相关,每种药物都包含某些活性成分来针对和治疗特定疾病。一些研究人员为特定任务场景构建了KG
在学术研究领域,每篇论文都由一个或多个研究人员撰写,并且属于某一研究领域。作者隶属于机构,作者之间存在合作或共同机构隶属关系。这些要素可以构建成图格式。利用GraphRAG在此图上,可以促进学术探索,包括为某位作者预测潜在合作者、识别特定领域趋势等。
在法律环境中,案例和法律意见之间存在大量引用关联,因为法官在作出新裁决时经常会参考以前的意见。这自然形成了一个结构化图,其中节点表示意见、意见簇、诉讼和法院,边包括“意见引用”、“意见簇”、“簇–诉讼”和“诉讼–法院”等关系。GraphRAG在法律领域的应用可以帮助律师和法律研究人员进行案例分析和法律咨询等工作。
除上述应用外,GraphRAG还应用于其他现实场景,如情报报告生成和专利短语相似性检测。Ranade和Joshi
GraphRAG被广泛应用于各种下游任务(尤其是NLP任务),包括问答、信息提取等。详情如下。
问答任务具体包括基于知识库的问答(KBQA)和常识问答(CSQA)。
(1) KBQA:KBQA是GraphRAG的基础下游任务之一。在KBQA中,问题通常与特定知识图相关,答案往往涉及知识图中的实体、关系或实体集合之间的操作。该任务考查系统在结构化知识库上进行检索和推理的能力,这对于促进复杂查询响应至关重要。
(2) CSQA:不同于KBQA,CSQA主要采用多项选择问题的形式。常识推理通常提供一个常识问题及几个答案选项,每个选项可能代表实体名称或陈述。机器需要利用外部常识知识图(如ConceptNet)来查找与问题和选项相关的知识,并进行适当的推理从而得出正确答案。
信息检索任务包括实体链接(EL)和关系提取(RE)两大类。
(1) 实体链接:实体链接是自然语言处理领域的一项关键任务,旨在识别文本段落中提及的实体,并将其链接到知识图中对应的实体。通过利用GraphRAG系统从知识图中检索相关信息,可以有助于准确推断出与文本中的实体提及相匹配的特定实体
(2) 关系提取:关系提取旨在识别和分类文本中实体之间的语义关系。GraphRAG可以显著增强这一任务,通过利用基于图的结构来编码和利用实体之间的相互依赖关系,从而更精确、更合乎上下文地从不同文本源提取关系数据
除上述下游任务外,GraphRAG还可应用于自然语言处理领域的各种其他任务,如事实验证、链接预测、对话系统和推荐系统。
(1)事实验证:事实验证任务通常涉及使用知识图评估事实陈述的真实性。模型需要利用结构化知识存储库确定给定事实断言的有效性。GraphRAG技术可用于从实体之间提取证据连接,从而提高系统的效率和准确性
(2) 链接预测:链接预测是预测图中实体之间缺失关系或潜在连接的任务。GraphRAG被应用于这一任务
(3) 对话系统:对话系统旨在使用自然语言与人进行对话,处理回答问题、提供信息或促进用户交互等任务。通过以基于图的框架构造对话历史和上下文关系,GraphRAG系统
(4) 推荐系统:在电子商务平台中,用户与产品之间的购买关系自然形成了一个网络图。这些平台上的推荐系统的主要目标是预测用户的未来购买意向,有效预测图中潜在的连接
评估GraphRAG系统性能的基准测试通常涵盖多个任务领域,以提供全面的测试结果。例如,STARK基准测试了在半结构化知识库上LLM检索的能力,涵盖了产品搜索、学术论文搜索和精准医学查询等三个领域,以评估当前GraphRAG系统的能力。He等人
GraphRAG的评估指标可广泍分为两大类:下游任务评估(生成质量)和检索质量评估。
下游任务评估(生成质量):在大多数研究中,下游任务评估指标是评估GraphRAG性能的主要方法。例如,在KBQA中,通常使用精确匹配(EM)和F1分数来衡量回答实体的准确性。此外,许多研究人员利用BERT4Score和GPT4Score来缓解LLM生成与地面真值同义但不完全匹配的情况。在CSQA中,准确率是最常用的评估指标。对于诸如QA系统等生成式任务,通常采用BLEU、ROUGE-L、METEOR等指标来评估模型生成文本的质量。
检索质量评估:尽管可以基于下游任务性能评估GraphRAG,但直接衡量检索内容的精度却具有一定挑战性。因此,许多研究采用特定指标来评估检索内容的准确性。例如,当地面真值实体可用时,检索系统需要在检索信息量和答案覆盖率之间保持平衡。因此,一些研究利用答案覆盖率与检索子图大小之比来评估检索系统的性能。另外,一些研究探索了查询相关性、多样性和忠实度评分等指标,分别评估检索内容与查询的相似性、检索内容的多样性以及检索信息的忠实度。
尽管GraphRAG技术已取得长足进步,但它仍面临着需要全面探索的挑战。本节将探讨该领域的普遍障碍,并概述GraphRAG未来研究的可能方向。
大多数GraphRAG方法都建立在静态数据库之上;然而,随着时间推移,新的实体和关系无疑会不断出现。快速更新这些变化是既有前景又具有挑战性的。纳入最新信息对于实现更好的结果并应对需要当前数据的新兴趋势至关重要。开发高效的动态更新和实时集成新数据的方法将极大提高GraphRAG系统的效率和相关性。
大多数知识图主要包含文本信息,缺乏图像、音频和视频等其他模态的融入,而这些模态有潜力显著提升数据库的整体质量和丰富度。纳入这些多样化模态可以为存储的知识提供更全面、细致入微的理解。然而,整合此类多模态数据却是一项艰巨挑战。随着信息量的增加,图的复杂性和规模会呈指数级增长,使其变得越来越难以管理和维护。这种规模的膨胀需要开发先进的方法和复杂的工具,以高效处理和无缝集成不同类型的数据到现有图结构中,确保知识图的精确性和可及性。
在工业环境中,知识图可能包含数百万甚至数十亿个实体,规模浩大且错综复杂。然而,大多数当前方法都是为小规模知识图(通常只包含数千个实体)量身定制的。在大规模知识图中高效有效地检索相关实体仍然是一个实际且重大的挑战。开发先进的检索算法和可扩展的基础设施对于解决这一问题至关重要,以确保系统能够处理庞大的数据量,同时在实体检索方面保持高性能和精度。
最近,能够有效解决广泛图任务的图基础模型取得了显著成功。将这些模型部署到当前GraphRAG中以增强其性能,是一个重要方向。图基础模型的输入数据本质上具有图结构,使它们能够比LLM模型更有效地处理此类数据。将这些先进模型集成到GraphRAG框架中,可极大提升系统处理和利用结构化图信息的能力,从而增强其整体性能和能力。
目前,GraphRAG的应用主要集中在客户服务系统、推荐系统和KBQA等常见任务。将GraphRAG扩展到更广泛的应用领域(如医疗保健、金融服务、法律合规、智能城市和物联网等)涉及整合更复杂的技术。例如,在医疗保健领域,GraphRAG可以通过整合医学文献、病历和实时健康数据,支持医疗诊断、病历分析和个性化治疗方案。在金融服务领域,GraphRAG可用于欺诈检测、风险评估和个性化财务建议,方法是分析交易数据、市场趋势和客户资料。在法律合规领域,通过整合法律文件、判例法和监管更新,GraphRAG可以支持全面的法律研究、合同分析和合规性监控。将GraphRAG扩展到这些多样且复杂的领域将提高其实用性和影响力,为各个行业提供更复杂、更精准的解决方案。
本文综述了图检索增强生成(GraphRAG)技术的研究进展,探讨了其在增强大语言模型(LLMs)性能方面的应用。GraphRAG通过整合外部知识库中的结构化信息,解决了传统检索增强生成(RAG)在处理复杂关系、冗余信息和全局信息不足等问题上的局限性。GraphRAG的核心在于利用图数据库中的节点、边、路径或子图等结构化信息,增强LLM的上下文理解能力,从而生成更准确、更相关的响应。
尽管GraphRAG技术已经取得了显著进展,但仍面临一些挑战和未来研究方向:
(1) 动态自适应图:当前的GraphRAG方法大多基于静态图数据库,而现实世界中的知识是动态变化的。未来的研究需要开发高效的动态更新机制,实时集成新数据,以保持系统的时效性和相关性。
(2) 多模态信息融合:现有的知识图谱主要包含文本信息,缺乏图像、音频和视频等多模态数据的融合。未来的研究可以探索如何将多模态数据整合到图结构中,以提供更全面、细致的知识表示。
(3) 可扩展的高效检索机制:随着知识图谱规模的增大,如何在大规模图数据中高效检索相关信息成为一个重要挑战。未来的研究需要开发更先进的检索算法和可扩展的基础设施,以应对大规模图数据的处理需求。
(4) 与图基础模型相结合:图基础模型在处理图数据方面表现出色,未来的研究可以探索如何将这些模型与GraphRAG框架结合,进一步提升系统的性能和能力。
(5) 更广泛的应用:目前GraphRAG的应用主要集中在客户服务、推荐系统和KBQA等领域。未来的研究可以将其扩展到医疗保健、金融服务、法律合规、智能城市和物联网等更复杂的领域,提供更精准的解决方案。
总之,GraphRAG作为一种新兴的技术框架,具有广阔的应用前景和研究潜力。随着技术的不断进步,GraphRAG有望在更多领域发挥重要作用,推动人工智能技术的进一步发展。