RAG 讨论与研究 (6)- RAG 关键步骤(终)

今天我们来认识 RAG 中的最后两个关键步骤:

• 用户意图理解

• 知识源与解析

• 知识嵌入

• 知识索引

• 知识检索

• 知识整合

• 回答生成

• 知识引用

7 答案生成

在 RAG 系统中,生成组件是生成既准确又上下文相关的回答的核心。

然而,在 RAG 模型中实现高质量输出需要克服两大挑战:处理噪声检索以及实现对多样化信息的有效推理。

7.1 去噪

去噪在 RAG 模型中至关重要,目的是减少从大型知识库中检索到的无关、矛盾或误导性信息的影响。检索中的噪声会严重影响生成输出的事实准确性和连贯性,因此去噪机制在 RAG 管道中不可或缺。

显式去噪技术

一种有效的去噪方法是通过显式监督。InstructRAG引入了 理性生成,模型被指示生成中间理性,以澄清每个检索文档的相关性。这些理性通过引导模型专注于更准确和上下文相关的内容,有效地过滤了噪声。REFEED 框架利用大语言模型根据检索数据重新评估响应的准确性,迭代地丢弃不太相关的信息,从而优化初始答案。

基于判别器的去噪

COMBO 框架使用预训练的判别器将生成的段落与检索到的段落配对,在最终生成阶段之前评估每对的连贯性和相关性。这种基于判别器的方法确保识别并过滤无关或矛盾的信息,从而最小化幻觉的风险。

自反思和自适应去噪

Self-RAG引入了一种自反思机制,模型通过评估其响应的连贯性和事实性来批评和修订自己的输出。这种方法提供了一种动态处理噪声的方式,因为模型可以通过自我评估迭代地过滤不可信或无关的信息。此外,自适应检索策略允许模型根据任务特定标准检索文档,动态调整检索范围和过滤强度,以优化相关性和质量。

上下文过滤和置信度评分

模型可以根据检索信息与查询的一致性为其分配分数,在整合之前过滤掉低置信度的检索。这种方法利用置信度阈值系统地排除噪声文档,特别适用于相关性差异显著的开放域问答任务。

7.2 推理

除了去噪,推理对于需要跨多个文档综合信息的任务至关重要。有效的推理使模型能够将检索到的信息情境化,建立逻辑连贯性,并生成准确反映复杂关系的响应。

结构化知识和基于图的推理

一种高级推理方法涉及整合结构化知识源(如知识图谱)以辅助复杂的关系推理。Think-on-Graph 2.0 引入了一个框架,将知识图谱与非结构化文本相结合,使模型能够推理实体之间的结构化关系。通过利用图结构,模型获得了更深层次的上下文理解,提高了回答涉及复杂关系的查询的能力。

跨注意力用于多文档推理

为了促进跨多个文档的推理,RETRO 模型采用了分块跨注意力,使生成模型能够关注检索到的文本块中的相关信息。这种跨注意力机制有助于保持上下文连贯性,特别是在信息跨越多个文档的开放域设置中。跨注意力也在增强的 kNN 方法中得到了探索,其中 kNN 注意力层允许模型在生成过程中利用邻域信息,从而实现上下文相关内容的无缝整合。

记忆增强推理

记忆增强推理,如 EAE 和 TOME 等模型中所示,整合了特定实体的记忆模块。这些模型存储并动态检索与实体相关的信息,使生成模型能够随着时间的推移保持一致性和连贯性。记忆模块在需要纵向一致性或多步推理的任务中特别有益,因为它们允许模型在对话或文档的不同部分中回忆特定实体的细节。

检索校准和选择性推理推理的另一个关键进展是检索校准,模型被训练为根据上下文相关性优先处理某些检索信息。校准技术帮助模型识别最关键的信息,在推理之前过滤掉不太相关的检索。

分层和多轮推理对于需要多步推理的复杂查询,分层或多轮推理模型允许模型迭代处理检索到的信息,每轮都优化其理解。多轮推理特别适用于涉及因果或时间依赖性的任务,因为它使模型能够根据新信息“重新审视”先前的知识,形成分层的理解,从而提高响应的准确性和连贯性。

8 知识引用

在 RAG 中,引用对于确保模型响应的透明度、可信度和事实基础至关重要。通过将生成的内容归因于可验证的来源,用户可以轻松验证信息,减少声明验证的负担,并改进评估过程。此外,有效的引用有助于减少幻觉,增强模型输出的事实完整性。

8.1 引用生成策略

在语言模型中生成引用有两种主要策略:同步引用生成 和 生成后引用检索。

  • 同步生成被 WebGPT、GopherCite 和 RECLAIM 等模型使用,它们在响应生成过程中实时检索信息。这种方法确保答案和引用紧密对齐,减少幻觉并提高事实准确性。

  • 生成后引用被 RARR和 LaMDA等模型使用,它先生成答案,然后再检索引用。虽然这种方法降低了计算复杂性,但由于答案的生成独立于引用,增加了响应与引用来源之间不一致的风险。

两种方法各有优势:同步生成提供了更强的事实基础,而生成后引用则在响应生成中提供了更大的灵活性。

8.2 引用粒度的进展

引用粒度——即引用中提供的细节水平——在最近的模型中有了显著提升。早期的模型如 LaMDA 使用粗粒度引用,通常引用整个文档或 URL,虽然有助于事实基础,但需要用户筛选无关信息。最近的模型,如 WebGPT、WebBrain和 GopherCite,已经向细粒度引用发展。

这些模型检索特定的证据片段,或专注于理解长文档以支持个别声明。RECLAIM 模型代表了最高水平的引用粒度,将个别声明链接到源材料中的确切句子。

RAG去噪真难搞

RAG这俩步骤确实关键,去噪和推理搞不好整个系统就废了。引用那块现在细粒度是趋势,能精确到句子最好。

感觉后面这两个步骤还挺关键的

感觉这些步骤挺重要的

RAG这俩步骤还挺关键的

感觉这些步骤好复杂啊

确实需要更精细的引用