RAG前沿技术/解决方案梳理

RAG前沿技术/解决方案梳理

  • Benchmark
  • Retrieval
    • Adaptive-RAG
    • DR-RAG
    • RichRAG
    • GenRT
  • Critique/Reasoning
    • Self-RAG
    • Corrective RAG
    • Speculative RAG
    • PlanRAG
    • Self-Reasoning
    • ReSP
  • Memory
    • Selfmem
    • HippoRAG
  • Query Rewrite
    • RaFe
  • Summary
    • Refiner
  • 个人理解

对当前RAG的学术研究(或者好的业界的总结)进行梳理汇总,欢迎讨论交流,持续更新中……

Benchmark

论文: Benchmarking Large Language Models in Retrieval-Augmented Generation
来源: AAAI 2024
作者单位: 中科院软件所
核心结论:噪音鲁棒性、否定拒答、信息整合能力、反事实鲁棒性四个层面对目前sota大模型+RAG进行评估,认为目前大模型表现出一定程度的噪音鲁棒性,但在否定拒答、信息整合和处理虚假信息方面存在很大困难
在这里插入图片描述


Retrieval

Adaptive-RAG

论文: Adaptive-RAG: Learning to Adapt Retrieval-Augmented Large Language Models through Question Complexity
来源: NAACL 2024
作者单位: 韩国科学技术院
核心结论: 对于query的难度进行分级:训练一个复杂度判别模型(T5-Large),将query区分为不需要检索、一次检索和多次检索(动态路由检索)三类情况

在这里插入图片描述

DR-RAG

论文: DR-RAG: Applying Dynamic Document Relevance to RetrievalAugmented Generation for Question-Answering
来源: arxiv
作者单位: 东北大学、四川大学
核心结论: 将query与第一次检索得到的文档相结合来检索其余文档(应对多跳场景有一定意义)
在这里插入图片描述

RichRAG

论文: RichRAG: Crafting Rich Responses for Multi-faceted Queries in Retrieval-Augmented Generation
来源: arxiv
作者单位: 人大、百川
核心结论: 多方面检索器,对于一个query涉及到的多个方面进行拆解,进行多路召回已获取全面、丰富的召回文档
在这里插入图片描述

GenRT

论文: List-aware Reranking-Truncation Joint Model for Search and Retrieval-augmented Generation
来源: WWW 2024
作者单位: 中科院计算所、人大
核心结论: 采用多任务学习的方法,将rerank和truncation(取排名列表的截止点,Top N)任务联合学习
在这里插入图片描述


Critique/Reasoning

Self-RAG

论文: Self-RAG: Learning to Retrieve, Generate, and Critique through Self-Reflection
来源: arxiv
作者单位: University of Washington,Allen Institute for AI,IBM Research AI
核心结论: 自我反思RAG,通过LM生成检索段落的label,Self-RAG 在包含 reflection tokens 的离线任务示例上训练 LM(Llama2-7B)
在这里插入图片描述
在这里插入图片描述

主要流程:

  • 首先生成一个critique token判断是否需要retrieval(Retrieval)
    • 不需要:直接用LLMs生成输出
    • 需要:生成一个critique token评估检索得到的内容的相关性(IsREL)、输出内容、一个critique token用来判断输出是否得到检索内容的支撑(IsSup)
  • 针对输出内容生成一个critique token判断输出质量(IsUSE)

Corrective RAG

论文: Corrective Retrieval Augmented Generation
来源: arxiv
作者单位: 中科大,University of California
核心结论: 基于对召回的文档分成三类:correct,ambiguous,incorrect(基于T5-Large)。对于第一类直接采用,第二类结合Google搜索引擎的结果,第三类直接采用搜索引擎的结果
在这里插入图片描述

Speculative RAG

论文: Speculative RAG: Enhancing Retrieval Augmented Generation through Drafting
来源: arxiv
作者单位: University of California、谷歌
核心结论: 多打草稿少出错(将不同的检索结果进行组合喂给LLMs生成答案,提供多视角的参考信息,选择最好的答案)
在这里插入图片描述

PlanRAG

论文: PlanRAG: A Plan-then-Retrieval Augmented Generation for Generative Large Language Models as Decision Makers
来源: NAACL 2024
作者单位: 韩国科学技术院
核心结论: 制定计划、检索与回答、重新规划
在这里插入图片描述

Self-Reasoning

论文: Improving Retrieval Augmented Language Model with Self-Reasoning
来源: arxiv
作者单位: 百度
核心结论: 相关性感知过程、证据感知选择过程和轨迹分析过程
在这里插入图片描述

ReSP

论文: Retrieve, Summarize, Plan: Advancing Multi-hop Question Answering with an Iterative Approach
来源: arxiv
作者单位: 蚂蚁
核心结论: 一套完整的适用于业界场景的RAG流程。基于reasoner对query进行拆分(plan),通过retriever和summarizer将query和sub-query的参考信息分别存储在global memory和local memory,当global memory中的信息可以回复query时将两个memory进行拼接输入至generator,不能回复则重新plan
在这里插入图片描述


Memory

Selfmem

论文: Lift Yourself Up: Retrieval-augmented Text Generation with Self-Memory
来源: NIPS 2024
作者单位: 北大、人大、沙特阿拉伯大学、腾讯
核心思想: better generation also prompts better memory。LLM生成的好的回复也可以作为memory(检索到的文档),从而将有界的memory推广到了无界中
在这里插入图片描述

模型架构:

  • Retrieval-augmented Generator: 对于输入X以及对应的输出Y,通过检索组件获取memory,然后将X和memory一起输入到LLM中获取候选的生成内容candidates
  • Memory Selector: 计算candidates和X之间的metric(例如BLEU等),从candidates中选取最好的candidate,将其与X一起输入到LLM获得最终的输出

HippoRAG

论文: HippoRAG: Neurobiologically Inspired Long-Term Memory for Large Language Models
来源: arxiv
作者单位: The Ohio State University、Stanford University
核心思想: 让RAG模仿人类长期记忆的三个组件(大脑皮层、海马体、海马旁回)
在这里插入图片描述
模型架构:

  • 知识图谱(KG)-大脑皮层(Neocortex): 在人类大脑中,大脑皮层负责处理和存储具体的记忆表示,比如我们学到的知识、经历的事件等。在HippoRAG中,让大模型从文本语料库中提取信息,并将其转换成一个知识图谱(KG),这个图谱就像是一个巨大的、没有固定结构的网络,存储着各种实体(比如人名、地点、概念)和它们之间的关系(GraphRAG)
  • 个性化PageRank(PPR)算法-海马体(Hippocampus): 海马体在人类记忆中扮演着索引的角色,帮助我们通过关联来检索记忆。在HippoRAG中,海马体的功能通过KG和个性化PageRank(PPR)算法来实现。这个算法可以帮助HippoRAG在知识图谱中找到与查询最相关的部分,就像海马体通过关联线索来检索记忆一样
  • 检索编码器(retrieval encoders)-海马旁回(Parahippocampal regions): 在人类大脑中,这些区域帮助我们识别记忆的不同部分,并在检索过程中提供上下文信息。在HippoRAG中,检索编码器(retrieval encoders)将查询中的关键概念与知识图谱中的节点联系起来,确保检索过程能够准确进行

Query Rewrite

RaFe

论文: RaFe: Ranking Feedback Improves Query Rewriting for RAG
来源: arxiv
作者单位: 浙大,阿里巴巴,南大
核心结论: 基于强化学习,将reranker的评分作为reward,对query改写进行学习
在这里插入图片描述


Summary

Refiner

论文: Refiner: Restructure Retrieval Content Efficiently to Advance Question-Answering Capabilities
来源: arxiv
作者单位: 香港科技、清华、香港理工
核心结论: 对检索的内容进行重写,提取查询相关内容以及必要的上下文,并进行分段处理
在这里插入图片描述

核心步骤:

  • 知识蒸馏: 多个大模型提取输入内容中与query相关内容的完整上下文,构建训练集
    在这里插入图片描述

  • 微调: 对Llama-2-7B进行SFT得到refiner(随着prompt长度的增加,参数量更大的模型微调的计算成本更高,所以选择参数量小的模型)


个人理解

后续RAG逐渐向Modular RAG的方向发展,核心的module为:

  • query理解/解析模块(Intention):
    • Rewrite:query的纠错、改写
    • Intention:意图识别
    • Plan:query的细拆,制定规划(参考PlanRAG/ReSP)
  • 检索模块(Retrieval):
    • 多路召回:不同的召回来源
    • 扩写召回:不同场景下进行不同扩写(参考RichRAG)
    • 动态路由检索(参考Adaptive-RAG)
  • 重排模块(Rerank):
    • Rerank模型(因子建模/端到端)
  • 推理/反思模块(Reasoning/Critique):
    • Benchmark:评价rag给出的参考信息/生成回复的好坏的基准(参考RAG Benchmark)
    • Critique机制:结合benchmark和plan反思召回结果是否合理(参考Self-RAG/ReSP)
  • 参考信息生成模块(Summary Generator):
    • Summary改写:完整性检查、流畅度检查、要点提取(信息整合)
    • Memory机制:结合plan,设置高优/低优,对结果进行独立存储(参考ReSP)

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

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

相关文章

SAP 接口PO(PI,XI)在ECC端日志记录及显示

在接口的处理中通常会需要记录日志,而如果是与PO(PI,XI)做的接口的话,可以使用事务码SXI_MONITOR – XI:消息监控,来查询日志,但对于一些有加密,或者在业务接口功能上想直接查询报文日志时,会在…

使用 MinIO、Langchain 和 Ray Data 构建分布式嵌入式子系统

嵌入子系统是实现检索增强生成所需的四个子系统之一。它将您的自定义语料库转换为可以搜索语义含义的向量数据库。其他子系统是用于创建自定义语料库的数据管道,用于查询向量数据库以向用户查询添加更多上下文的检索器,最后是托管大型语言模型 &#xff…

ES6中的Promise、async、await,超详细讲解!

Promise是es6引入的异步编程新解决方案,Promise实例和原型上有reject、resolve、all、then、catch、finally等多个方法,语法上promise就是一个构造函数,用来封装异步操作并可以获取其成功或失败的结果,本篇文章主要介绍了ES6中的P…

(免费领源码)java#SSM#MYSQL私家车位共享APP 51842-计算机毕业设计项目选题推荐

目 录 摘要 1 绪论 1.1 课题的研究背景 1.2研究内容与研究目标 1.3ssm框架 1.4论文结构与章节安排 2 2 私家车位共享APP系统分析 2.1 可行性分析 2.2 系统流程分析 2.2.1 数据增加流程 2.2.2 数据修改流程 2.2.3数据删除流程 2.3 系统功能分析 2.3.1功能性分析 2…

原型图绘制技巧

针对于 Axure RP绘图软件。 1、拉辅助线 目的,确定画布大小尺寸从上面和左面的刻度尺上,点击鼠标,拖动,就可以拉出一条线。 2、画布底模设为组件 右键转换为母版,方便后续其他页面使用 3、按钮 按钮字体不要太大&am…

【嵌入式】STM3212864点阵屏使用SimpleGUI单色屏接口库——(2)精简字库

一 开源库简介与移植 最近一个项目需要用12864屏幕呈现一组较为复杂的菜单界面,本着不重复造轮子的原则找到了SimpleGUI开源库。 开源地址:SimpleGUI: 一个面向单色显示屏的开源GUI接口库。 SimpleGUI是一款针对单色显示屏设计的接口库。相比于传统的GUI…

SpringBoot集成阿里百炼大模型(初始demo) 原子的学习日记Day01

文章目录 概要下一章SpringBoot集成阿里百炼大模型(多轮对话) 原子的学习日记Day02 整体架构流程技术名词解释集成步骤1,选择大模型以及获取自己的api-key(前面还有一步开通服务就没有展示啦!)2&#xff0c…

CSS学习 02 利用鼠标悬停制造按钮边框的渐变方向变化

效果 页面背景为深灰色,使用Karla字体。容器内的按钮居中显示,按钮有一个彩色渐变的边框。按钮的背景为黑色,文字为浅灰色。当鼠标悬停在按钮边框上时,边框的渐变方向变化,按钮文字变为白色,并且按钮内边距…

简单猜谜小程序开发

了解小程序的结构 项目根目录 包含小程序的配置文件和其他资源。 页面目录 每个页面都有独立的目录,通常包含 .json、.wxml、.wxss、.js 文件: .json:页面配置文件,用于配置页面的窗口表现等。 .wxml:页面的布局文件…

JS等待所有方法执行完成在执行下一个方法,promise All

在工作中会遇到这样一个场景,前端需要拿到不同接口返回的结果在执行某个逻辑,当使用链式那样的方式去请求,等一个接口响应完在请求下一个接口,这种方法就会导致请求时间特别长。这个时候就可以使用promise all,同时请求…

Python酷库之旅-第三方库Pandas(067)

目录 一、用法精讲 266、pandas.Series.dt.second属性 266-1、语法 266-2、参数 266-3、功能 266-4、返回值 266-5、说明 266-6、用法 266-6-1、数据准备 266-6-2、代码示例 266-6-3、结果输出 267、pandas.Series.dt.microsecond属性 267-1、语法 267-2、参数 …

IDEA如何去掉编辑框右侧的竖线

打开 IntelliJ Idea 软件 依次找到 File—>Settings—>Editor—>General—>Appearance 去掉勾选 Show hard wrap and visual guides (configured in Code Style options)

PHP海报在线制作系统小程序源码

创意无限,设计零门槛! 🎨 一键解锁设计大师潜能 你还在为找不到合适的设计师制作海报而烦恼吗?告别繁琐沟通,拥抱“海报在线制作系统”!这个神奇的平台,让你无需任何设计基础,也能…

后台弱口令部署war包 漏洞复现

1.搭建好环境打开页面---点击右方的manager app 默认账号密码为tomcat 2.登录完成后滑到下面点击浏览 3.将你生成的jsp木马压缩为zip格式并将后缀名改为war 4.提交此war压缩包然后在目录中点击 5.点击完后在后面加lkj.jsp,访问成功证明注入成功 5.打开哥斯拉连接…

js获取近30天近60天时间区间

1.从今天往前推30天 handleSetTime(value) {//value传入自定义时间 30/60/90//因为这里要加上今天时间,所以开始时间-1const value1 value - 1const date new Date()const startTimestamp date.getTime() - value1 * (24 * 60 * 60 * 1000 * 1)const sDate new Date(startTi…

Unity实现屏幕黑边--游戏画面和UI异形屏处理(安全区渲染)

在手机上,如果想以黑边形式显示游戏画面,比如显示区域避开异形屏、水滴屏那一行。有很多种思路,最后觉得下面这种方法比较简单合适,下面分享一下。 方法:需要分别处理,游戏画面黑边、UI黑边: …

帮助网站提升用户参与度的5个WordPress插件

仅靠编写精彩的内容、设计精美的图像和创建简化的客户旅程不足以提高网站参与度。您需要让用户在首次访问后继续与您的网站互动并成为回访者,才能真正吸引您所追求的兴趣。 幸运的是,对于 WordPress 用户来说,有数百种工具可用于提高用户参与…

html实现好看的塔罗牌、十二星座运势网站源码

文章目录 1.设计来源1.1 十二星座1.2 所有界面效果图 2.效果和源码2.1 动态效果2.2 源代码 源码下载万套模板,程序开发,在线开发,在线沟通 作者:xcLeigh 文章地址:https://blog.csdn.net/weixin_43151418/article/deta…

java网络爬虫

前言 单一个项目的功能需要测试的时候,就需要使用大量的假数据做测试,但是这些数据又不能太假,必须合乎常理。于是我们需要爬虫爬取一些网站的一些允许爬取的数据,来做项目功能测试。 一.确认爬取目标 现在爬取下面三个网站的数据…

常用的GPIO的配置(基于STM32F103C8xx)

绿色:注释 紫色:实际使用代码 //开启GPIOB的时钟 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); ①可选输入值:RCC_APB2Periph_GPIOA 或者 RCC_APB2Periph_GPIOB 或者 RCC_APB2Periph_ALL ②可选输入值&a…