大型语言模型(LLMs)彻底改变了自然语言处理(NLP),特别是通过检索增强生成(RAG),它通过整合外部知识增强了LLM的能力。然而,传统的RAG系统存在关键限制,包括由于文本分块导致的上下文完整性中断,以及过度依赖语义相似性进行检索。为了解决这些问题,我们提出了 CausalRAG ,这是一种将因果图整合到检索过程中的新框架。通过构建和追踪因果关系, CausalRAG 保留了上下文连续性并提高了检索精度,从而生成更准确且可解释的响应。我们将 CausalRAG 与普通RAG和基于图的RAG方法进行了比较,展示了其在多个指标上的优越性。我们的研究结果表明,基于因果推理的检索为知识密集型任务提供了一种有前途的方法。
大型语言模型(LLMs)的快速发展彻底改变了自然语言处理(NLP)领域,使各种应用成为可能 。然而,它们对预训练知识的依赖限制了它们整合和推理动态更新的外部信息的能力,特别是在学术研究等知识密集型领域。检索增强生成(RAG)作为一种解决此限制的有前景框架已崭露头角 ,通过结合检索机制与生成能力来增强上下文理解和响应质量。
近期的研究主要集中在两个方向上改进RAG:1)通过设计更适应性和动态的检索框架来提高检索效率和集成机制 ; 2)通过改进外部知识表示来促进检索和推理,其中基于图的RAG占据主导地位 。尽管取得了这些进展,现有的RAG架构仍面临影响检索质量和响应准确性的重要限制,主要原因包括三个关键问题:1)文本分块设计导致的上下文完整性中断;2)依赖语义相似性而非因果相关性进行检索;3)选择真正相关文档的准确性不足。
通过理论分析和实证评估相结合,我们重新审视当前RAG系统的局限性,并引入基于上下文召回和精确度指标的新视角。我们的研究发现,无论是普通的还是基于图的RAG,都不仅难以检索到真正有依据的上下文,而且难以准确区分检索内容与用户查询之间的关系。我们确定这一根本问题是为什么LLMs在RAG框架中往往生成 看似相关但浅显且缺乏必要细节的响应 的主要原因之一。
为了解决这些差距,我们引入了 CausalRAG ,这是一种将因果图整合到RAG中的新型框架,以提高检索准确性和推理性能。与普通的和基于图的RAG不同, CausalRAG 从上传的文档中构建因果图,同时保留上下文关系并捕捉因果依赖关系。通过确保检索到的文档既相关又具有因果依据, CausalRAG 能够生成更具上下文丰富性和因果细节的响应 。这种方法不仅提高了检索效果,还减轻了幻觉现象并增强了答案的真实性。
我们在来自不同领域的数据集上评估了 CausalRAG ,并将其性能与普通的RAG和GraphRAG(一种微软提出的基于图的RAG框架)进行了比较 。我们的实验根据三个关键指标评估性能:答案真实性、上下文召回率和上下文精确度。结果表明, CausalRAG 在不同情境下均表现出优异性能。此外,我们还进行了案例研究和参数分析,进一步考察我们的框架,并提供了有助于RAG持续研究的分析和见解。本工作的贡献主要有以下三点:
- 我们通过分析和实验系统地识别了RAG检索过程的固有限制。更重要的是,我们揭示了为什么RAG中的LLMs倾向于生成缺乏用户期望的具体细节的表面化、泛化的答案。
- 我们提出了 CausalRAG ,这是一个通过将因果性纳入RAG来提升检索和生成质量的框架,有效解决了这些限制。
- 我们的工作进一步减轻了幻觉问题,并显著提高了AI系统的可解释性。我们总结了检索和生成过程中的关键发现和见解,为RAG研究做出了贡献。
2 相关工作
2.1 检索增强生成
RAG通过整合外部知识检索增强了LLMs处理知识密集型任务的能力 。现有研究主要从两个关键维度推进RAG的发展:1)改进检索效率和集成机制;2)增强外部知识表示以促进推理和可解释性。
优化检索流程和交互。 第一个方向集中于改进RAG系统内的交互流程以提高输出质量。一些方法通过引入检索前、检索中和检索后的改进来减少冗余和计算开销 。模块化RAG架构进一步推进了这一点,通过实现迭代检索-生成循环,允许检索与内容创建之间的动态交互。例如,CAiRE-COVID 展示了多文档摘要中迭代检索的有效性,而某些工作 将这种方法扩展到多步问答。最近的创新包括METRAG , 它通过LLM监督生成实用驱动的检索过程,以及RAFT , 它通过链式推理训练模型忽略干扰文档并提高引用准确性。
结构化外部知识以提高效率。 第二个方向探索改进外部知识结构化的方法以实现更好的检索效率。例如,GraphRAG edge_local_2024? , 由微软提出,将外部知识视为相互连接的节点,捕捉因果和主题关系以增强检索深度和推理能力。LightRAG引入了两级检索机制以支持增量知识更新。 最近,Lazy GraphRAG作为GraphRAG的连续版本被开发出来,将计算昂贵的操作推迟到查询时间,并利用轻量级索引技术提高效率 。 尽管取得这些进展,确保检索文档的质量和相关性仍然是当前RAG系统中的重要问题,因为它直接影响最终响应的一致性 。
2.2 因果图与RAG
将因果图与RAG结合已成为增强知识检索和推理的一种有前途的方法。由于因果性提供了对数据中依赖关系的结构性理解,因此它使AI输出更加可解释和可靠 。该领域的现有研究主要推动了RAG和LLMs中的因果发现。例如,一些研究提出了一种LLM辅助的广度优先搜索(BFS)方法进行全面因果图发现,显著降低了时间复杂度 。 此外,一些研究进一步引入了相关到因果推断(Corr2Cause)任务来评估LLMs从相关性推断因果关系的能力,揭示了它们在不同数据集上的泛化限制 。
尽管取得了这些进展,大多数研究主要集中于利用RAG或LLMs进行因果发现或因果效应估计,而 将因果图直接整合到RAG架构中仍然相对未被充分探索 。我们的工作旨在成为这一方向的先驱。一些现有研究涉及这一概念但范围不同。一种方法是在LLM架构本身内整合因果图,通过因果性而不是增强RAG检索来结构化变压器的内部令牌处理 。 另一种方法在RAG系统中使用因果图,但主要关注检索前阶段,并将核心过程简化为单一嵌入模型而没有深入探讨 。 GraphRAG是这一领域的知名且有影响力的工作,因为它在RAG系统中引入了基于图的结构,利用图社区检测和摘要技术进行检索 。 虽然它不包含因果性,但它显著提高了RAG性能。因此,我们将GraphRAG作为我们工作的基线。
在接下来的部分中,我们首先从新颖的角度分析普通RAG和基于图的RAG的性质,识别其固有限制。然后,我们引入因果图结构来弥补RAG系统中的这些差距,并介绍我们的框架—— CausalRAG 。
3 为什么普通RAG无法提供准确的响应
在本节中,通过分析和实证调查,我们识别了普通RAG的三个基本限制,并通过基于精确度和召回率的新视角重新思考其设计。
3.1 普通RAG的限制
第一个限制源于RAG常见的做法,即将文本分成最小单元(如图 [fig1:workflow] a所示)。这个过程破坏了原始文本中的自然语言和逻辑连接。这些连接对于保持上下文完整性至关重要,如果丢失了,必须实施替代机制来恢复它们。
第二个限制在于语义搜索过程。RAG通常根据查询相似性从向量数据库中检索语义最接近的文档。然而,在许多情况下,回答查询所需的临界信息并非语义相似而是因果相关。一个经典的例子是尿布和啤酒的关系——虽然它们在语义上无关,但在现实世界中可能存在因果联系。这表明RAG依赖语义相似性可能导致检索出上下文无关但表面上相关的信。
第三个限制是,即使RAG检索到了相关上下文,这也不能保证生成准确的响应。为了形式化这个问题,我们使用了两个关键指标: 上下文召回率 和 上下文精确度 ,定义如下:
召回-精确视角。 上下文召回衡量在给定查询的情况下,能从用户上传的文档中检索到多少正确的上下文信息。尽管RAG主要关注检索相关文档,但通过调整检索参数增加检索文档数量,实际上可以提高召回率。然而,上下文精确度提出了挑战。它衡量在给定用户查询的情况下,检索到的文档中有多少实际上是正确的。正如前面讨论的那样,RAG依赖于语义相似性而非因果相关性,常常导致检索到表面上相似但逻辑上无关的内容。总之,虽然RAG可以从参考材料中回忆出许多答案,但正确答案的比例仍然很低,最终降低了其精确度。这种召回-精确视角为看待普通RAG的限制提供了新的视角。
3.2 再思基于图的RAG
应用这一视角,我们可以更好地理解为什么基于图的RAG是RAG的改进变体。通过在检索前汇总和排名图社区的重要性,它们大大提高了检索上下文的质量,从而提高了上下文精确度。然而,这只是部分解决了已识别的限制,因为其汇总过程并未完全过滤掉无关信息。更重要的是,其依赖于基于社区的汇总进行检索可能会影响召回。基于这些分析见解,我们进一步进行了一项实验研究以验证我们的分析。
实验研究。 如图 [fig1:workflow] (b)所示,我们进行了一项实验研究以经验验证我们的分析。具体来说,我们使用LLM评估了普通RAG和GraphRAG的性能,使用RAG评估框架Ragas 。 它将三个关键元素——用户查询、检索到的上下文和参考——以及预定义的指标定义作为输入,并提示LLM分配数值评分。这种基于LLM的评估在最近的RAG研究中被广泛使用,并已被用于RAG评估 。
结果显示,无论是全局版本还是局部版本的GraphRAG相比普通RAG在上下文精确度方面表现更高。然而,其召回性能仍然不令人满意,甚至略低于普通RAG,这是由于其基于图社区的检索过程。
通过结合我们基于精确度和召回率的分析分析和实证发现,我们清楚地概述了RAG及其基于图的扩展的内在限制。在下一节中,我们将介绍我们提出的框架 CausalRAG ,旨在解决这些问题。
4 方法论
在本节中,我们介绍了我们的新框架—— CausalRAG ,它通过将因果性整合到RAG中克服了现有RAG系统的限制。总体而言, CausalRAG 采用基于图的方法表示上传的文档,增强对文本分块造成的不连续性的鲁棒性(如图 [fig2:causalragoverview] 所示)。更重要的是,通过在图中通过因果关系扩展和追踪节点, CausalRAG 能够在保持因果依据的同时检索到更多样化的上下文信息。这使得 CausalRAG 能够实现高召回率和强精确度。我们现在详细讨论每个步骤。
4.1 索引
一开始,一旦系统接收到用户的上传文档和查询,我们首先将这些输入索引到我们的向量数据库中。对于上传的文档,我们采用基于文本的图构建方法,将文本转换为结构化图后存储节点和边到向量数据库中。具体来说,我们利用LLM按照LangChain的方法构造图 , 其中LLM扫描文本以识别图节点并确定它们之间的关系。尽管基于LLM的图构建表现出强大的性能并且在基于图的RAG研究中被广泛采用 ,我们还通过专家知识验证了所构建的图,这将在案例研究中详细说明。在构建和索引基础图之后,我们将用户查询嵌入到向量数据库中,准备后续搜索和匹配。值得注意的是,这个索引过程独立于查询时间发生,允许在推理期间高效检索。
4.2 发现和估计因果路径
收集相关节点和边后,我们利用LLM识别和估计其中的因果路径,构建精炼的因果图。如前所述,LLMs在辨别和分析因果关系方面表现出效率 ( zhang_causal_2024? ; zhou_causalbench_2024? ) 。这一步确保 CausalRAG 优先考虑因果相关的信息,从而提高精确度。
4.3 因果检索上下文
在构建因果图后,我们总结检索到的信息并生成因果摘要。值得注意的是,这一阶段的输入不仅高度相关,而且在用户的查询中具有因果依据,确保更大的有效性。这种方法与传统的检索方法形成对比,后者通常纯粹依赖语义相似性,可能会检索到上下文相关但因果无关的信息。
因果摘要是通过追溯图中的关键因果路径得出的,优先考虑直接回答查询的节点和关系。这确保检索到的信息保持逻辑连贯性和事实一致性,同时过滤掉虚假或弱相关的上下文。此外,通过利用因果依赖关系,我们的方法减少了检索到语义相似但误导性证据的风险。
一旦生成因果摘要,它将与用户查询结合以构建 CausalRAG 的细化提示。这种结构化的最终输入允许RAG专注于通过因果关系进行推理,而不仅仅是聚合松散相关的文本片段。
5 实验
为了评估 CausalRAG 的有效性,我们进行了一系列实验,将其与普通RAG和GraphRAG基线进行比较。我们的评估涵盖了多个数据集、检索设置和性能指标,确保对检索质量和答案真实性的全面分析。我们系统地探索不同的参数设置和检索策略,以评估它们对模型性能的影响。
5.1 实验设置
5.2 性能比较
图 1 展示了比较结果。总体而言, CausalRAG 在三个评估指标上始终优于所有其他模型,证明了其在生成更符合事实的答案的同时保持高召回率和精确度的能力。
答案真实性。 此指标衡量生成的回答与参考信息的吻合程度,确保事实正确性。如图 1 所示,普通RAG在此指标上的表现相对较佳,表明尽管其仅依赖于纯语义检索,仍能检索到一些相关上下文。然而,通过利用本地结构化图检索,GraphRAG-Local略微优于普通RAG,支持其有依据的答案。自然地,基于高级社区摘要的GraphRAG-Global在该指标上表现较差。最后, CausalRAG 通过检索因果有依据的上下文,减少幻觉,确保回答不仅相关,而且由检索到的证据支持。 CausalRAG 在答案真实性方面保持良好水平。
上下文召回率。 上下文召回率评估在 RAG 过程中检索到多少正确的参考信息。如预期,普通 RAG 展现出高召回率,因其广泛的检索方法倾向于最大化潜在相关内容的包含量。GraphRAG-Local 和 GraphRAG-Global 由于基于社区的摘要而稍微降低了召回率,尽管这改进了检索过程,但牺牲了一些上下文多样性。 CausalRAG 则相比之下在精确度和召回率之间取得了平衡,其召回率仍高于普通 RAG。这是通过确保检索到的信息因果相关来实现的,避免过度检索松散相关但非因果的信息。
上下文精确度。 精确度是 CausalRAG 表现最显著优势的地方。虽然普通 RAG 的精确度相对较低——常常检索到语义相似但上下文无关的内容——GraphRAG-Local 和 GraphRAG-Global 通过利用图结构更有效地组织知识显著改善了这一点。然而,它们在检索因果相关内容方面仍然存在困难,因此在此指标上低于 CausalRAG 。我们可以看到, CausalRAG 通过因果图内在地过滤检索到的信息,从而保持较高的精确度。
在 OpenAlex 数据集上的三个关键指标(答案真实性、上下文召回率和上下文精确度)对 Regular RAG、GraphRAG-Global、GraphRAG-Local 和 CausalRAG 的性能比较。
5.3 案例研究
根据答案真实性、上下文召回率和上下文精确度的平均值,在不同长度文档(摘要、引言、全文)上对四种 RAG 方法的性能比较。
我们还进行了一项案例研究,以评估四个 RAG 变体在一篇长文本研究论文上的表现,分别测试其摘要、引言和全文。这种方法确保内容一致性,同时改变文档长度(从 255 到 16,475 个标记),使我们能够评估 CausalRAG 的可扩展性。
这项案例研究还考察了普通 RAG、GraphRAG 和我们提出的 CausalRAG 之间的检索差异(如图 [fig4:casestudyprocess] 所示)。在这个例子中,用户上传了一篇长论文 并提问:“ 不同的影响策略组合如何影响赢得销售合同的可能性? ”专家验证确认了一个明确的答案——销售人员使用诸如依从性和内化策略等影响策略吸引买家的注意力,这本质上增加了他们获得合同的机会。
分析检索过程时,我们观察到普通 RAG 检索到语义相关的内容,但未能捕捉到关键信息,导致模糊且无信息的回答。GraphRAG 正确检索到相关的节点如注意力,但其社区报告过程通过纳入无关节点稀释了它们的重要性,尽管有事实依据但仍引入了偏差。相比之下, CausalRAG 检索到初始相关的节点并通过识别对回答查询至关重要的因果路径进行扩展,确保了精确且因果依据的回答。
虽然这个例子阐明了 CausalRAG 的内部过程,我们的完整实验结果(图 2 )展示了其可扩展性。 CausalRAG 在不同文档长度上始终优于其他 RAG 变体。此外,普通 RAG 在较短文档上的表现较好,甚至超过了 GraphRAG。然而,随着文档长度增加(如完整的论文),GraphRAG 超过了普通 RAG,与我们的分析分析一致。
5.4 参数研究
参数研究展示了不同参数选择(k 和 s)对模型性能的影响。
5.5 结论与未来工作
我们介绍了 CausalRAG ,这是一个将因果性整合到 RAG 中以提升性能的框架。我们的分析和实证分析确定了普通 RAG 的关键限制——上下文完整性损失、依赖语义相似性而非因果相关性以及低精确度。通过利用因果图, CausalRAG 检索因果有依据的上下文,在多样文本长度和领域中超越了基线 RAG。此外,它提高了 LLM 的可解释性,增强了回答的真实性,并减少了生成响应中的幻觉。未来工作包括在特定领域任务上基准测试 CausalRAG
限制
尽管 CausalRAG 通过整合因果性提高了检索效果,但它也存在某些限制。首先,从非结构化文本构建因果图依赖于基于 LLM 的提取,这可能会增加额外成本,特别是在复杂或模糊的情况下。其次,随着文档变大,扩展和分析因果路径的计算成本也会增加,可能在极端情况下(大量标记)影响检索效率。