什么是RAG:给AI外挂一个大脑
2026-09-25 · 彬城AI AI科普系列
大家好,今天这期视频我们来讲什么是RAG。虽然现在网上已经有很多博主已经发过了RAG的教程,但RAG从20年诞生以来,已经经历过四代的演进,现在已经是属于智能体RAG时代了,有很多博主都没有讲到这一点,所以我觉得有必要专门出一期视频讲什么是RAG。如果你现在正在用RAG做一个落地的企业项目,一定不要错过这个视频啊。
RAG的英文叫Retrieval Augmented Generation,它的中文名字就是一一对应的,比如说这个Retrieval,它就是检索的意思,Augmented就是增强,Generation就是生成,连起来就是检索增强生成,取它每一个英文的首字母,RAG连起来,这就是RAG了。
那么简单说,RAG就是大模型的知识库。比如说大模型它是一个学生,它要去参加一个开卷考试,那么它就需要查资料,查资料这个动作就代表这个检索,就是R,得到资料这个动作就代表A增强,增强增强的是他回答问题的能力,所以就叫增强,那么最后他就是回答了,把答案写在考卷上,这个就是RAG的意思。
那么我们先来讲一下RAG出现的原因。我们知道大模型出厂的时候,它是有自带知识库的,那么当它出厂的那一刻,它的知识库就有一个截止日期了,所以说知识库它会过时的。而且大模型出厂自带的知识库并不懂你企业的私有数据,比如说你想问它我们企业今年有哪些规章制度,它就回答不上来。如果你非要它回答,它可能会一本正经的胡说八道,这就是我们说的AI幻觉。
你可能会说不对啊,我平时用豆包,我给它发几个文件,然后让它实现这几个文件的智能问答也可以啊。没错,如果是这种极个别临时用的场景,你用这种方法是可以实现智能问答的。但是如果你涉及到成百上千个文件,而且你作为企业知识库的话,你需要沉淀你的知识,长期的去复用,不可能每一次都把那么多文件丢给大模型去回答,所以说做企业级项目的智能问答,这种方式就行不通了。
第一代的RAG,我们称它为朴素RAG,是2020年由Meta公司发表论文,它是首次提出RAG的概念。那当时这个RAG流程也是非常简单粗暴,它主要是以下这么几个步骤,当然这几个步骤也是非常重要的,也是后面三代发展的一个根基。
第一步他要进行文档的切片,我们要知道,如果是把整本方案去丢给大模型的话,大模型它无法一次性转换成向量,因为每一个向量模型它都是有上限TOKEN的,常见的有512TOKEN或者是1,024TOKEN。意思是什么,就是你每一段话最多是512或者是1,024的TOKEN。切分以后的这个chunk文本就要进行第二步,我们把它叫做向量嵌入。为什么要有切片和向量嵌入,是因为计算机它只认识0和1,意思是它只认识数字,它并不认识文字本身,所以我们一定要把切分以后的文本转换成大模型看得懂的向量。
那么转换成向量以后,就存入我们的向量库了,这个向量库也就是知识库的向量库。当用户向大模型提问的时候,这个RAG系统就会把用户的问题也转换成向量,去做相似度检索。相似度检索,你可以把它理解成它是知识库的向量和问题的向量去做一个公式的计算,计算以后,如果这两个向量距离相近,那就是代表它们的意思相似。那么找到这个和问题向量相似的知识库向量,这个知识库向量就会作为大模型回答的一个参考资料,大模型就这么带着这个知识库向量去回答你的问题了。
这个是第一代,我们把它叫做朴素RAG,但它也有非常明显的缺点,就是它的准确性非常低,难以解决现实的业务问题。
第二代我们把它叫做进阶版的RAG,也就是self RAG,它是由华盛顿大学作为主要作者提出的。那么这个阶段也是和第一代一样,总体的流程和第一代都是一样的,只不过第一代它在相似度检索这个环节准确率特别低,所以第二代就在相似度检索这方面进行了优化,它用三个方法进行优化。
首先第一个叫做查询重写,什么意思呢,比如说用户问去年这个项目总投资有多少,那么去年这个项目对于这个RAG系统和大模型来说,在知识库也找不到去年和这个项目具体指哪个项目,它就无法回答。所以查询重写的意思就是将用户这个问题转换成,比如说2025年某某项目的总投资是多少,可以理解成从一种模糊的查询状态转换成一个大模型和RAG系统可以找得到答案的方式。
第二个方法叫做混合检索。第一代的话,它检索只依靠向量的相似度进行判断,但有时候问题里面涉及到一些人名和地名,这个时候只看意思像不像那就没有办法准确的判断,所以说这一代加上了一个关键词的检索。混合检索的话,就是将原来的向量检索加上我们这个关键词的检索。所以说如果你平时会用一些低代码平台,比如说Dify之类的,你在知识库里面它就会让你去调混合检索的这个比重,根据你知识库的情况,如果大部分都是专有名词的话,你这个比例可以调高一点,向量检索可以调低一点。
好那么第三个叫做重排序,Rerank就是重排序的意思(rank是排名的意思)。进行检索以后,它把所有相关的这个参考资料都按照一个排名,1234全部列给你,他只会列出和这个问题最相似的参考资料,最无关的话就是放在下面。回答的时候,这个参考资料他就只会取排名最靠前的,就比方你做开卷考试,你翻到了课本有10页的内容是和考题相关,你不可能把10页的内容全部都写上去,你只会找其中最相关的几段去作为一个参考,这个就是重排序。
第二代经过了这三个方法对这个相似度检索进行了优化,准确率确实大大的提高了,但还是有个问题,它不会判断结果够不够准确,也就不能及时的调整这个相应的策略。
好那么到了24年,模块化的RAG出来了。值得一提24年7月,这个模块化RAG概念是由复旦大学和同济大学联合发表论文,这个明确了模块化RAG的概念。因为现实情况很多项目它的侧重点不同,有的项目它会侧重在优化检索方面,有的项目它会侧重在优化这个知识库切片里面,还有的项目它侧重这个需要增加记忆功能。所以模块化RAG这个概念就把RAG切分为不同的模块,还有索引预检索、检索后检索、还有记忆、生成编排这些模块。
首先我们看第一个索引模块,索引模块主要是用于这个文档切片和切片后的向量嵌入,它这个属于预处理过程。那么第二部分预检索、检索和后检索,其实都是讲检索一个事情,对应的就是Retrieval这个检索嘛就是R。那么预检索有点像第二代它这个查询重写,它主要是用来优化问题的,然后检索就是真正去向量库查询这个动作,后检索的话就是将检索的结果进行一些重排序啊或者是降噪这些处理。这三个模块还是检索。那么还有一个记忆功能,这个记忆功能就是记录了一些用户和这个RAG系统的一个对话记录,可以理解成它是一个增强,增强大模型RAG系统回答用户问题的能力叫做增强。然后最后就是生成了,生成对应这个G。编排的话,它是代表所有的这些模块可以自由组合,比如说简单问题,它就不进行这个索引,用大模型自带的知识库去回答,如果涉及到知识库的问题,它就进行这个索引。
当然这个第三代的好处,那就是所有的功能都是模块化,大大提高了这个RAG的灵活性。包括如果碰到回答不准的话,你也可以通过关闭一些模块去做到一个快速定位问题的这么一个功能。
好那么总的来说,前三代它的本质我们还是把它叫做静态的,它是按照既定规则去运行的一个流水线,决策权还是依赖于开发者。开发者如果是事先制定的工作流比较好的话,回答效果可以比较好,如果碰到一些规则之外的问题,那么很遗憾,这个RAG系统它就回答不上来,可以把它理解成一种穷举的概念。那么我们可以把它理解成一个只会按公司培训手册去做事的一个员工,不管你给这个员工下达什么命令,他先要去查这个公司手册,如果公司手册里面写了,他就会按上面的去做,如果没有写,他非要回答的话,也可能是一本正经的胡说八道。那么总的来说,这个前三代它是一个不会思考的流水线,它的核心流程有且只有这三个,检索增强生成,它只会按这三个步骤进行工作。
那么就催生了我们这个第四代的RAG,也就是Agentic RAG,智能体RAG。我称它是具有革命性、划时代意义的RAG。大家可以把它理解成为一个可以充分发挥主观能动性的一个员工。它首先会规划任务,规划任务以后它才会去查知识库,然后查完以后它会去验证一下查到的结果,这个相关性和问题是不是符合,如果不符合,它就会通过换关键词或者是直接在网上搜,或者在相关的数据库进行查询,查询完以后他再次回来去检查一下这个相关性是怎么样的。
这个流程也是我们非常熟悉的这个PDCA流程,P就代表plan,规划任务,D就是这个直接执行,Check就是检查,Act然后就是根据检查的结果去及时这个调整行动。那么前三代它终究是检索增强生成,那么到了第四代,它在检索之前加了一个大模型自主规划,就是自主规划任务。那么第一轮检索增强生成以后,大模型它还会增加一个反思的功能,它就会看这个回答是不是满意,如果不满意,它再反过来重新规划任务,它的这个工作模式,它是多轮迭代的。
所以现在你应该就可以理解了,前三代那些RAG它只是一轮迭代,所以说它是静态的、被动的一个流水线。那么第四代它就是有自主规划能力的这个RAG系统了。因为第四代它的决策都是依靠这个大模型自主随机应变的,按照什么方式去执行。前三代它是一个收敛、有约束性的,那么第四代它就是发散的,它是碰到什么这个问题,大模型它都会采取相应的方法去这个应对。
好讲完了这四代这个RAG的演进,你可能会想说,你现在就想做一个RAG项目,这个项目去哪里可以直接下载呢。那么我们要知道RAG技术它本质上只是一个方法论,它是一个技术方案,它不是一个现成的项目。就比如说它不是一道这个做好的菜,而是一个烹饪的方法。那么搭建这个RAG项目基本上有两种方法。
第一种0代码的方式,就是有一些0代码平台,它通过拖拉拽的方式,你可以快速搭建起一个知识库,比如说这个Dify或者是COZE。当然这种方法只是适合于那种快速验证,还有还有一些简单场景。如果你想落地企业项目的话,应该要用到第二种,也就是你自己真正去写代码,这个叫代码框架。这边可以推荐你用一个Langchain这个一个开源的架构,那么你可以配合一些编程智能体,你给它写提示词,你说我要做这个第四代的智能体的这个RAG,而不是前三代的RAG架构。所以说了解这四代RAG的演进历程还是非常有必要的,这个可以帮助你更好的去写提示词,搭建你的RAG项目。
这期我们最后来总结一下。首先开头我们讲了这个RAG它基本的概念,RAG其实就是Retrieval Augmented generation这三个英文的首字母,分别代表检索增强生成。然后RAG出现的原因是因为大模型它的知识库它是有截止日期的,然后你还有一些私有化的数据,必须要用RAG这个技术搭建知识库才能做到智能问答,适合于企业化的AI项目。然后我们还讲了从20年诞生至今它经过了四代的发展,从最开始的朴素RAG,一直到后面的进阶版RAG,还有模块化RAG,还有到现在的智能体RAG。智能体RAG,它是在检索增强生成前面和最后增加了一个规划和反思的能力。RAG它是用作检索增强生成,那么智能体它是用作自主决策的角色,所以说第四代的RAG它是具有革命性的、划时代意义的。
本文整理自彬城AI《AI科普》系列科普视频,文字略有整理。更多内容见行业洞察。彬城AI(彬城工程咨询(南昌)有限公司)提供人工智能体开发、信息化系统建设与AI实战培训服务,业务交流请致电 182 7919 8383。