引言
在简朴的 RAG 体系中,通过结合检索和生成技术,已经可以明显提升了对复杂查询的相应质量。Reranker 作为 RAG 体系中一个关键的进阶组件,通过对原 RAG 中检索到的内容举行重新构造,可以进一步提高体系的准确性。
本文将深入探究 RAG 体系的优化方式,此中会着重介绍 Reranker 技术的基本工作原理、评估方法、优点与范围以及在 RAG 体系中的应用。
RAG 优化分析
RAG 体系的核心是检索(Retrieval)与加强生产(Augmentation & Generation),因此优化的方向可以从检索质量和加强生产效果这两个方面入手。
检索质量
总体而言,RAG 体系的检索质量是范围于索引构建阶段和向量索引算法的。此中索引构建阶段往往是既定的全局且粗粒度的方式,其优化层度将极大的决定 RAG 检索的精度和召回效果。常见的优化手段有添加滑动窗口、数据洗濯等(索引构建发生在 Retrieval 之前,此处将之归入 Pre-Retrieval 阶段)。
- 滑动窗口:在将原始数据切分成数据块时,答应相邻数据块之间的首尾各重叠部分,如要将"abcdef"切分发展度为 3 的块,可以答应 1 字符的重叠,那么滑动窗口的切分结果就是:[“abc”, “cde”, “ef”](不答应重叠的切分结果则是:[“abc”, “def”])。 这样可以一定层度保障数据块信息及其索引的完备性,从而提升召回率。
- 数据洗濯:洗濯掉不相关的、逾期的、禁绝确的、冗余的信息。
另一方面是向量索引算法方面的优化,对向量索引算法直接举行深入研究和优化往往是不划算的,我们只必要相识这些算法的特性,在不同的场景选择合适的算法及其用法,就能起到很好的优化效果。常见的优化方式是定制 Embedding Model、采用动态 Embedding Model、举行混合搜刮等(此处向量索引算法对应了向量数据库对索引数据的存储和开放检索的能力,归入 Retrieval 阶段恰好合适)。
- 定制 Embedding Model:针对特定领域,利用领域相关的数据对 Embedding Model 举行微调,加强向量转换准度。
- 动态 Embedding Model:基于 Transformer 架构的 Embedding Model,由于其注意力机制的存在,模型在将词转换为向量时,可以注意到词所处的上下文信息,从而动态的调整词准确的寄义。
- 混合搜刮:同时利用关键词过滤和向量相似度搜刮两种检索模式,此中关键词可以准确且“硬性的”清除一些不相关内容,而向量相似度搜刮则基于对内容的“明白”去筛选最相关的内容,结合了两者优势。
加强生成效果
RAG 体系的加强生成是指将检索到的内容与原始提示整合成更优的提示,将此提示传给 LLM,令 LLM 生成的内容质量提升。这一步中“整合”的优劣,也将极大影响 LLM 最终生成结果的质量(整合现实发生在 Augmentation & Generation 之前,Retrivial 之后,因此可以将这一过程归入 Post-Retrivial 阶段)。
整合环节往往从提示与检索内容的相关性、连贯性、冗余度等方面举行优化,常用的方式是Prompt 压缩、Reranking 等。
- Prompt 压缩:与检索阶段的数据洗濯类似,移除无关内容和冗余内容等,突出最相关内容。
- Reranking:引入 Reranker 模型,增加知识检索范围,比如多路召回,然后对检索到的内容举行相关性排序和筛选,提升检索内容的相关性。
引入 Reranker
上文提到优化加强生产效果的方式有一种是引入 Reranker 模块。Reranker 在信息检索方面所扮演的脚色以及产生的效果相当紧张,关于 Reranker 的研究和落地也是一个不小的课题,因此这里有必要进一步探索一下。
Reranker 实现方式
在 RAG 体系中,Reranker 模块对检索到的内容与原始提示举行相关度评估,并给出其排序的结果,可以将知识检索范围设置成多路,如此便可以更广泛、更精细地把控最终检索到的内容,从而提高了 RAG 体系的性能。
Reranker 模块可以直接是一个基于加权得分算法的统计方法,也可以是用深度学习模型训练得到端到端(提示和检索内容到得分)的模型。
- 统计方法:将多路召回的相识度按照一定的权重计算得分,这种方式的很明白,耽误影响也很小。
- 深度学习模型:神经网络可以很好的分析输入之间语义的相关性,并以得分的形式直接输出,这种方式一定程度上是直接基于语义明白得出的最相关性,具有“柔性”的优点,而且不受多路召回中内容原始相对位置的影响。
Reranker 性能评估
Reranker 的性能通常通过命中率宁静均倒数排名这两个指标举行评估。
- 命中率(Hit Rate):检索到的文档中找到精确答案的查询所占的比例。
- 平均倒数排名(Mean Reciprocal Rank, MRR):所有查询中精确答案排名的倒数的平均值。如果第一个相关文档就是搜刮结果的第一位,那么倒数就是 1;如果是第二位,倒数就是 1/2,以此类推。
Hit Rate 和 MRR 也是 Embedding Model 的评估指标,我们可以在不利用 Reranker 的场景下评估 Embedding Model 的这两个性能值,然后再适配不同的 Reranker 模型举行团体性能评估,最终找到综合得分最好的 Embedding + Reranker 组合。
优点与范围性
- 提高精度:Reranker 通过对检索结果重新排序,可以明显提高最终检索结果的准确性。
- 灵活性:适用于单路召回和多路召回场景,可以或许链接各种类型的查询和知识库类型。
- 减少幻觉:通过提供更准确的上下文减少生成模型产生幻觉的风险。
- 实时应用:在 RAG 体系中,Reranker 的影响是实时的,它可以作为一个独立模块举行评估和优化。
- 增加计算成本:Reranker 的计算成本较高,尤其是基于深度学习模型的计算。
- 增加体系延时:Reranker 的引入会增加体系的相应时间,尤其是利用深度学习模型时。
- 增加体系复杂性:集成 Reranker 必要复杂的体系设计支持,并必要持续维护 Reranker 模块。
- 引入数据隐私和安全风险:Reranker 可能接收到敏感数据。
在对精度和准确性要求较高的场景下,Reranker 的引入是不错的选择;反之,在对相应速度和成本控制要求较高的场景下,必要对 Reranker 吃守旧态度,可以优先考虑基于统计方法的 Reranker。
应用场景
RAG 体系通过 Reranker 实现了对检索结果的优化,提升了生成模型的输入质量。在 RAG 体系中,Reranker 的应用包罗但不限于问答体系、内容创作、主动择要和搜刮等场景。
- 问答体系:Reranker 帮助体系从大量文档中检索并重排答案,提供更加准确的题目回答。
- 内容创作:Reranker 通过检索和重排相关信息,为创作者提供灵感和素材。
- 主动生成择要:Reranker 在主动择要的任务中对文档的关键部分举行重排,以生成更加精粹和准确的择要。
结论
RAG 的优化可以从检索质量和加强生成效果两个方面入手,此中 Reranker 作为 RAG 体系的紧张组成部分,通过对检索结果的重新排序,可以明显提高最终检索结果的准确性。
Reranker 的优点在于提高精度、灵活性、减少幻觉和实时应用,但也存在增加计算成本、增加体系延时、增加体系复杂性和引入数据隐私和安全性等范围性。
Reranker 是高精度要求场景下的优选方案,但在对相应速度和成本控制要求较高的场景下,必要对 Reranker 保持守旧态度。
Reranker 在问答体系、内容创作、主动择要和搜刮等场景中有着广泛的应用远景。
- 上一篇:检索加强生成(RAG):智能内容生成的新纪元
- 下一篇:RAG 体系化评测
- 专栏:「呆板学习」 | 「数智通识」
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |