Advertisement

大模型的检索增强生成--综述

阅读量:

前言

尽管大语言模型已经在许多方面展现了卓越的能力(如理解复杂文本、生成连贯内容等),但仍然存在一些主要表现为幻觉和知识更新滞后的问题。检索增强生成(RAG)技术则通过从外部知识库中获取相关数据来实现这一目标,并系统地阐述了RAG的发展模式及其基本架构。

摘要

大模型展现了卓越的能力。然而,在实际应用中也面临诸多挑战:幻觉困扰着用户体验;知识更新的速度可能无法跟上需求;推理过程不够透明导致结果难以被信任;此外追踪机制也不够完善。相比之下检索增强生成系统通过整合外部知识库中的信息有效解决了上述问题,并能显著提升生成内容的准确性和可靠性。该方法特别适用于那些依赖大量专业知识的任务其优势在于能够持续更新知识储备以适应特定领域的发展需求

引言

尽管大语言模型已取得显著成效(取得了显著成效),但仍存在明显的局限性(明显局限性),特别是在特定领域或涉及大量知识的任务中(针对特定领域或涉及大量知识的任务)。当系统需处理超过其训练数据范围(超过训练数据范围)或需回答基于当前信息的问题(基于当前信息的问题)时(问题),可能会产生所谓的"幻觉"(会产生所谓的"幻觉")。依赖于外部知识库的支持(支持),RAG能够提升LLM处理相关数据的能力(提升处理相关数据的能力)。通过引用外部资源有助于降低生成事实不正确内容的概率(概率)。A/B与C/D的结合已经在多个领域取得显著成果(取得了显著成果)。具体的进展可参考下图

在这里插入图片描述

可以看出,在RAG的发展过程中存在若干明显的阶段特征。早期时期,则与Transformer架构的崛起直接相关。研究初期,则侧重于通过预训练模型整合额外知识以增强语言模型的能力;其特点则在于对预训练技术进行了显著改进。随后随着ChatGPT的出现标志着研究进入了关键转折期;随后的研究重点逐渐转移到为大语言模型(LLM)提供更多元化信息并支持其在推理阶段处理更为复杂和依赖知识型的任务;这一趋势逐渐演变为在LLM中引入微调技术以进一步提升性能。

这篇论文主要做了如下工作:

  • 首先对该领域中RAG方法的全面回顾与系统总结工作已经完成,并着重分析其发展脉络及演变历程。研究内容涵盖了基础型RAG、高级型RAG以及模块化设计等三个主要方向。
  • 研究重点放在该过程的关键技术和相关机制上。具体而言,在检索机制、生成机制以及增强机制等多个维度展开了深入探讨,并着重考察这些环节之间的相互作用及其协同效应。
  • 从现有技术体系出发对评估框架进行了详细阐述。重点概述了评价目标、指标体系构建以及现有的评测基准和工具应用等几个方面的问题。
  • 同时进一步分析了未来发展方向,并突出了潜在的优势与面临的挑战问题。

RAG的背景

当前关于RAG的发展经历了三个主要阶段:简单型、高级型以及模块化设计。这些不同类型的模型架构及其应用场景可通过附图所示的具体架构及应用案例进行深入理解。尽管其运营成本相对较低,在性能上确实超过了本地LLM模型;然而在实际应用中仍存在一定的局限性。针对这些局限性问题, 高级型与模块化设计正是为了解决这些问题:这些问题主要体现在模型规模限制以及推理能力不足上。

在这里插入图片描述

简单RAG

简单RAG是早期的探索工作,在ChatGPT广泛应用于实际场景之后不久便受到了关注。该模型遵循传统流程:构建索引系统、执行信息检索以及生成响应内容;其架构亦可被称作retrieval-and-reading framework。

首先是对不同格式的数据进行清洗和提取,并将其整合成为统一的数据源。随后将这些数据转换为统一的纯文本格式。为了满足语言模型对上下文长度的要求,我们以特定的方式对整个文本进行了划分。接着利用嵌入模型将每个划分出的部分转化为相应的向量表示,并存入专门的语言模型向量数据库中。这一步骤对于后续检索阶段的效果具有决定性作用。

在收到用户查询后,在检索系统中会采用与索引阶段相同的编码模型来获取用户的输入信息,并将其转换为统一的向量表示形式。接着系统会对该输入进行处理并计算其与索引文档库中各段落向量之间的相似度得分值。随后系统会根据计算结果对所有文档进行排序并选取其中与输入信息最为接近的前K段内容作为重点关注对象。这些选中的段落内容随后将被用于构建提示信息以进一步扩展和丰富对话上下文的信息基础

生成:将所提出的查询与选定的文档整合成一个连贯的提示,并由大模型进行响应处理;其中模型的回答方法需基于特定任务的标准进行设计,在此过程中模型可通过其固有的参数知识或从提供的文档中提取的信息来限定其回答范围。

简单RAG有如下比较明显的缺点:

  • 检索挑战:检索阶段通常需要优化检索效果以提升精确度和召回率,在这一过程中可能会出现选择错位的情况或者无法处理的相关信息块,并可能导致关键信息的丢失。
  • 生成困难:当生成响应时,在模型中可能出现幻觉问题即生成内容与检索到的上下文存在脱节或不匹配的情况;此外还会导致输出出现不相关、毒性或者偏差等问题从而影响响应的质量与可靠性。
  • 增强障碍:将检索到的信息与其他任务进行整合可能会面临挑战有时会导致输出不够连贯甚至出现脱节现象;如果从多个来源获取类似信息还可能造成信息冗余进而产生重复性的回答;为了确保回答的一致性和风格的一致性还需要对各部分内容的重要性及其关联性进行明确并加以区分这样无疑会增加工作的难度。

此外,在生成模型的应用中还存在一些担忧:有人担心模型可能会过度强化信息获取能力而导致输出结果仅基于已有数据进行检索,并缺乏创新性或综合信息的生成能力。

高级RAG

高级RAG通过实施一系列改进措施来弥补简单RAG存在的不足。为了优化检索效果,在检索阶段采用了前后策略结合的方式。为了解决索引问题,在构建过程中采用滑动窗口方法结合细粒度分割与元数据整合的技术手段,进一步提升了索引效率与准确性。此外,在提升效率的同时又不增加复杂度的情况下:

  • 预检索过程:这一阶段重点是优化索引结构和原始查询。优化索引的目标是提高索引内容的质量。主要包括了以下策略:提高数据粒度、优化索引结构、添加元数据、优化排列和混合检索。而查询优化的目标是使用户的原始问题更清晰、更适合检索任务。常见的方法包括查询重写、查询转换、查询扩展等技术。
  • 后检索过程:在检索到相关的上下文后,将其与查询有效的整合至关重要。后检索过程的主要方法是重新排序信息块和压缩上下文。对检索到的信息重新排序,以将最相关的内容重新定位到提示符的边缘是一个关键的策略。将所有相关文档直接输入LLM可能会导致信息过载,稀释对不相关内容的关键细节的关注。为了减轻这种情况,所有的工作主要集中在选择基本信息、强调关键部分以及缩短要处理的上下文。

模块化RAG

模块化的设计使该系统相较于前两种现有架构模式展现出更高的灵活性与多功能性特点。通过一系列策略对各组件进行了优化升级,在相似性搜索功能上新增专门的搜索模块,在检索精度上实现了全方位提升的同时又采取微调优化的方式进一步完善检索器性能指标。针对具体应用场景设计这一创新思路促使该系统能够根据不同需求灵活配置资源从而有效应对复杂信息处理任务这一转变愈趋普遍无论是顺序处理还是分组件端到端训练均能实现良好的兼容性和实用性尽管在设计理念上与传统架构存在显著差异但其理论基础仍建立在基础型RAG架构之上体现出该系列研究的逐步演进与完善

(1)新模块:该系统增加了若干专门设计的组件以提升检索与处理能力。支持在搜索引擎、数据库以及知识图谱等多种数据源上进行直接查询,并通过LLM生成代码与查询语言实现跨数据源搜索功能。RAGFusion采用多查询策略突破传统检索局限性,在不同视角下扩展用户查询范围,并结合并行向量搜索与重新排序技术发现隐性和创新性知识。记忆模块基于LLM构建动态记忆系统,并通过逐步自适应优化使文本领域数据分布趋于一致。RAG系统的路由导航采用多数据源集成策略选择最优检索路径,并通过上下文生成技术确保检索结果的相关性和准确性以降低冗余信息输出任务适配器则为各种下游任务定制化RAG系统能够自动识别零样本学习场景并提供针对性提示检索功能最后针对特定任务需求自动生成相应的检索策略以提高整体性能

(2) 新模式 :新的架构支持对现有模块进行替换或重新配置以应对特定挑战;该架构具备卓越的适应能力。它超越了基于简单检索与读取机制的传统与高级RAG设计;此外,在整合新组件以及优化现有组件之间互动方面也展现出更高的灵活性;从而使其在多种任务中展现出更强的能力。

该系统采用了一系列创新技术结合LLM的强大功能,在改写模块的基础上引入LM反馈机制持续优化重写模型的性能保障任务完成效果。同时借鉴生成阅读方法其独特之处在于完全依赖LLM产生的内容替代传统的索引系统而生成阅读则侧重于通过赋予模型权重的方式实现精准的索引提升其处理密集领域知识的能力。混合搜索策略将多维度信息整合在一起包括关键词匹配语义理解以及向量空间搜索等多种手段从而满足多样化的用户查询需求。此外系统还引入子问题拆分以及基于假设文档的嵌入方法致力于实现提高答案与真实文档之间相关性的目标

在模块布局与交互策略进行优化的基础上(采用基于演示、搜索与预测的框架),结合迭代生成机制下的循环检索、读取循环(iterative retrieval and reading cycle),成功实现了动态整合各模块输出以提升整体效能的能力(ability)。这种设计深入理解了如何优化各组件协同工作的机制(mechanism)。通过FLARE与Self-RAG等技术的应用(application),充分展现了灵活架构下自适应检索优势(advantage)。该方法在不同场景下对检索必要性的评估能力(ability)超越了固定路径模式(fixed path model)。灵活架构带来的另一项显著优势在于使RAG系统能够更容易地与其他技术进行集成(integration),例如:可实现对检索器进行微调以提升检索效果、对生成器进行微调以实现个性化输出(个性化输出),以及参与协作式微调等(collaborative fine-tuning)的操作。

RAG和微调

随着LLM应用的日益普及

在这里插入图片描述

提示工程借助模型固有的能力降低外部知识与微调之间的关联程度至最小值。RAG被视为专门设计用于信息检索领域的定制教材,在精准信息检索任务中具有最佳实践地位。相比之下,在持续时间上不断吸收并内化专业知识体系类似于随着时间推移的过程,并适用于模仿特定结构、风格与格式的情形中。例如,在专业文档处理与编辑系统中就可以看到这一现象的应用

RAG展现出在动态环境中的卓越性能,不仅具备实时更新知识库的能力,还能充分挖掘外部知识资源,其透明度极高;然而其延迟较高,并伴随一些道德争议.相比之下,在应用层面相对静态的模型参数调整方法则是微调技术,该方法需经过重新训练才能实现功能调整,允许对模型的行为模式以及输出结果进行深入定制调整;这对计算资源的需求量较大;尽管能在一定程度上缓解幻觉现象的影响效果如何仍需进一步验证;而在处理未知领域或新类型数据时仍可能面临挑战

通过对多种主题下知识密集型任务性能的多次评估发现,尽管无监督微调带来了部分改进,但对于训练过程中遇到的知识既不是现有也不是全新的,RAG的表现始终得益于无监督微调的方法论。进一步研究表明,在无监督微调环境下LLM难以有效学习新的事实信息。在数据动态性、定制性和计算能力等具体需求方面,RAG与微调之间的选择主要取决于应用环境的需求。值得注意的是,RAG与微调并非完全对立的关系,而是一种相互补充的存在,能够在不同层次上提升模型的能力。在某些特定场景下,两者的结合可能带来最为理想化的性能表现,而这一优化过程往往需要经过多轮迭代才能获得令人满意的成果。

检索

在RAG框架下,在数据源中高效获取相关文档具有重要意义。在检索阶段需要关注的关键点包括:来源识别、信息提取前的处理工作以及相关模型的选择环节。

检索源

RAG通过外部知识辅助提升LLM的表现能力;而检索源类型与检索单元粒度的不同设置均会对最终输出产生影响。

(1)数据结构

最初的主要来源是关于文本检索的技术研究。随后,在这一领域的发展中逐渐涵盖了半结构化数据(如PDF文件)以及结构化数据(如知识图谱),从而进一步提升了系统的检索能力。除了传统的外部信息资源之外,在当前的研究趋势中倾向于采用LLM自身生成的内容作为辅助资源来进行检索与增强系统性能。

作为信息处理的核心资源,在实际应用中最为广泛

半结构化数据 一般是指包含文本和表格信息整合在一起的数据类型,例如PDF格式。处理这类半结构化数据会对传统的RAG系统提出挑战。首先,在进行文本分割时可能会有意地导致表格被分离出来,从而造成检索过程中的数据丢失。其次,在将表格内容融入整体数据后会使基于语义相似度的搜索变得更加复杂。在处理半结构化数据时一种可行的方法是利用LLM进行代码执行功能来对数据库中的表进行Text2SQL查询操作;或者也可以将其转换为纯文本形式以便采用基于文本分析的方法进一步研究这些信息。然而这两种方案均未达到最佳优化效果。

标准化信息 ,诸如知识图谱这类形式通常都经过严格验证能够提供更为精准的数据资源。例如KnowledgeGPT不仅能够生成与特定领域相关的搜索查询,并且将其存储在一个专有化的知识库中;这种做法有助于提升检索增强生成(RAG)模型的知识丰富度。为了弥补大语言模型(LLM)在理解和应对文本图形问题方面的不足,在研究团队提出的G-Retriever系统中融合了图神经网络(GNNs)、大语言模型(LLMs)以及检索增强生成(RAG)技术;通过引入一种辅助提示机制——比如"铜鼓哦"——来加强模型对图形内容的理解能力和问题解答能力;该系统还采用了基于奖励收集的Steiner树优化算法(PCST),从而实现了对目标图形内容的有效检索。
相对于传统方法而言,
构建标准化信息库需要投入额外的工作量

考虑到RAG在外部辅助信息方面的局限性

(2)检索粒度

除了检索源的数据格式之外,在信息处理中还涉及另一个关键因素即检索数据的粒度。从理论上来看粗粒度的检索单元能够为问题提供更为丰富的信息资源但这种做法可能也会带来冗余内容从而可能导致下游任务中的检索器和语言模型注意力分散。相比之下细粒度检索单元虽然能显著增加信息获取过程中的计算负担但也无法确保语义完整性并满足所需知识的需求因此在推理过程中选择合适的检索单元 granularity 是一种既简单又有效的方法来提升密集型搜索引擎的表现并促进下游任务性能提升

在信息检索中,粒度从细到粗可分为词元(token)、短语(Phrase)、句子(Sentence)、命题(Proposition)、块Chunks)和文档(Document)等层次。其中DenseX方法提出将命题用作检索的基本单元。具体而言,在文本处理中,命题被定义为最小单位的表达式,并且每个表达式均代表一个独立的事实片段。这些表达采用一种简洁自然的语言形式来描述,并且具有自足性以确保信息完整性。该方法旨在通过精确的检索提高结果的相关性。在知识图谱领域中,则将检索粒度划分为试题题干、三元组关系以及子图结构等层次维度进行划分。此外,在实际应用中,这种粒度划分能够根据下游任务的需求进行灵活调节,在推荐系统中可实现对项目间的句子配对关系及项目ID信息的有效检索与匹配

索引优化

在索引阶段, 通过执行文档预处理、分词操作并将文本编码为词嵌入格式, 将其存储于向量数据库中。构建的质量直接影响着检索阶段能否获取正确的上下文信息。

(1)分块策略

最常采用的方式是首先确定固定标记值(例如100、256、512),将整个文档分成多个段落。较大的段落能够更好地捕捉到丰富的语境信息,然而也会引入额外的噪声,同时会增加较长的处理时间和较高的计算成本。尽管较小的数据块无法充分传达所有必要的语境信息,但它们所带来的噪声相对较小。然而数据块会导致每个句子内部被划分为多个阶段,从而促使对递归分割与滑动窗口方法进行优化研究。通过整合多个检索结果中的全局信息来进行层次化检索过程,则仍难以实现理想化的语义完整性和适当长度的结合。因此有人提出了Small2Big等技术框架,在这种框架下将单个句子作为检索单元,并将其前后文本作为更大的上下文提供给LLM.

(2)元数据附件

可以通过包含页码、文件名等元数据信息来丰富数据块,并通过这些元数据实现对检索结果的筛选。在检索过程中为文件的时间戳分配不同权重,则可构建具备时间感知能力的RAG模型,从而保证了知识的时效性。除了从原始文档中提取元数据之外,还可以人为地构建元数据体系。例如添加段落摘要这一辅助信息,并引入假设性问题这一方法论手段,则可形成一种称为反向HyDE的技术框架。具体而言,在LLM生成工具的基础上提取文档中的关键问题,并结合这些问题与用户的初始查询进行相似度计算。

(3)结构索引

通过构建文档层次结构这一重要手段能够显著提升信息检索的效果。基于这种架构设计的RAG系统将有助于提高相关数据检索和处理的效率。

层次索引结构通过将文件组织为子层级关系来实现

知识图谱索引 :通过组织利用知识图谱构建文件层级架构的方式确保信息组织的一致性。它能够勾画出不同概念与实体之间的联系,并显著减少了错误感知的可能性。另一个优势在于将信息检索过程转换为LLM可理解的指令,并被其处理后能生成上下文一致的回答结果。这使得RAG系统的工作效率得到了提升。为了揭示文档内容与结构之间的内在联系,KGP提出了一种基于多篇文献的知识图谱构建方法,其由节点构成(其中节点代表文档中的段落或结构)以及连接这些节点的关系边构成(其中边表示段落间的语义相似性或其他关联)的一种数据模型.这种设计使得系统能够在复杂多篇文献中实现高效的信息检索与推理功能。

查询优化

简单RAG的主要挑战之一是主要依赖于用户的原始查询作为检索的基础。构建一个问题既准确又清晰是一项具有难度的任务。过于粗略或随意的查询可能会降低检索效果。另一个挑战在于语言复杂性的模糊性难以应对。此外,在处理专业词汇或具有多重含义的模糊缩略语时也会面临很大的困难。

(1)查询扩展

通过将单个查询拆解为多维度信息源来实现多轮对话系统的设计,在每一次对话中都获取更多背景信息的同时能够有效弥补信息间的细微差异不足。

多重查询:利用提示工程借助LLM来提升搜索能力,并非所有这些请求都会同时处理;相反地,在实际操作中这些功能都是经过系统规划以确保效率和效果。

子查询 :子问题规划过程旨在生成必要的子问题,并通过结合上下文来全面回答原问题。具体而言,在处理一个复杂的问题时,可以通过逐步细化的方法将其拆解为一系列较为简单的问题。这个过程类似于扩展查询的方式,在信息检索中常被采用以提高搜索效果和准确性。

验证链:该验证链借助LLM进行评估工作以降低幻觉的影响程度

(2)查询转换

核心理念是根据转换后的查询而不是用户的原始查询来检索数据块。

针对LLM检索机制而言,_ 查询重写 _是一种重要的优化手段。然而,在实际应用场景中,并非所有的初始检索需求都能直接达到最佳状态, 因此可以通过多种途径对原始检索需求进行优化调整。建议LLM重新表述其检索请求, 以便更好地适应特定业务需求和用户反馈等多维度因素的影响, 进而提高整体检索效果。此外还可以采用专门的小语言模型, 如RRR在淘宝上实现的查 检索 重 写 方法被称为BEQUE, 显著提升了对长尾关键词匹配能力的同时也显著提升了店铺整体收入水平(GMV)。

另外一种查询转换的技术是采用提示工程的方法让LLM根据原始查询生成一个新查询用于后续的检索过程。HyDE则构建了一个假设文档(基于原始查询的假定答案),主要关注于答案间的嵌入相似度而非直接寻求答案或原始查询的嵌入相似性。通过使用后退提示方法对原始查询进行抽象概括生成一个更高层次的概念性问题(即后退问题)。在RAG系统中将回溯问题与原始查询一同用于检索过程以提高结果的相关性,在检索结果的基础上再利用语言模型进行答案的生成工作。

(3)查询路由

依据不同的查询类型,系统会将请求路由到相应的路径;这种架构旨在适应多种应用场景的通用架构。

元数据路由器/过滤器 :主要步骤包括从查询中提取关键字(实体),接着利用这些关键字与块中的元数据进行过滤操作,从而有效缩小搜索范围。

另外一种基于查询语义信息的路由方案被称为_语义路由器_。另外一种途径是将语义方法与元数据辅助技术综合运用以提升查询路由性能。

词嵌入

在RAG体系中进行检索操作时,主要依赖于计算问题与文档摘要之间相似度的方法实现.该过程的关键环节在于嵌入模块的能力,其对于整个系统的表现至关重要.具体而言,该系统主要包含两个核心组件:稀疏编码器与密集检索器.近期研究工作中,注释型预训练大语言模型已开始应用于这一领域,并取得了显著的效果.尽管各种不同的嵌入模型均具备各自的独特优势,但目前尚无一种普适性解决方案能够完全满足所有应用场景的需求.然而,针对特定领域或任务需求,某些特定类型的模型往往能够展现出更强的表现力.

(1)混合/杂合 检索:采用稀疏与密集嵌入方法分别捕获不同类型的关联性,并能通过互补的相关性信息协同工作以提升彼此的能力。例如而言之,在训练阶段可将稀疏检索模型用于驱动密集检索模型生成搜索结果;此外还可以借助预训练的语言模型来学习术语权重参数从而增强稀疏检索的效果;具体而言我们发现将稀疏检索机制应用于改进密集检索器在零样本场景下的表现能够显著提升其泛化能力;同时该方法还能有效提高该系统对包含邮件实体查询的能力

(2) 微调嵌入模型 :当上下文与预训练模型严重不符时,在特定领域数据集上对嵌入模型进行微调变得至关重要。这有助于减少这种差异,并补充领域知识的同时对齐检索器和生成器。例如,在使用基于大语言模型(LLM)的结果作为微调的监督信号的基础上创建LSR(LM监督检索器)。此外,在数据缺失的情况下,默认利用LLM作为少样本查询生成器来构建特定任务检索器可解决监督微调问题。另一个方法可利用LLM生成多种下游任务的奖励信号以促进检索器的优化。检索器通过结合数据集的硬标签和LLM产生的软奖励进行双信号微调,从而实现了更为高效的优化过程以适应多种下游应用。受到基于强化学习的人工智能反馈(RLHF)启发,在这一过程中可进一步利用基于语言模型的反馈机制通过强化学习对检索器进行增强以提升性能

适配器

微调模型可能遇到挑战;例如借助API集成功能或者应对由有限本地计算资源带来的问题。因此,在某些情况下, 采用外部适配器有助于其对齐

为增强LLM处理多种任务的能力, UPRISE开发了一种轻量级提示检索系统,该系统能自动从预先构建的提示库中提取适合零样本输入的任务提示. AAR通过引入基于增强适应机制的设计方案,实现了对多个下游任务的有效适配. PRCA则增加了具有激励反馈功能的上下文适配模块,从而提升了特定任务的表现. BGM将检索系统与LLM本体维持原有架构,在此基础上构建了一个连接两者的桥接Seq2Seq模型.该模型旨在将检索到的信息转化为LLM可高效处理的形式,不仅支持信息重排功能,还能动态选择相关段落,甚至可采用重复等高级策略.此外,PKG还提出了创新性方法:通过指令性微调将知识整合到白盒模型中.在这一框架下,检索模块被直接替换为根据查询自动生成相关文档的新机制.这种设计有助于解决微调过程中的挑战,并显著提升了模型性能

生成

在完成信息检索后不建议随后将检索到的信息直接用于生成回答以下将具体说明如何进行相关优化

语境整理

某些重复或非关键的信息可能会影响LLM生成结果的质量;过量的信息量可能导致模型难以聚焦于核心内容;与人类的认知模式相似,这类模型通常会集中关注文本的两端部分;因此,在RAG架构中,我们通常需要额外进行相关性评估与筛选步骤来确保信息质量

(1)重新排序

在根本层面上实现了文档块的重新排序,在根本层面上实现了文档块的重新排序,在根本层面上实现了文档块的重新排序,在根本层面上实现了文档块的重新排序,在根本层面上实现了文档块的重新排序,在根本层面上实现了文档块的重新排序,在根本层面上实现了文档块的重排顺序上进行优化处理以确保能够优先强调最具相关性的结果以确保能够优先强调最具相关性的结果以确保能够优先强调最具相关性的结果以确保能够优先强调最具相关性的结果以确保能够优先强调最具相关性的结果以确保能够优先强调最具相关性的结果以确保能够优先强调最具相关性的结果以确保能够优先强调最具相关性的结果

(2)语境选择/压缩

在RAG流程中,人们常常误以为进行大规模的相关性检索并将其依次连接形成一个冗长的检索提示是有意识的行为.然而,这种过量的信息反而会产生更多的干扰,降低了模型识别核心数据的能力.

小语言模型可被用来识别并剔除那些对信息影响较小的层级结构。这种转换过程将原始内容转换为一种尽管人类难以理解但LLM仍能有效处理的形式。此方法提供了一种直接且实用的即时压缩方案,并无须额外训练LLM即可实现目标。该方案既考虑了语言完整性又兼顾了压缩率,在实际应用中展现出较高的效率。PRCA通过训练一个信息提取器来解决这一问题的同时RECOMP采用了类似的方法以处理相关问题。每个训练数据点包含一个正样本与五个负样本,并采用对比损失函数来进行优化。

除了压缩上下文之外, 减少文档数量同样能提升模型回答的准确性。例如'过滤-重排'范式, 集合了大模型与小模型的优势。在此模式下, 小模型充当着过滤器角色, 而大模型则扮演着排序代理的角色。研究表明, 指导大model对小model识别出的具有挑战性的样本进行排序, 能够显著改善各类信息抽取任务的表现。另外一种直接有效的策略是让LLM在生成最终回答前对检索内容进行评估, 这样一来, LLM便可以通过LLM评估来筛选出相关性较差的内容

大模型微调

根据不同场景及其数据特征对LLMs实施针对性微调能够带来显著提升的效果

以强化学习的方式使LLM输出与人类或检索器的偏好保持一致是一种有效的策略。例如,在生成的回答上进行人工标注,并对生成的回答进行人工标注以提供反馈信息。除了能够使LLM输出与其用户的偏好保持一致之外,还能够使微调后的模型和检索器在偏好上保持一致性。在无法获取功能强劲的专业模型或较大规模开源模型的情况下,在无法获取功能强劲的专业模型或较大规模开源模型的情况下,在这种情况下,在这种情况下,在这种情况下,在这种情况下,
一种简洁有效的解决方案是提取具有更强能力的模
型(如GPT-4)。此外,
LLM与其他工具(如检索器)之间的微调协同训练有助于优化整体性能。

RAG的增量过程

在RAG领域中,在处理信息时通常会采用一种逐步的方法:首先进行一次性的单一检索(即单次查询),然后根据结果生成后续的信息或结论。这种做法虽然简单直观但在某些情况下可能会导致效率不高尤其是当需要解决复杂的多步推理问题时往往显得力不从心因为其覆盖的信息较为有限为此许多研究者致力于优化检索流程以提升性能具体方案可参考下图所示

在这里插入图片描述

迭代检索

迭代检索是一种基于初始查询及已生成文本反复搜索知识库的方式,在提升大语言模型(LLM)的整体知识储备方面发挥了重要作用。通过多轮检索能够提供更多相关的上下文信息以辅助后续回答的质量提升。然而,在实际应用中可能存在语义断层或冗余信息累积的问题。ITERRETGEN系统采用了协同策略,在"检索增强生成"与"生成检索强化"之间实现了平衡以实现特定信息重建的需求。该系统以作为其知识来源的相关文本作为基础进行构建,在后续迭代过程中不断优化响应质量

循环检索

循环检索主要应用于信息检索与自然语言处理领域,在提升搜索结果深度与相关性方面具有显著效果。这一流程基于先前的检索结果以及不断优化搜索策略。其目标在于通过反复迭代逐步聚焦于最相关的数据内容从而提升用户体验。IRCoT借助思维导图引导搜索过程并动态更新思维导图以增强准确性.ToC构建了一个分类系统系统性地精炼查询中的模糊部分特别在复杂场景中表现突出即用户需求初始不明确或涉及高度专业化的数据差异较大的情况在此方法下特别有用该过程允许系统持续学习并根据反馈调整从而显著提升了满足度.针对特定的数据类型循环检索常与多级跳跃检索结合使用.其中循环检索采用层次化索引组织数据并通过摘要阶段对文档或长PDF文件进行简明扼要的总结为后续精准查找奠定基础随后基于摘要进行第二次查找体现了该流程的高度灵活与自我完善特性相比之下多级跳跃检索专为图结构数据设计旨在深入挖掘数据间的关联性

自适应检索

自适应检索机制能够让LLM主动识别最优的时间点与相关的内容来源;而在操作过程中LLMs倾向于采取主动判断的方式是一种日益普遍的趋势;例如Graph-Toolformer将整个检索流程分解为多个阶段;在每个阶段中LLMs不仅会自动调用检索工具还会结合Self-Ask技术和仅提供简短提示来启动搜索过程;这种主动性赋予了LLM选择最合适的资源的能力

WebGPT集成了一个基于强化学习的框架结构,在文本生成过程中主动调用搜索引擎进行模型训练,并借助特定的标记符号辅助定位以实现高效的查询操作。这些标记符号设计用于标识搜索结果的位置,并支持快速浏览和引用参考文献等操作流程。为了优化信息检索的效果,在生成内容的概率值降至预设阈值以下时自动启动检索系统,并通过收集相关信息来优化检索周期以提高信息获取效率。Self-RAG系统引入了"反思标记"功能模块,在模型输出后允许其自我反思输出质量并做出相应调整。该系统中的"反思标记"分为两类:一类是用于检索相关信息的关键词标记(检索标记),另一类是用于评估输出质量的行为准则标记(批评标记)。模型可以根据生成内容的质量评估结果自主决定何时启用检索功能或者由预先设定的阈值条件触发检索过程进行响应优化。在执行检索任务的过程中,默认情况下系统会对多个候选片段进行片段级别的约束搜索以获得最连贯的信息序列,并根据生成片段的质量评估结果动态调整关键参数权重从而优化整体推理性能。Self-RAG系统的创新之处在于无需额外引入分类器或其他自然语言推理模型即可完成相关功能实现并简化了基于检索机制的应用决策过程同时显著提升了模型在自适应信息获取方面的自主决策能力

任务和评估

随着自然语言处理领域对RAG技术的快速发展及其应用范围不断扩大,促使其在大型语言模型社区中成为研究热点。其核心目标在于全面分析和提升该技术在各种实际应用情境下的效能水平。本章旨在系统阐述该技术的基本框架、其主要应用场景及其相应的数据支持,并探讨相关的评估方法。

下游任务

RAG的主要功能是实现问答(Q&A)服务,并涵盖单选和多选问题的Q&A类型;此外还包括领域内的专项问答以及适用于长格式场景的问题解答能力。该技术不仅局限于问答功能,其应用范围还不断扩展到多个下游领域

评估目标

过去

搜索效果:为了确保搜索系统的有效性与准确性而评估搜索效果对于确定组件提供的语境是否合适至关重要。基于搜索引擎标准、推荐系统标准以及信息检索标准来衡量RAG模块的性能表现。常用的评价指标包括精确率(Recall)、平均召回率(Mean Reciprocal Rank, MRR)以及标准化 discounted gain(NDCG)等。

生成质量:在评估生成质量方面的主要关注点在于生成器从检索到的相关上下文中综合提供连贯且相关的答案的能力。基于这一原则设计的方法论框架主要包括无标签数据集与有标签数据集两种类型;其中对于无标签的内容而言其评价标准主要包含回答的重要性和相关度以及回答的安全性等维度指标;而相对而言在有标签的数据情况下则更注重模型输出信息的真实准确性;另外在检索阶段以及生成阶段均可以通过人工评阅或自动化手段来完成相应的质量评价。

评估方面

当前针对RAG系统的技术评估重点围绕三个关键质量指标及四个基础能力展开,并通过这些指标与任务相关性评估工作紧密关联,并承担着对系统检索与生成两大核心功能的工作

(1)质量比指标 包括 涉及 上下文相关性、答案 忠实度相关度 。这些指标从不同维度综合衡量RAG模型在信息检索和生成过程中的效能。

上下文相关性 可以用于评估检索结果的相关性和具体度,并通过保证其准确性与全面性的结合来实现既确保相关性又最大限度地减少对无关信息处理成本的影响

答案忠实性 保证生成的回答与检索到的相关内容高度一致,并且在逻辑上具有连贯性和一致性

答案的相关性要求生成的答案必须与所述问题紧密联系,并且切实解决核心问题

(2) 所需能力 :RAG评估还涉及四个关键指标:抗噪声能力、负向抑制特性、信息融合能力和反事实推理能力。这些关键指标对于模型在多变场景中的性能表现至关重要,直接影响质量评分。

衡量模型处理与问题相关但信息不足的噪声文件的能力

负排斥这一指标衡量了在无法获取所需知识的情况下模型是否具备避免错误的能力

信息整合能力 考察该模型从多个文档中综合提取关键信息以应用于解决复杂的实际问题的能力表现

反事实鲁棒性 检测模型鉴别文档中已知不准确性的能力,并且即使在被告知潜在错误信息时也能够克服。

在提升检索指令的可靠性和准确性方面,在提升检索指令的可靠性和准确性方面,在提升检索指令的可靠性和准确性方面,在提升检索指令的可靠性和准确性方面,在提升检索指令的可靠性和准确性方面,在提升检索指令的可靠性和准确性方面,在提升检索指令的可靠性和准确性方面,在提升检索指令的可靠性和准确性方面,在提升检索指令的可靠性与准确度之间形成了重要平衡点的是上下文相关性和噪声鲁棒性的结合。这种结合不仅能够有效降低误检率,并且能够在复杂场景中保持较高的稳定度。与此同时,在回答生成质量的关键要素中,则包括了以下几点:首先需要关注的是答案忠实性的保障;其次则是答案的相关性与目标的一致性;此外还需要考虑负样本的信息排斥能力;同时在信息整合效率上也要体现出优势;最后则是反事实情景下的系统稳定性。这些要素共同构成了高质量回答生成的基础框架。

此表系统地列出了各个评估维度的具体指标。须知这些常用的衡量手段多属于传统的度量体系,并非专门针对量化RAG评估而设计成熟的规范方法。然而,在针对RAG模型细微差别方面仍有一些专门化的研究开发出了独特的衡量标准

在这里插入图片描述

评估基准和工具

这些工具提供了量化指标作为评估依据,
不仅能够用于衡量RAG模型的性能,
还能够帮助深入理解其在不同评估维度上的能力。
RGB、RECALL以及CRUD等基准关注的是评估RAG模型的基本能力。
与此同时,
基于LLM技术开发的自动分析工具如RAGAS、ARES及TruLens采用了LLM技术来计算质量评分。
这些工具与基准组合形成了一个全面且强大的系统框架用于评估RAG技术的能力。
具体的评价内容可参考表格

在这里插入图片描述

全部评论 (0)

还没有任何评论哟~