一篇新出的大模型检索增强生成(RAG)综述

技术

“ 今天挂出来的综述


        
          
https://arxiv.org/pdf/2404.10981.pdf  

      

第1章:introduction

介绍了大型语言模型(LLMs)的局限性,特别是在无法整合训练后的新信息方面。提出了检索增强生成(RAG)技术作为解决方案,并通过图1展示了RAG如何帮助ChatGPT解决超出训练数据范围的问题。

picture.image

第2章:RAG框架 (RAG Framework)

第2章详细介绍了检索增强生成(RAG)框架,这是解决大型语言模型(LLMs)静态限制的关键方法之一。

2.1 基本RAG工作流程 (Basic RAG Workflow)

  • 索引 (Indexing) :构建一个包含外部来源的索引,这是检索相关信息的基础。
  • 检索 (Retrieval) :通过检索模型根据特定查询检索索引中的相关信息。
  • 生成 (Generation) :使用生成模型将检索到的信息与查询结合,产生所需的输出。

2.1.1 索引 (Indexing)

  • 文本规范化处理,如分词、词干提取和去除停用词,以提高文本的索引适用性。
  • 使用深度学习预训练语言模型(如BERT)生成文本的语义向量表示,这些向量被存储以实现快速精确的检索。

2.1.2 检索 (Retrieval)

  • 传统检索方法(如BM25算法)侧重于词频和文档排名,但可能忽略查询的语义信息。
  • 当前策略利用预训练的LLMs,如BERT,更有效地捕捉查询的语义本质,通过考虑同义词和短语结构来提高搜索准确性。

2.1.3 生成 (Generation)

  • 生成阶段的任务是产生与查询相关且反映检索文档中信息的文本。
  • 通常方法涉及将查询与检索到的信息串联,然后输入LLM进行文本生成。

2.2 RAG范式 (RAG Paradigm)

  • RAG范式为研究领域提供了一个直观且强大的框架,以增强LLMs的性能。
  • 该范式从检索的角度将研究组织成四个主要阶段:预检索、检索、后检索和生成。

2.2.1 预检索 (Pre-Retrieval)

  • 包括索引、查询操作和数据修改等任务,为有效的数据访问做准备。

2.2.2 检索 (Retrieval)

  • 搜索与排名阶段,使用搜索算法在索引数据中找到与用户查询匹配的文档,并开始对这些文档进行初步排名。

2.2.3 后检索 (Post-Retrieval)

  • 后检索阶段旨在优化最初检索到的文档,以提高文本生成的质量,包括重新排名和过滤。

2.2.4 生成 (Generation)

  • 生成阶段是RAG过程中的关键组成部分,负责利用检索到的信息提高生成响应的质量。

第3章:预检索 (Pre-Retrieval)

第3章深入探讨了检索增强生成(RAG)中的预检索阶段,这一阶段是确保有效数据和查询准备的关键。

3.1 索引 (Indexing)

  • k-最近邻算法 (k-NN) :与预训练神经语言模型结合使用,如kNN-LMs,展示了语言建模中的重要进展。
  • 索引的深度学习集成 :使用预训练的语言模型来生成文本的语义向量表示,这些向量存储后可以快速精确地检索大量数据集中的信息。

3.2 查询操作 (Query Manipulation)

  • 查询重构 :调整用户查询以更好地匹配索引数据,包括查询重写、扩展和规范化。
  • 查询重写技术 :如FiD、COK和Query2doc等研究强调了创建新查询或改进现有查询以实现更相关检索结果的重要性。
  • 查询生成 :使用高级语言模型进行基于提示的查询生成,如PROMPTAGATOR和KnowledGPT,它们通过不同的策略来提高查询与检索系统功能的一致性。

3.3 数据修改 (Data Modification)

  • 内部数据修改 :如RA-DIT和RECITE研究强调通过内部数据修改来增强检索效率。
  • 数据丰富 :通过添加元数据等额外信息来提高检索内容的相关性和多样性。
  • 外部数据改进 :如UPRISE和GENREAD研究专注于改进外部数据,以增强检索结果。

核心研究和技术

  • REALM :一种索引方法,使用BERT等预训练模型来提高检索效率。
  • kNN-LMs :结合k-NN算法和预训练语言模型,用于提高语言模型的性能。
  • RAG :检索增强生成技术的缩写,它通过检索来增强语言模型的生成能力。
  • Webgpt :使用Bing API进行索引,基于实际用户搜索历史。
  • RETRO :一种RAG方法,专注于提高检索效率和准确性。
  • MEMWALKER :创新方法,通过创建记忆树来克服LLMs的上下文窗口大小限制。

第4章:检索 (Retrieval)

第4章专注于RAG(检索增强生成)中的检索阶段,这是确定信息检索系统性能的关键部分。

4.1 搜索与排名 (Search & Ranking)

  • 搜索与排名的结合 :检索阶段的核心是搜索算法的使用,这些算法在索引数据中导航以找到与用户查询匹配的文档,并开始对这些文档进行初步排名。

4.2 检索策略 (Retrieval Strategies)

  • 传统与现代检索方法 :讨论了传统检索方法(如BM25算法)与利用预训练语言模型(如BERT)的现代方法之间的差异。现代方法通过考虑同义词和短语结构来提高搜索的语义准确性。

4.3 检索模型 (Retrieval Models)

  • Atlas :研究了少样本学习方法,包括注意力蒸馏和困惑度蒸馏,以指导检索器检索更多相关文档。
  • IRCOT :将检索与推理相结合,以提高检索的有效性。
  • SURGE :使用子图检索器从知识图中提取相关子图。
  • PRCA :专注于使用特定领域的摘要性总结从文档中提取相关和上下文丰富的信息。

4.4 检索效率与准确性 (Efficiency and Accuracy)

  • 检索效率 :探讨了如何提高检索过程的效率,同时保持或提高检索结果的准确性。
  • 检索器与生成器的协作 :讨论了检索器和生成器如何协作以生成高质量的输出。

核心研究和技术

  • MEMWALKER :利用内部搜索和排名机制来识别长文本上下文问题回答中的相关信息。
  • Confidence-based Active Retrieval :基于置信度的主动检索方法,如FLARE,根据生成句子的置信度水平动态触发信息检索。

第5章:后检索 (Post-Retrieval)

第5章专注于RAG(检索增强生成)中的后检索阶段,这一阶段发生在相关信息被检索到之后,目的是进一步提升文本生成的质量。

5.1 重新排名 (Re-Ranking)

  • 重新排名的目的 :在检索到文档后,重新评估、打分和排序这些文档,以更准确地突出与查询最相关的文档,并减少不相关文档的影响。
  • 技术与方法
  • Re2G :引入了序列对分类方法,使用BERT变换器同时分析查询和段落,通过交叉注意力机制提升相关性。
  • PROMPTTAGATOR :采用“Lift Yourself Up”策略,通过迭代选择最佳候选项来逐步提高内容质量。
  • In-Context RALM :探索了零样本重排和预测性重排,使用训练模型来优化文档选择。
  • DKS-RAC :提出了一种基于知识的相似度方法,通过序列层面的知识对齐来改进文档选择。

5.2 过滤 (Filtering)

  • 过滤的目的 :移除未达到特定质量或相关性标准的文档,确保只有最相关的文档被用于文本生成。
  • 技术和方法
  • COK :提出了一种逐步修正理由的技术,通过检索知识不断优化信息的相关性和质量。
  • Self-RAG :引入了自我反思机制,使用批评标记评估检索段落的相关性、支持性和实用性。
  • FiD-TFRECOMP :专注于移除检索文档中的不相关或冗余标记和信息,提高信息处理的效率。

核心研究和技术

  • RE2G :使用BERT变换器进行重新排名,提升检索的相关性。
  • PROMPTTAGATOR :通过自我生成内容逐步提高内容质量。
  • In-Context RALM :探索了使用语言模型的零样本重排和预测性重排。
  • DKS-RAC :利用序列层面的知识相似度改进检索的匹配度。
  • COK :通过逐步优化过程显著提升信息的相关性和质量。
  • Self-RAG :使用自我反思机制高效过滤掉不相关内容。

第6章:生成 (Generation)

第6章专注于RAG(检索增强生成)中的生成阶段,这是整个RAG工作流程中的最后一步,负责将检索到的信息转化为用户所需的输出。

6.1 增强 (Enhancing)

  • 增强的目的 :在生成阶段的核心是增强步骤,目标是将检索到的信息与用户的查询合并,创建一个连贯且相关的响应。
  • 技术和方法
  • DSP :提出了一个框架,设计用于生成多个检索查询以总结和回答问题,利用从不同段落聚合的信息。
  • PRCA :提出了一个奖励驱动的阶段,根据生成器的反馈来提炼上下文,并使用强化学习调整PRCA的参数。
  • REPLUG :提出了一种方法,将检索到的文档添加到输入上下文中,然后再由黑盒语言模型进行最终预测。
  • 自定义 (Customization)
  • PKG :框架通过内部生成背景知识,使用预训练模型,消除了传统外部检索过程的需要。
  • Self-RAG :提供了一种策略,通过在可定制的解码算法中纳入反思标记,动态调整模型的检索和生成行为。

6.2 自定义 (Customization)

  • 自定义的目的 :根据用户的特定偏好或请求的上下文调整内容,包括适应目标受众的需求或呈现格式。
  • 技术和方法
  • SURGE :通过应用图-文本对比学习,确保生成的对话响应与检索到的子图中包含的知识紧密对齐。
  • FiD-light :引入了一种基于列表的自回归重新排名方法,使用源指针优化排名顺序,并在模型输出中结合文本引用作为相关信息源的指针。

核心研究和技术

  • DSP :使用CombSUM计算不同检索列表中段落的累积概率分数,以编制来自多个来源的综合响应。
  • PRCA :使用强化学习调整提取的上下文,以满足生成器的具体要求,优化生成过程。
  • REPLUG :通过并行编码检索文档的集合策略,克服了语言模型上下文长度的限制,并提高了准确性。
  • RECITE :实现了一种自洽技术,通过独立生成多个朗诵文并采用多数/多数投票系统来确定最合适的答案。

第7章:RAG的比较 (Comparisons of RAG)

第7章提供了对RAG(检索增强生成)研究的全面总结,分析了不同研究的共同点和差异,以及它们在RAG领域的贡献。

7.1 综合总结 (Comprehensive Summary of RAG)

  • 研究分析 :对RAG研究进行了详细分析,包括使用的技术、数据源、是否涉及多跳检索、以及检索和生成阶段的具体方法。
  • 多跳与单跳检索 :指出了在迭代搜索轮次中,多跳检索通常能够产生更优越的结果。
  • 查询操作 :与在预检索阶段修改数据集相比,更多的研究集中在通过操作查询来提高检索性能。
  • 检索阶段的优化 :强调了优化检索阶段的重要性,这在RAG研究中占据了显著的位置。
  • 生成阶段的定制 :指出了在生成阶段定制内容的研究相对较少,暗示了未来探索的潜在领域。

7.2 检索器与生成器 (Retriever and Generator)

  • 主要组件 :在RAG中,检索器和生成器是两个核心组件,它们共同工作以提高LLMs的响应质量。
  • 使用的技术 :总结了在讨论的研究中使用的检索器和生成器,包括使用的预训练语言模型和信息检索技术。
  • 传统与现代方法 :指出了尽管大多数生成器使用了先进的语言模型,但许多检索器仍然采用传统的BM25算法,因为它的效率。
  • 未来方向 :强调了在检索器中开发更强大的基于IR的LLMs的潜力。

核心研究和技术

  • REALM :使用BERT和Transformers模型。
  • kNN-LMs :结合了FAISS和Transformers。
  • RAG :使用了DPR和BART-Large模型。
  • FiD :结合了BM25、DPR和T5模型。
  • Webgpt :使用了Bing API和GPT-3。
  • Re2G :采用了BM25和DPR以及BART模型。

第8章:RAG中的评估 (Evaluation in RAG)

第8章专注于RAG(检索增强生成)系统的评估方法,这是理解LLM(大型语言模型)如何通过利用外部知识生成更准确、相关和鲁棒回答的重要研究领域。

8.1 基于检索的方面 (Retrieval-based Aspect)

  • 标准信息检索指标 :使用平均精度均值(MAP)、精确度、倒数排名和归一化折扣累积增益(NDCG)等指标来评估搜索结果的质量。
  • RAG中的检索指标 :专注于评估检索到的信息对支持生成任务的有效性,包括准确度、拒绝率、错误检测率和上下文相关性。

8.2 基于生成的方面 (Generation-based Aspect)

  • 文本质量评估 :使用BLEU、ROUGE-L等指标来评估LLM生成文本的语言质量和连贯性。
  • 准确性和真实性 :使用精确匹配(EM)和F1分数等指标来衡量生成文本的准确性和与真实数据的一致性。
  • 任务特定指标 :可能包括对话生成中使用的困惑度和熵,以及误导率和错误再现率等指标。

8.3 评估框架和基准 (Evaluation Frameworks and Benchmarks)

  • 多维度评估 :介绍了不同的评估框架,如RAGAS、ARES和RECALL,这些框架旨在从多个维度评估RAG系统,包括生成文本的质量、检索文档的相关性以及模型对错误信息的鲁棒性。

8.4 评估方法和数据集 (Evaluation Methods and Datasets)

  • 评估方法 :讨论了评估RAG系统的不同方法,包括使用特定的数据集和基准来测试模型性能。
  • 数据集 :提到了用于评估RAG模型的多种数据集,如TriviaQA、HotpotQA、FEVER、Natural Questions、Wizard of Wikipedia和T-REX。

8.5 评估的挑战和未来方向 (Challenges and Future Directions in Evaluation)

  • 评估的挑战 :指出了评估RAG系统时面临的挑战,包括如何全面评估系统的性能以及如何确保评估结果的公正性和准确性。

  • 未来方向 :强调了开发新的评估工具和方法的重要性,以适应RAG技术的快速发展和多样化的应用场景。

0
0
0
0
关于作者
关于作者

文章

0

获赞

0

收藏

0

相关资源
VikingDB:大规模云原生向量数据库的前沿实践与应用
本次演讲将重点介绍 VikingDB 解决各类应用中极限性能、规模、精度问题上的探索实践,并通过落地的案例向听众介绍如何在多模态信息检索、RAG 与知识库等领域进行合理的技术选型和规划。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论