当前位置:   article > 正文

Self-RAG:利用大模型增强知识图谱的能力_self-rag技术

self-rag技术

在信息过载的时代,筛选海量数据以提供准确的搜索结果已变得异常艰巨。特别是在面对复杂查询和ChatGPT等前沿技术的高需求时,传统搜索增强技术往往表现不佳。Graph RAG是NebulaGraph提出的一项颠覆性概念,意在该领域进行革命性变革。

“Graph RAG”是NebulaGraph首创的概念,利用知识图谱与大型语言模型(LLMs)相结合,为搜索引擎提供更全面的上下文理解,帮助用户以更低的成本获得更智能、更精准的搜索结果。该技术是该领域的一项突破,可以与大型语言模型(如Llama Index和LangChain)深度集成,是首家提出Graph RAG概念的行业领先者。此外,Graph RAG在向量数据库集成领域也取得了卓越的成果。在本文中,我们将介绍Graph RAG的概念并与其他RAG技术进行比较。

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

在处理复杂或长尾查询时,准确的搜索结果是一个挑战。传统搜索引擎依赖关键词匹配,这通常无法满足用户的实际需求。同时,传统搜索增强技术的瓶颈在于缺乏训练数据和文本理解,使其在生成准确、多样和相关信息方面效果较差。为解决这个问题,RAG应运而生。RAG(检索增强生成)是通过RAG模型增强搜索结果的过程。具体而言,它是一种结合检索和语言生成以增强生成过程的技术。通过使用RAG,传统搜索引擎可以生成更准确和相关的搜索结果。

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

训练数据: RAG技术需要大量的数据和计算资源进行训练和生成模型,特别是在处理多种语言和复杂任务时。

文本理解: RAG需要理解查询的意图,但对于复杂查询或多义查询,RAG可能存在模糊或不确定性,影响生成内容的质量。

因此,找到更强大的检索增强技术,从而获得期望的搜索结果的问题变得更加紧迫。

什么是图检索增强技术(Graph RAG)?

Graph RAG是由NebulaGraph提出的一种基于知识图谱的检索增强技术。它利用知识图谱展示实体和关系之间的关系,然后使用大型语言模型LLM进行检索增强。图数据库天然地适合通过以图形方式连接信息,从而去存储和表达复杂的上下文信息。通过使用图技术构建知识图谱以增强上下文学习,用户可以提供更多上下文信息,帮助大型语言模型更好地理解实体之间的关系,提高它们的表达和推理能力。 Graph RAG将知识图谱等同于大规模词汇表,实体和关系对应于单词。通过这种方式,Graph RAG可以在检索过程中联合建模实体和关系,从而更准确地理解查询意图并提供更准确的搜索结果。

比较:Graph RAG 与 Graph + Vector RAG

以下两张图比较了Vector RAG(向量检索)与Graph+Vector RAG(图增强向量检索)返回的结果,左侧是Vector RAG返回的结果,右侧是Graph+Vector RAG返回的结果:

以“银河护卫队3”数据集(Guardians of the Galaxy 3)为例,当我们搜索“彼得·奎尔相关信息”时,传统的检索技术(如向量检索引擎)只提供有关其身份、情节和演员的简单信息。然而,通过Graph RAG增强的搜索结果,我们可以获取关于主角技能、性格目标和身份变化的更多信息。

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

比较:Graph RAG 与 Text2Cypher

另一种基于知识图谱的LLM的方法是Text2Cypher,一种自然语言的生成图查询。这种方法不依赖实体子图检索,而是将任务或问题转化为以答案为导向的图查询,这本质上与Text2SQL相同Text2Cypher和Graph RAG主要在检索机制上有所不同。Text2Cypher是基于知识图谱的架构和给定的任务从而生成“图模式”查询,而Graph RAG是获取相关子图从而提供上下文的。以下两张图比较了Text2Cypher与Graph RAG返回的结果,左侧是Text2Cypher返回的结果,右侧是Graph RAG返回的结果。

在上图中,明显可以看出这两种图查询模式在可视化上存在明显的差异。使用Graph RAG进行检索呈现更全面的结果。用户不仅获得基础介绍信息,还可以根据联想搜索和上下文推断获得一系列结果,例如“彼得·奎尔是银河护卫队的领导者”,“这个角色意味着他将在续集中回归”,都展示了对人物个性的深入洞察。

NebulaGraph: 意在构建企业特定的知识图谱应用“一步到位”

NebulaGraph数据库已与Llama Index和LangChain等大型语言模型框架无缝集成。因此,开发人员可以专注于LLM编写逻辑和pipeline设计,而无需处理有关抽象或实现的细节,一站式生成高质量、低成本的企业级大型语言模型应用。

Graph RAG的出现为处理和检索大规模信息带来了突破。通过在LLM堆栈内融合知识图谱和图存储,Graph RAG提供了无可替代的上下文学习能力。借助NebulaGraph的帮助,使得构建Graph RAG变得极为简化,只需少量代码便可完成。即使是更复杂的RAG逻辑,如带图的Vector RAG,也可以轻松集成。

Reference

Paper: Self-RAG: Learning to Retrieve, Generate, and Critique through Self-Reflection

Blog: https://medium.com/@nebulagraph/graph-rag-the-new-llm-stack-with-knowledge-graphs-e1e902c504ed

Github:Self-RAG: Learning to Retrieve, Generate and Critique

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/269140
推荐阅读
相关标签
  

闽ICP备14008679号