大模型LLM | RAG从入门到精通(二)RAG通用范式

一、Naive RAG

原始RAG是最早的研究范式,主要包括以下几个步骤:

建立索引: 这一过程通常在离线状态下进行,数据清洗并分块,将分块后的知识通过embedding模型产出语义向量,并创建索引。

检索: 用户的query问题,使用相同的embedding模型,计算问题嵌入和文档块嵌入之间的相似度,选择相似度最高的前K个文档块作为当前问题的增强上下文信息。

生成: 将给定的问题和相关文档合并为新的提示,然后由大型语言模型基于提供的信息回答问题。如果有历史对话信息,也可以合并到提示中,用于多轮对话。

在这里插入图片描述

初级RAG主要在三个方面面临挑战:检索质量低、生成质量差和增强过程难。

  • 检索质量低: 首先使用长文本做索引,不能很好的突出主题,建立索引时,核心知识湮没在大量无用的信息中,其次,使用用户原始query做检索,不能很好的突出其核心诉求,这就导致用户query和知识索引不能很好的匹配,检索质量比较差。

  • 生成质量差: 未检索到知识或检索知识质量差时,大模型自主回答私域问题时,容易产生幻觉,或回答内容比较空洞,无法直接使用,知识库失去了本身的意义。

  • 增强过程难: 将检索到的信息与不同任务整合可能具有挑战性,有时会导致输出不连贯或不一致。此外,还有一个担忧是生成模型可能过度依赖增强信息,导致输出仅仅是复述检索内容而没有添加有洞察力或综合信息。

要解决上面的问题,需要在检索前和检索后做一些优化,这就衍生出了高级RAG的解决方案。


二、Advanced RAG

高级RAG相比于初级RAG,基于初级RAG范式,围绕着知识检索做优化,新增了检索前、检索中以及检索后的优化策略,用于解决索引、检索和生成的问题。

1、检索前优化

检索前优化集中在知识切分、索引方式和query改写的优化上。

知识切分主要把较长的文本按照语义内聚性的分析切成小块,解决核心知识湮没以及语义截断的问题。

索引方式优化技术通过优化数据索引组织方式提升检索效果。比如去除无效数据或插入某些数据来提高索引覆盖程度,从而达到与用户问题的高匹配度问题。

query改写主要需要理解用户想表达的意图,把用户原始的问题转换成适合知识库检索的问题,从而提高检索的精准程度。

2、检索优化

检索阶段的目标是召回知识库中最相关知识。

通常,检索基于向量搜索,它计算查询与索引数据之间的语义相似性。因此,大多数检索优化技术都围绕嵌入模型展开:

微调嵌入模型,将嵌入模型定制为特定领域的上下文,特别是对于术语不断演化或罕见的领域。例如,BAAI/bge是一个高性能的嵌入模型,可以进行微调。

动态嵌入根据单词的上下文进行调整,而静态嵌入则为每个单词使用单一向量。例如,OpenAI的embeddings-ada-02是一个复杂的动态嵌入模型,可以捕获上下文理解。

除了向量搜索之外,还有其他检索技术,例如混合搜索,通常是指将向量搜索与基于关键字的搜索相结合的概念。如果您的检索需要精确的关键字匹配,则此检索技术非常有益。

3、检索后优化

对检索到的上下文进行额外处理可以帮助解决一些问题,例如超出上下文窗口限制或引入噪声,从而阻碍对关键信息的关注。在RAG调查中总结的检索后优化技术包括:

提示压缩:通过删除无关内容并突出重要上下文,减少整体提示长度。

重新排序:使用机器学习模型重新计算检索到的上下文的相关性得分。


三、Modular RAG

随着 RAG 技术的进一步发展和演变,新的技术突破了传统的检索 - 生成框架,基于此催生了模块化RAG 的概念。在结构上它更加自由的和灵活,引入了更多的具体功能模块,例如查询搜索引擎、融合多个回答。技术上将检索与微调、强化学习等技术融合。流程上也对 RAG 模块之间进行设计和编排,出现了多种的 RAG 模式。

然而,模块化RAG并不是突然出现的,三个范式之间是继承与发展的关系。Advanced RAG是Modular RAG的一种特例形式,而Naive RAG则是Advanced RAG的一种特例。

1、新增模块

  • 搜索模块: 与相似度检索不同,这部分可以被应用于特定的场景并在一些特殊语料上进行检索。一般使用向量、分词、NL2SQL或NL2Cypher等能力进行检索。

  • 预测模块: 这个技术减少用户问题中的冗余和噪声,更加突出用户真实的意图。该模块不是直接进行检索,而是利用LLM来生成必要的上下文。与通过直接检索获得的内容相比,LLM生成上下文后检索得到的内容更有可能包含相关信息。

  • 记忆模块: 多轮对话的留存,以便下次会话时,能知道之前用户问了哪些问题。

  • 融合模块: RAG-Fusion使用LLM将用户查询扩展为多个查询。这个方法不仅捕捉了用户需要的显示信息,也揭示了更深层次的知识。融合过程包括对原始查询和扩展查询的并行向量搜索,智能重排序,并得到最佳搜索结果。这种复杂的方法确保了搜索结果与用户的显式和隐含的意图保持紧密一致,从而能找到更深刻和更相关的信息。

  • 路由模块: RAG系统的检索流程使用了各种来源的内容,包含不同领域、语言、形式。这些内容都可以根据需要进行修改或合并。查询路由器还为查询选择适当的数据库,其中可能包括各种来源内容,如向量数据库、图数据库或关系数据库,或层次结构索引。开发者需要预先定义好查询路由器的决策方式,并通过LLM调用执行,它将查询指向所选的索引。

  • 任务适配器模块: 根据任务定制化Adapter。

2、新增模式

基于上面六大模块,可快速组合出属于自己业务的RAG,每个模块高度可扩展,灵活性极大。

比如:

RR模式,即可构建出传统的Naive RAG;

RRRR模式可构架出Advanced RAG;

还可以实现基于检索结果和用户评价的奖惩机制,用户强化和纠正检索器的行为。


四、如何学习大模型?

学习AI大模型是一个系统的过程,需要从基础开始,逐步深入到更高级的技术。

这里给大家精心整理了一份全面的AI大模型学习资源,包括:AI大模型全套学习路线图(从入门到实战)、精品AI大模型学习书籍手册、视频教程、实战学习、面试题等,资料免费分享!

1. 成长路线图&学习规划

要学习一门新的技术,作为新手一定要先学习成长路线图方向不对,努力白费

这里,我们为新手和想要进一步提升的专业人士准备了一份详细的学习成长路线图和规划。可以说是最科学最系统的学习成长路线。
在这里插入图片描述

2. 大模型经典PDF书籍

书籍和学习文档资料是学习大模型过程中必不可少的,我们精选了一系列深入探讨大模型技术的书籍和学习文档,它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础(书籍含电子版PDF)

在这里插入图片描述

3. 大模型视频教程

对于很多自学或者没有基础的同学来说,书籍这些纯文字类的学习教材会觉得比较晦涩难以理解,因此,我们提供了丰富的大模型视频教程,以动态、形象的方式展示技术概念,帮助你更快、更轻松地掌握核心知识

在这里插入图片描述

4. 大模型项目实战

学以致用 ,当你的理论知识积累到一定程度,就需要通过项目实战,在实际操作中检验和巩固你所学到的知识,同时为你找工作和职业发展打下坚实的基础。

在这里插入图片描述

5. 大模型面试题

面试不仅是技术的较量,更需要充分的准备。

在你已经掌握了大模型技术之后,就需要开始准备面试,我们将提供精心整理的大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。

在这里插入图片描述

全套的AI大模型学习资源已经整理打包,有需要的小伙伴可以微信扫描下方CSDN官方认证二维码,免费领取【保证100%免费


如有侵权,请联系删除

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值