图形RAG 使用LLM释放知识图谱的力量

利用LLM释放知识图谱的力量:图形RAG的魅力

在信息过载的时代,处理大量数据以以更生动和易于理解的方式提供准确的搜索结果变得异常困难。传统的搜索增强技术在处理复杂查询和ChatGPT等尖端技术带来的高需求时往往不尽人意。这就是Graph Retrieval-Augmented Generation(RAG)技术的应用场景。

Graph RAG技术基于知识图谱。它将知识图谱与大型语言模型(LLMs)结合起来,为搜索引擎提供更全面的上下文理解能力。它能够帮助用户以更低的代价获得更智能和更精确的搜索结果。

本文将介绍Graph RAG的概念,并与其他RAG技术进行比较。

传统搜索增强技术面临的挑战

获得准确的搜索结果是一项挑战,特别是在处理复杂或长尾查询时,传统搜索引擎依赖关键词匹配,往往不能满足用户的实际需求。传统搜索增强技术的瓶颈在于缺乏训练数据和文本理解能力,这使得其在生成准确、多样且相关的信息方面效果不佳。

RAG技术的出现解决了这个问题。RAG是通过RAG模型增强搜索结果的过程。具体来说,它是一种结合检索和语言生成的技术,用于增强生成过程。通过使用RAG,传统搜索引擎能够生成更准确和相关的搜索结果。

然而,RAG技术在训练数据和文本理解方面仍面临一些挑战。这些挑战包括:

  • 训练数据:RAG技术需要大量的数据和计算资源来训练和生成模型,特别是在处理多种语言和复杂任务时。
  • 文本理解:RAG需要理解查询的意图,但对于复杂查询或多义查询,RAG可能存在歧义或不确定性,这会影响生成内容的质量。

因此,如何找到更强大的检索增强技术,以更高效地获取满足搜索者期望的搜索结果,成为更加紧迫的问题。

什么是Graph RAG?

Graph RAG是由NebulaGraph提出的一种基于知识图谱的检索增强技术。它使用知识图谱展示实体和关系之间的关系,然后使用大型语言模型(LLM)进行检索增强。

图数据库天然适合以图形格式组织和连接信息来存储和表达复杂上下文信息。通过使用图技术构建知识图谱来提升上下文学习,用户可以提供更多上下文信息,帮助大型语言模型(LLM)更好地理解实体之间的关系,提高其表达和推理能力。

Graph RAG将知识图谱视作大规模词汇,实体和关系对应单词。通过这种方式,Graph RAG可以在检索过程中一起建模实体和关系,更准确地理解查询意图,并提供更准确的搜索结果。

演示:Graph RAG vs. Vector RAG vs. Text2Cypher

在接下来的几节中,我们将探索两个演示,以可视化方式比较Graph RAG与Vector RAG和Text2Cypher。

Graph RAG vs. Graph + Vector RAG

下面的图片比较了Vector RAG(向量检索)和Graph + Vector RAG(图增强向量检索)返回的结果。gif版本请点击这里。

  • 左侧的结果:Vector RAG
  • 右侧的结果:Graph + Vector RAG

以“银河护卫队3”数据集为例。当我们搜索“彼得·奎尔的相关信息”时,传统的向量检索引擎只提供了关于他身份、剧情和演员的简单信息。然而,通过Graph RAG增强后的搜索结果,我们可以获得更多关于主角技能、角色目标和身份变化的信息。

这个例子突显了Graph RAG如何有效地弥补了嵌入和向量检索等传统方法的不足,提供了更深入的知识和与查询相关的信息。通过将知识图谱与大型语言模型结合使用,Graph RAG可以理解实体之间的关系,将知识图谱视作大规模词汇,并更好地理解复杂查询的意图,从而获得更准确和相关的搜索结果。

图谱RAG vs. Text2Cypher

另一种有趣的基于知识图谱的LLM方法是Text2Cypher,它是一种自然语言生成图查询。该方法不依赖实体子图检索,而是将任务或问题转化为面向答案的图查询,其本质上与我们通常称为Text2SQL相同。

Text2Cypher和图谱RAG主要在其检索机制上有所不同。Text2Cypher基于知识图谱模式和给定任务生成图模式查询,而(Sub)Graph RAG获取相关子图以提供上下文。两者各有优势,您可以通过以下演示了解更直观地了解它们的特点。

  • 左侧结果:Text2Cypher
  • 右侧结果:图谱RAG

从上述演示中,很明显这两种图查询模式在可视化方面存在明显差异。使用图谱RAG进行检索时,呈现更全面的结果。用户不仅可以获得基础介绍信息,还可以根据关联搜索和上下文推理获得一系列结果,例如“彼得·奎尔是银河护卫队的领导者”,“这个角色意味着他将在续集中回归”,以及有关角色个性的深入了解。

一步构建企业特定的知识图谱应用

图谱RAG的出现为处理和检索海量信息提供了突破。通过将知识图谱和图存储融合到LLM堆栈中,图谱RAG提供了无与伦比的上下文学习水平。构建图谱RAG非常简化,只需要三行代码即可完成。

甚至更复杂的带有图谱的RAG逻辑,如向量RAG,也可以轻松集成。

随着图谱技术和深度学习算法的不断进步,图谱RAG在数据处理和检索中的应用将变得越来越普遍。