带自我反思的自适应RAG

這裡是基本傳統的RAG架構。

基本RAG(检索增强生成)的四个主要限制是:

  1. 决定检索:模型可能不总是决定检索是否必要,导致答案不完整。
  2. 文档相关性:检索到的文档可能并不完全满足用户的查询,从而降低答案质量。
  3. 在生成过程中出现的幻觉:生成的回应可能包含与检索到的上下文不相关或不正确的信息。
  4. 答案相关性:最终答案可能无法直接回答用户的问题,影响回复的可靠性。

这强调了确保相关检索和响应准确性所面临的挑战。

要简要了解这个问题,我们有一个路由问题和3个分级问题?现在让我们来看看如何用自我反思的适应性RAG来解决这4个限制。

自反思的自适应RAG是一种动态方法,用于检索增强生成(RAG),模型不仅可以从外部数据源中检索相关信息,还可以对其先前的响应进行反思,以适应和改进其输出。以下是该概念的分解:

  1. RAG概述:在标准的RAG系统中,语言模型通过检索机制来从外部来源(例如文件、数据库)中提取相关数据以回答用户查询。这种混合方法使模型能够基于内部知识和检索信息生成响应。
  2. 自我反思:这个概念涉及模型对其产出进行反思,以识别潜在的弱点,差距或错误的解释。通过“自我评估”其回应的质量,系统可以决定是否检索额外信息或重新表述其回答以获得更清晰或更准确的结果。
  3. 自适应机制:通过自我反思,模型变得自适应,意味着它可以根据初始响应与用户需求的匹配程度来改变检索策略。如果模型确定检索到的信息不完整或与查询不完全对齐,它可以调整检索参数(例如,检索更多文件或探索不同来源)。
  4. 提高准确性:自我反思使系统能够增强响应的相关性和准确性,提供更具情境丰富和精确的答案。实时动态调整的能力创建了更强大和可靠的检索机制。

自适应RAG是一种将(1)查询分析与(2)主动/自校正的RAG结合的策略。

在这篇论文中,他们报告了查询分析来路由查询。

  • 没有检索
  • 单拍 RAG
  • 迭代式RAG

以下是用于了解上述讨论的限制的架构。例如,当用户提出问题时,它实际上进行查询分析以分割搜索,无论是与索引相关还是与索引无关,或者我们定义的任何其他路线。如果问题与索引相关,则会有召回阶段评价器,答案相关性评价器和答案正确性评价器,这些将充当反映,并且在一开始就有一个路由器来决定我们要转到哪个索引。

让我们使用LangGraph来检查这个实现。

在我们的实现中,我们将在以下之间进行路由:

  • 网络搜索:有关最近事件的问题
  • 自我校正的红绿色指示灯:用于与我们的指数相关的问题。

为了完整的代码设置,请参考来自langchain的这篇文章。

实质上,具有自我反思的自适应RAG代表了传统RAG的进化,通过结合反馈循环来完善检索过程和生成的响应,使其具有高度的响应性和准确性。

2024-09-09 04:20:14 AI中文站翻译自原文