深入理解RAG:检索和生成是两个不同阶段,千万别搞混了!

简介

RAG(检索增强生成)包含两个独立阶段:检索和生成。检索阶段注重数据召回,目标是准确获取与用户问题相关的内容;生成阶段则处理检索到的数据,包括格式化、去重、上下文管理等。两个阶段技术不同、目的各异,其中数据召回是最具挑战性的环节,尤其面对复杂的文档格式时。理解这两个阶段的差异对于构建高质量RAG系统至关重要。


RAG中检索和增强是两个阶段,其技术不同,目的也不同,千万不要混为一谈。

RAG检索增强生成,可能很多人并没有真正理解检索增强生成的含义;很多人认为检索增强生成是一体的,事实上检索是检索,生成是生成;它是两个不同的任务阶段,技术不一样,目的也不一样。

而不是一项具体的技术,原因就在于此。

RAG的核心原理或者说流程是,根据用户问题检索到相关内容,然后再把检索到的内容交给模型进行生成任务。

检索与生成

RAG从流程上来说,由两个核心阶段组成——检索和生成;检索是一个阶段,生成是另一个阶段。

检索

在检索阶段,目的是怎么准确地检索出与用户问题相关的内容;注重的是数据检索,而由此引发的知识库建设问题,原因就在于检索总要有一个存储数据的地方,而这个地方就是知识库。

所以,建设知识库的目的是为了提升检索的准确率和效率;因此,为了提升准确率和效率,知识库检索可以采用多种方式和技术手段,如传统关系型数据库,向量数据库,知识图谱等。

而技术手段有,文档拆分,向量化,内容总结提取,标签查询,条件查询等等;目的是用最快最准确的手段检索出需要的数据。

因此,在检索阶段,数据越少,粒度越小越好,这样检索准确率才越高,效果也越好,这也是之前提到的小块召回,大块生成策略的具体实现。

生成

而生成阶段的目的是把检索阶段召回的数据进行处理,如文档格式化,数据去重,无关数据清洗,上下文管理等——目的是让模型更好的理解问题,理解文档,然后更好的生成。

如生成阶段为了保证对话的连贯性,因此需要拼接对话历史,也就是记忆功能;而为了保证上下文不超长,需要对参考内容,记忆进行裁剪;而为了更好的让模型进行生成,降低无关数据的干扰,需要对召回的数据进行适当的处理,如只保存有用的字段,去除无关字段等。

所以说,在RAG中检索阶段的核心是数据召回,而生成阶段的核心是上下文管理;两者功能不同,目的也不同。

而RAG应用中,最难的一点就是数据召回,也就是检索阶段,原因是知识库的文档来源和格式很复杂,处理起来技术难度太大,特别是文本类文档。

其次,在不同的业务场景中,对文档的格式要求也不尽相同,如文本类文档可能需要使用markdown或其它文本格式;而数据类文档,可能需要表格或json格式。

而在真实的业务场景中,文档的格式各种各样,对数据格式的要求也各种各样;因此,面对这些复杂的文档格式,在检索端处理会相当麻烦。

再有,检索端检索到数据之后才是开始,最重要的是能在生成阶段,能让模型更好的完成生成任务;这时,我们需要把文档组织成统一的,易于模型处理和理解的方式,只有这样才能完成不断提升RAG系统的质量。

如何学习AI大模型?

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习和面试资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】
在这里插入图片描述

在这里插入图片描述

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

在这里插入图片描述

👉学会后的收获:👈

• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

在这里插入图片描述

1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值