纠错检索增广生成论文

一、摘要

动机:RAG严重依赖于检索文档的相关性,如果检索出错,那么LLM的输出结果也会出现问题

解决方案:提出纠正性检索增强生成(CRAG)即设计一个轻量级的检索评估器,用来评估针对某个查询检索到的文档的整体质量,并返回一个置信度,基于此可以触发不同的知识检索操作。

由于从静态且有限的语料库中检索只能返回次优文档,因此我们利用大规模网络搜索作为扩展手段,以增强检索结果

还设计了一种分解-重组算法,用于对检索到的文档进行选择性聚焦,提取关键信息并过滤掉无关信息。

二、相关工作

1.LLM

因为内部信息过时、有可能错误等会导致输出幻觉

2.RAG

如果检索出错会怎样? 因为引入检索的目的是确保生成式语言模型能够获取相关且准确的知识。如果检索到的文档不相关,检索系统甚至可能加剧语言模型产生的事实性错误。

3.高级RAG

Self-RAG(Asai等,2024)被提出,它能够选择性检索知识,并引入一个评判模型来决定是否进行检索。

Yoran等(2024)设计了一个自然语言推理(NLI)模型,用于识别无关上下文并提高鲁棒性。

SAIL(Luo等,2023)通过指令调优,在指令前插入检索到的文档。Toolformer(Schick等,2023)则通过预训练来调用诸如维基百科等API

Jiang等(2023)在生成长文本时主动预测未来内容,并决定何时检索以及检索什么内容。

总结:与近期与我们工作最相关的研究(Schick等,2023;Luo等,2023;Asai等,2024)相比这些方法的目标是将检索作为一种有用的工具来增强生成,或者判断检索是否必要,而本研究则特别关注检索器返回不准确结果的场景。

三、任务表述

RAG的表述:

X:输入

C={d1.....dN}:包含大量知识文档的语料库

Y:生成的结果

R:检索器

G:生成器

D={dr1....drk}:检索器根据输入检索到前k个相关文档

RAG的两个阶段:

1.检索阶段:P(D∣X):
  • 检索器 R 根据输入 X 计算每个文档 di​ 的相关性得分。
  • 选择前 k 个最相关的文档组成集合 D。
  • P(D∣X) 表示在给定输入 X 的条件下,检索到文档集合 D 的概率

2.生成阶段:P(Y,D∣X):

  • 生成器 G 基于输入 X 和检索到的文档 D 生成结果 Y。
  • P(Y,D∣X) 表示在给定输入 X 的条件下,生成结果 Y 且检索到文档 D 的联合概率。

联合概率(Joint Probability)是概率论中的一个重要概念,用于描述多个事件同时发生的概率。具体来说,联合概率表示两个或多个随机变量在特定条件下同时取某些值的概率。

P(X=x,Y=y)

3. 整体生成概率:P(Y∣X):

  • 整体生成概率 P(Y∣X) 可以表示为检索阶段和生成阶段的联合概率:
  • P(Y∣X)=D∑​P(D∣X)P(Y∣X,D)其中,P(Y∣X,D) 是在给定输入 X 和检索到的文档 D 的条件下生成结果 Y 的概率。

RAG可以表述为:P(Y|X) = P(D|X)P(Y, D|X).

这表明检索器和生成器是紧密耦合的,表现出较低的风险容忍度。任何检索失败都可能导致不理想的响应,即使生成器具备出色的能力。这也正是本文的重点,即提高生成的鲁棒性。

四、CRAG:校正性检索增强生成

1.模型推理概述

给定输入查询和从任意检索器检索到的文档,构建一个轻量级检索评估器来估计检索文档与输入查询的相关性得分(第 4.2 节)。

相关性得分被量化为三种置信度,并触发相应的操作:{正确、错误、模糊}(第 4.3 节)。如果触发“正确”操作,检索到的文档将被细化为更精确的知识片段。这一细化操作包括知识分解、过滤和重组(第 4.4 节)。如果触发“错误”操作,检索到的文档将被丢弃,转而依赖网络搜索作为补充知识源进行校正(第 4.5 节)。最终,当无法自信地做出正确或错误的判断时,会触发一种软性且平衡的“模糊”操作,该操作结合了前两者。

在优化检索结果后,可以采用任意生成模型。如图:

伪代码如下:

2.检索评估器

检索评估器的目标:目标是在检索到的文档不相关时对其进行校正。

具体说:

1.采用 T5-large(Raffel 等,2020)来初始化并微调检索评估器,参数量远小于很多大语言模型。

2.为了确保所有实验结果与 Self-RAG(Asai 等,2024)具有可比性,我们在实验中也采用了 Self-RAG 提供的通过 Contriever(Izacard 等,2022)检索到的相同结果。

3.用于微调评估器的相关性信号可以从现有数据集中收集。例如,PopQA(Mallen 等,2023)

4.微调的负样本均从检索结果中随机采样,这些样本与输入查询非常相似但不相关。

5.对于每个问题,通常会检索到 10 个文档。问题与每个文档连接作为输入,评估器分别预测每个问题-文档对的相关性得分。

6.基于这些计算出的相关性得分,最终判断检索是否正确,并与操作触发相关联。

在我们提出的框架中,检索质量的评估成本相对较低,无需访问大型且昂贵的大型语言模型。与 Self-RAG(Asai 等,2024)中指令调优的 LLaMA-2(7B)的批评模型相比,CRAG 中设计的评估器展现了其轻量化的优势(0.77B)。

3.操作触发

设计了三种类型的操作并相应地触发,其中设置了上下阈值。如果置信度得分高于上阈值,则检索文档被识别为“正确”;如果低于下阈值,则被识别为“错误”。否则,执行一种更软性且中间的操作,即“模糊”。每个检索文档单独处理,最终进行整合。

正确:当至少一个检索文档的置信度得分高于上阈值时,检索被假定为“正确”。说明检索的结果存在相关文档,则检索结果被认为更可靠,但是不能避免存在一些噪声知识片段。为了提纯,则对片段进行细化操作。

错误:置信度得分均低于下阈值时,检索被假定为“错误”。就是检索的所有文档都不相关,则抛弃检索的结果,从其他地方进行搜索。

模糊:检索的准确性难以区分且评估器给出中间得分时。由于检索评估器对其判断缺乏信心,因此将“正确”和“错误”两种处理过的知识结合起来,以相互补充。

仅使用“正确”和“错误”操作的初步实验表明,CRAG 的效果很容易受到检索评估器准确性的影响。原因可能是无论判断的置信度如何,所有输入案例都进行了明显的知识切换。“模糊”操作的设计显著帮助减轻了对检索评估器准确性的依赖。 

4.知识细化

一种“分解-重组”的知识细化方法,以进一步提取其中最关键的知识片段。

该方法的核心思想是将检索到的文档分解为更小的知识片段,然后过滤掉不相关的片段,最后将相关片段重组为内部知识。具体步骤如下:

  1. 分解:将检索到的文档分割为细粒度的知识片段。
  2. 过滤:使用检索评估器计算每个片段的相关性得分,并过滤掉不相关的片段。
  3. 重组:将相关片段按顺序连接,形成最终的内部知识。

5.网络搜素

和我的方向不相关,暂时不研究

五、实验(不全)

1.任务、数据集和指标

数据集:PopQA(Mallen 等,2023)(短文本生成)、Biography(Min 等,2023)(长文本生成)、PubHealth(Zhang 等,2023a)(是非题)、Arc-Challenge(Bhakthavatsalam 等,2021)(选择题)共四个数据集

指标:PopQA、PubHealth 和 Arc-Challenge 采用准确率作为评估指标。Biography 采用 FactScore(Min 等,2023)作为评估指标

2.基准

主要将 CRAG 与有检索和无检索的方法进行了比较,后者可以进一步分为标准 RAG 和最新的高级 RAG

六、未来挑战

但微调外部检索评估器是不可避免的。如何消除此外部评估器并赋予 LLM 更好的检索评估能力将是我们未来的工作。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/22656.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java NIO与传统IO性能对比分析

Java NIO与传统IO性能对比分析 在Java中,I/O(输入输出)操作是开发中最常见的任务之一。传统的I/O方式基于阻塞模型,而Java NIO(New I/O)引入了非阻塞和基于通道(Channel)和缓冲区&a…

easelog(1)基础C++日志功能实现

EaseLog(1)基础C日志功能实现 Author: Once Day Date: 2025年2月22日 一位热衷于Linux学习和开发的菜鸟,试图谱写一场冒险之旅,也许终点只是一场白日梦… 漫漫长路,有人对你微笑过嘛… 注:本简易日志组件代码实现参考了Google …

Vue面试2

1.跨域问题以及如何解决跨域 跨域问题(Cross-Origin Resource Sharing, CORS)是指在浏览器中,当一个资源试图从一个不同的源请求另一个资源时所遇到的限制。这种限制是浏览器为了保护用户安全而实施的一种同源策略(Same-origin p…

MongoDB应用设计调优

应用范式设计 什么是范式 数据库范式概念是数据库技术的基本理论,几乎是伴随着数据库软件产品的推出而产生的。在传统关系型数据库领域,应用开发中遵循范式是最基本的要求。但随着互联网行业的发展,NoSQL开始变得非常流行,在许多…

Mac安装配置Tomcat 8

一、官网下载 Index of /disthttps://archive.apache.org/dist/ 1、进入界面如下: 2、我们找到Tomcat文件夹并进入 3、找到Tomcat 8并打开 4、找到对应的版本打开 5、打开bin 6、找到“apache-tomcat-8.5.99.tar.gz”并下载 二、配置Tomcat 1、解压已经下载好的…

【论文精读】VLM-AD:通过视觉-语言模型监督实现端到端自动驾驶

论文地址: VLM-AD: End-to-End Autonomous Driving through Vision-Language Model Supervision 摘要 人类驾驶员依赖常识推理来应对复杂多变的真实世界驾驶场景。现有的端到端(E2E)自动驾驶(AD)模型通常被优化以模仿…

百度搜索,能否将DeepSeek变成“内功”?

最近,所有的云平台和主流APP都在努力接入DeepSeek。其中,搜索类APP与搜索引擎更是“战况激烈”。那么问题来了,接入DeepSeek已经变成了标准配置,到底应该如何做出差异化?接入DeepSeek这件事能不能实现11大于2的效果&am…

Flask实现高效日志记录模块

目录 一. 简介: 1. 为什么需要请求日志 二. 日志模块组成 1. 对应日志表创建(包含日志记录的关键字段) 2. 编写日志记录静态方法 3. 在Flask中捕获请求日志 4. 捕获异常并记录错误日志 5. 编写日志接口数据展示 6. 写入数据展…

25轻化工程研究生复试面试问题汇总 轻化工程专业知识问题很全! 轻化工程复试全流程攻略 轻化工程考研复试真题汇总

轻化工程复试心里没谱?学姐带你玩转面试准备! 是不是总觉得老师会问些刁钻问题?别焦虑!其实轻化工程复试套路就那些,看完这篇攻略直接掌握复试通关密码!文中有重点面试题可直接背~ 目录 一、这些行为赶紧避…

查看已经安装的Python库,高效管理自己的Python开发环境

在日常的Python开发中,掌握如何管理和查看已经安装的库是非常重要的。这不仅能帮助你了解当前项目的依赖关系,还能避免出现版本冲突等问题。在这篇文章中,我们将详细介绍查看已安装Python库的方法,并提供一些实用的工具和技巧。 …

Selenium实战案例1:论文pdf自动下载

在上一篇文章中,我们介绍了Selenium的基础用法和一些常见技巧。今天,我们将通过中国科学:信息科学网站内当前目录论文下载这一实战案例来进一步展示Selenium的web自动化流程。 目录 中国科学:信息科学当期目录论文下载 1.网页内…

Visual Studio Code 2025 安装与高效配置教程

一、软件简介与下载 1. Visual Studio Code 是什么? Visual Studio Code(简称VS Code)是微软推出的免费开源代码编辑器,支持 智能代码补全、Git集成、插件扩展 等功能,适用于前端开发、Python、Java等多种编程场景。…

工业路由器和工业交换机,打造高效稳定的工业网络?

工业路由器和工业交换机各有千秋,但如何将它们完美结合,构建稳定高效的工业网络?答案就在这里! 工业物联网(IIoT)是高效、稳定的工业网络成为智慧工厂、工业自动化和远程监控等场景的基础支撑。工业路由器…

DeepSeek 助力 Vue 开发:打造丝滑的二维码生成(QR Code)

前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 💕 目录 Deep…

TSMaster【第七篇:千机百变——面板设计艺术】

武侠场景导入:唐门暗器阁的启示 江湖传言,唐门暗器之所以独步天下,全凭其「千机匣」中七十二种机关变化。TSMaster面板设计恰似打造暗器机关——控件如同飞镖、机簧、毒针,组合方式不同则威力迥异。昔日某新势力车型因仪表盘刷新…

提升 AI 服务的稳定性:Higress AI 网关的降级功能介绍

在使用 LLM 服务时,服务的稳定性和可用性至关重要。然而,由于网络问题、服务器故障或其他不可控因素,LLM 服务可能会暂时不可用。为了保障用户体验和业务连续性,Higress AI 网关提供了强大的模型降级和令牌降级功能。本文将介绍这…

提升C++项目编译速度

目录 一、问题背景 二、代码规范方面的解决方案 2.1 拆分头文件 2.2 拆分巨型类 2.3 使用前置声明 2.4 避免在头文件中包含实现 2.5 避免头文件重复包含 2.6 将常用且变动较少的独立到一个文件 三、代码业务重构方面经验 3.1 使用PIMPL(Pointer to Imple…

【学术投稿-第四届材料工程与应用力学国际学术会议(ICMEAAE 2025】材料工程与应用力学的探讨

重要信息 官网:www.icmeaae.com 时间:2025年3月7-9日 地点:中国西安 简介 第四届材料工程与应用力学(ICMEAAE 2025)将于2025年3月7日至9日在中国西安召开。本次会议将重点讨论材料科学、应用力学等领域的最新研究进…

抓包工具(三)Wireshark代理抓包Java程序的HTTPS请求

目录 一、需求背景二、操作步骤2.1 jSSLKeyLog 工具下载2.2 jSSLKeyLog工具使用2.3 将sslkeylog导入Wireshark2.4 测试Demo2.5 测试结果1)使用工具解密HTTPS前:2)实用工具解密HTTPS后: 三、补充:如果出现未解密成功的情…

[VSCode]彻底卸载和重装,并搭建Java开发环境

VSCode彻底卸载 由于当初是朋友帮忙装的,所以准备卸载,自己装一遍 从控制面板找到 vscode 将其卸载。 此时仅仅是删除了应用软件 删除安装插件 在图示路径中找到 .vscode 文件夹,将其删除,即可彻底清除安装的插件 C:\Users\user\.vscode …