本文深入浅出地介绍了RAG(检索增强生成)技术,阐述了其在弥补传统大语言模型局限性方面的关键作用。文章详细解析了RAG的必要性,包括数据安全、幻觉问题、知识时效性等挑战,以及RAG如何通过权限控制、降低幻觉、实时更新知识等优势应对这些问题。核心流程部分,详细讲解了索引、检索、生成三步走策略,并区分了基础RAG和高级RAG的实现细节与优化方法。最后,文章梳理了RAG的架构谱系,从Naive RAG到Agentic RAG,为读者提供了清晰的进阶路线图,适合程序员小白系统学习大模型技术。
- 什么是 RAG
RAG( Retrieval-Augmented Generation, 检索增强生成 )是一种将信息检索与大语言模型生成相结合的技术架构。
简单来说,就是让模型在回答前先去知识库“检索资料”,再基于查到的内容生成答案。 对于传统的大语言模型本身有很大的局限性,而 RAG 用“外挂知识库”的方式低成本地补上了这些短板。
- 为什么需要 RAG
2.1 LLM 局限性
- 数据安全性:企业为防止私域数据(内部文档、个人资料、行业专有知识)泄露,通常不会将其上传第三方用于训练,通用大模型因此对这些数据一无所知;而完全依赖通用模型的应用,又不得不在数据安全与效果之间做取舍。
- 幻觉问题:模型会一本正经地编造事实,尤其在缺乏依据的时候。
- 知识时效性有限:模型训练完成之后,世界仍在变化,模型对新事件、新政策、新产品一无所知。
- 知识更新成本高:靠重新训练或微调来更新知识,代价大、周期长。
2.2 RAG 收益
- 权限与合规可控:可对检索范围做访问限制,保证敏感数据不外泄。
- 答案有据可依,降低幻觉:生成时基于检索到的真实文本,而非纯靠参数记忆。
- 知识实时更新:改知识库即可,无需重新训练模型。
- 可引用来源:能给出出处,提升可信度和可审计性。
- 成本效益高:相比微调和重新训练等成本低得多。
- 核心流程
RAG 的核心流程可以概括为:索引 -> 检索 -> 生成。
3.1 索引(Indexing):准备知识库
将文档切分成片段(chunk),通过嵌入模型(embedding model)转为向量,存入向量数据库。
- 解析清洗:从 PDF、Word、网页等来源提取文本,去除噪音。
- 文本分块(Chunk):把长文档切成语义相对完整的片段。
- 向量化:用嵌入模型(embedding model)把每个片段转成向量。
- 入库:把向量、文本和元数据存入向量数据库。
3.2 检索(Retrieval):找到相关片段
用户提问时,通过向量检索、关键词检索或二者混合的方式,从知识库召回最相关的若干片段。召回质量直接决定生成效果的上限——召回不到相关内容,模型再强也答不好。
- 查询处理:把用户问题转化成向量,必要时做查询改写。
- 召回:通过向量相似度搜索、关键词检索或混合检索,召回 Top-K 片段。
- 重排序:用重排序模型对候选片段再打分,保留最相关的几条。
3.3 生成(Generation):基于上下文回答
将召回片段作为上下文拼入 prompt,连同用户问题一起交给 LLM,生成最终答案。
- 拼接 Prompt:把用户问题和检索到的上下文组装成提示词。
- LLM 生成:模型基于上下文回答问题,并可附带引用来源。
- 基础 RAG:离线索引与在线查询
基础 RAG 也叫 Naive RAG,可以理解为:不依赖复杂优化,先把知识库建好,再根据用户问题检索相关内容,最后交给大模型生成答案。
它通常分成两个阶段:离线索引和在线查询。
4.1 离线索引:把文档变成可检索的知识库
这一步不依赖用户提问,主要任务是提前准备好知识库。
1. 文档加载与清洗
从 PDF、Word、网页、Markdown、数据库等来源读取文本,并做基本清洗,比如去掉多余空格、HTML 标签、页眉页脚等
2. 文本分块
长文档不能直接整篇检索,需要切成较小的 chunk。常见做法是:
- 按字符数或 token 数切分。
- 按段落、句子等自然边界切分。
- 设置 chunk_overlap,让相邻块保留一部分重叠内容,避免关键信息被切断。
分块太大会引入噪声,太小又可能语义不完整,所以一般会选一个折中值,例如几百个字符或几百个 token。
3. 向量化
每个文本块通过 Embedding 模型转成向量。这个向量不是普通数字,而是对文本语义的表示。
例如:“RAG 是什么”和“检索增强生成介绍” 虽然字面不同,但语义接近,在向量空间里,它们的向量距离也会比较近。
4. 存入向量数据库
把每个 chunk 的:
- 向量。
- 原文。
- 元数据。
一起存入向量数据库,比如 FAISS、Chroma、Milvus、pgvector 等。
这样后续检索时,就可以快速找出与用户问题最相似的文本块。
4.2 在线查询:用户提问后检索并生成答案
用户输入问题后,系统进入在线阶段。
1. 问题向量化
用户提问也需要通过 同一个 Embedding 模型转成向量。
这里要注意:索引阶段用什么 Embedding 模型,查询阶段最好也用同一个,否则向量空间不一致,检索效果会变差。
2. 相似度检索
用问题向量在向量数据库中做相似度搜索,召回 Top-K 个最相关的文本块。 常用相似度计算方式包括:
- 余弦相似度。
- 内积相似度。
- 欧氏距离等。
基础 RAG 通常只做向量相似度检索,不引入关键词检索、重排序等复杂策略。
3. 拼接 Prompt
把检索到的文本块作为上下文,和用户问题一起拼成 Prompt。例如:
请根据以下资料回答问题:
资料1:…
资料2:…
用户问题: …
这样模型就不是只靠训练记忆回答,而是有“参考资料”。
4. 大模型生成答案
LLM 接收拼接后的 Prompt,生成最终回答。
基础实现通常比较简单:
检索到的内容直接塞进 Prompt,模型直接输出答案。
4.3 基础 RAG 的完整链路
文档加载 → 文本分块 → 向量化 → 存入向量库 → 用户提问 → 问题向量化 → 相似度检索 → 拼接 Prompt → LLM 生成答案
其中前四步是离线准备,后五步是在线响应。
4.4 基础 RAG 的特点
| 维度 | 说明 |
|---|---|
| 优点 | 实现简单、开发快、适合快速验证 |
| 适用场景 | 内部知识库问答、文档检索、简单客服问答 |
| 主要不足 | 检索质量依赖分块和 Embedding,复杂问题容易召回不准 |
| 常见缺项 | 查询改写、混合检索、重排序、多轮迭代、知识图谱等 |
一句话理解:基础 RAG 就是“先把知识切成块、变成向量存起来,用户提问时找到最相似的块,再让大模型基于这些块回答问题”。
5 高级 RAG:对基础链路的系统性增强
高级 RAG 的核心链路框架和基础 RAG 完全同源,它本质上针对基础 RAG 每个薄弱环节做了系统性的步骤优化和能力补全,并没有脱离“索引—检索—生成”的底层逻辑。
高级 RAG 的目标很明确:
- 解决召回不准:用户问题和文档表达不一致,专有名词、编号、错误码难以命中;
- 解决上下文太脏:召回片段重复、无关或缺失限定条件;
- 解决答案不可信:模型容易编造,且答案难以追溯到原文;
- 解决复杂问题答不了:需要多跳推理、跨文档关联或多步查询。
实现时要接受几个约束:延迟可控、成本可控、权限可控、更新可持续。
5.1 各环节的步骤升级对比
| 链路阶段 | 基础 RAG 原生实现 | 高级 RAG 新增优化步骤 |
|---|---|---|
| 索引阶段 | 固定长度切分 + 简单向量化 | 递归/结构化分块 + 父子块 + 元数据增强 + 多表示/层级索引 + 可选知识图谱三元组抽取 |
| 检索阶段 | 单路向量召回 | 查询路由 + 查询改写/多查询生成 + 稠密/稀疏混合检索 + RRF 融合 + 元数据权限过滤 |
| 后处理阶段 | 无额外处理 | Cross-Encoder 重排序 + 句子级截断压缩 + 去重合并 + 超时降级 |
| 生成阶段 | 直接拼接 Prompt 输出 | 接地约束 Prompt + 流式输出 + 引用溯源 + 事实一致性/引用校验 + 语义缓存命中复用 |
5.2 核心本质
高级 RAG 不是另起炉灶的全新架构,它只是把基础 RAG里每个环节的“Demo级简单实现”,替换成了能扛住高并发、低延迟、高准确率要求的生产级工程方案。所有新增的步骤都是为了修补原生流水线的固有缺陷:比如解决单路向量召回漏检、固定分块语义割裂、高并发下延迟爆炸、生成幻觉频发等问题。
6 RAG 架构谱系:Naive / Advanced / Modular / GraphRAG / Agentic
RAG 并不是只有一种固定写法,而是从 Naive RAG 到 Agentic RAG 逐步演进的一套架构谱系。 每一代都不是完全推翻上一代,而是在上一代暴露出的短板上继续补强:Naive RAG 解决“有没有外部知识”,Advanced RAG 解决“检索质量够不够好”,Modular RAG 解决“架构能不能灵活扩展”,GraphRAG 解决“跨文档关系能不能串起来”,Agentic RAG 则进一步解决“复杂任务能不能自主规划、迭代执行”。
| 架构范式 | 核心改进 | 适用场景 |
|---|---|---|
| Naive RAG | 索引 → 检索 → 生成的最简流水线 | 简单知识库、FAQ、快速验证 |
| Advanced RAG | 查询改写、混合检索、重排序、上下文压缩 | 企业文档问答、客服、生产级检索 |
| Modular RAG | 路由、检索器池、重排、校验等模块可插拔 | 多数据源、多业务线、长期迭代 |
| GraphRAG | 引入知识图谱,支持实体关系和多跳推理 | 股权穿透、审批链路、故障根因分析 |
| Agentic RAG | 智能体自主规划、工具调用、多轮检索与校验 | 复杂分析、跨系统查询、多步任务 |
6.1 Naive RAG:最简基线
Naive RAG 是最早、也最基础的形态。 它的流程非常直接:先把文档切块、向量化并存入向量数据库;用户提问后,将问题向量化,召回最相似的若干片段,再拼入 Prompt 交给大模型生成答案。
它的优点是实现简单、开发成本低,适合快速验证 RAG 是否可行。缺点也很明显:检索质量高度依赖分块和 Embedding,遇到专有名词、编号、口语化提问时容易召回不准;检索结果缺少重排序和压缩,上下文噪声较多;生成阶段也缺少引用校验,容易产生幻觉。
6.2 Advanced RAG:把单次检索做扎实
Advanced RAG 没有改变“索引—检索—生成”的主干,而是在检索前、检索中、检索后和生成阶段增加了工程优化。
典型增强包括:
- 检索前:查询改写、多查询扩展、HyDE、元数据预过滤;
- 检索中:向量检索 + 关键词检索的混合召回、父子块索引、层级索引;
- 检索后:RRF 融合、Cross-Encoder 重排序、去重、句子级压缩;
- 生成阶段:接地约束、引用溯源、事实一致性校验、流式输出。
它解决的主要问题是:不是检索不到,而是检索到的内容不够准、不够干净、不够可信。目前大多数生产级 RAG 系统都会落在 Advanced RAG 这一档。
6.3 Modular RAG:从固定流水线到可编排组件
Modular RAG 把 RAG 拆成一组可替换、可复用的模块,例如路由模块、改写模块、检索器池、重排模块、上下文压缩模块、生成模块和校验模块。
相比 Advanced RAG,它的重点不再是“某个环节怎么优化”,而是“整个系统怎么灵活组装”。例如:
- 简单问题走向量检索;
- 精确编号走关键词检索;
- 关系类问题走图谱检索;
- 实时数据问题调用业务 API;
- 低置信度结果触发二次检索或网络搜索。
Modular RAG 更适合多数据源、多业务线、需要长期迭代的系统。代价是模块接口、状态管理、错误处理和运维复杂度都会明显上升。
6.4 GraphRAG:用图谱补上关系推理
GraphRAG 的关键变化是把“平铺的文本块”升级为“带关系的知识图谱”。 它通常会从文档中抽取实体、关系、属性,构建图结构索引;查询时不仅做向量匹配,还会沿关系边做多跳遍历,找到相关子图或社区摘要,再交给大模型综合回答。
它适合回答这类问题:
- “A 公司和 B 公司之间有哪些间接关联?”
- “这个故障和过去哪些同类事故有关?”
- “某条审批链路涉及哪些部门和角色?”
GraphRAG 的优势是跨文档关联和多跳推理能力强;不足是图谱构建成本高,实体对齐、Schema 设计和数据更新都比较复杂。
6.5 Agentic RAG:让系统自己决定怎么查
Agentic RAG 把 RAG 从静态流水线升级为动态工作流。 系统不再机械地“每次提问都检索一次”,而是由智能体根据任务复杂度自主决定:
- 是否需要检索;
- 使用向量库、图谱、数据库还是外部搜索;
- 是否需要把问题拆成多个子任务;
- 检索结果是否充分;
- 是否需要再次检索或进行事实校验。
它通常具备规划、工具调用、反思校验和记忆管理能力。 优势是能处理复杂、多步骤任务;缺点是延迟更高、成本更高,稳定性依赖编排、评估和可观测体系。
6.6 怎么选:按问题复杂度递进
选型时不建议一上来追求最复杂的架构。更稳妥的路径是:
先用 Naive RAG 验证场景价值;
召回不准时升级到 Advanced RAG;
数据源变多、业务线变复杂时转向 Modular RAG;
涉及跨文档关系、组织链路、股权穿透时引入 GraphRAG;
任务需要多步规划、多工具协同、自我校验时再引入 Agentic RAG。
结语
RAG 架构的本质,并不是把大模型和向量数据库简单拼在一起,而是让模型在生成答案之前,能够先访问可信、可控、可更新的外部知识。从 Naive RAG 到 Advanced RAG、Modular RAG、GraphRAG,再到 Agentic RAG,这条架构谱系反映的是 RAG 能力边界的不断扩展:从解决“有没有外部知识”,到提升“检索是否准确”,再到支持“多源数据编排、跨文档关系推理和复杂任务自主执行”。
在实际落地中,架构选择不应以“是否先进”为第一标准,而应回到业务问题本身。对于大多数企业知识库和文档问答场景,Advanced RAG 已经能够提供较好的投入产出比;当数据源增多、业务规则复杂时,Modular RAG 能带来更强的扩展能力;当问题涉及实体关系、链路分析和多跳推理时,GraphRAG 更有价值;只有面对需要多步规划、多工具协同和反复校验的复杂任务时,才适合引入 Agentic RAG。
因此,RAG 系统的建设更适合采用渐进式路径:先跑通基线,再针对召回质量、上下文质量、生成可信度和任务复杂度逐步增强。最终衡量 RAG 架构是否合适的标准,不是它包含了多少模块,而是能否在准确率、延迟、成本和可维护性之间取得稳定平衡。
大模型的知识又多又杂,到底怎么学?
做这行久了,被问最多的问题就一个:大模型的知识又多又杂,我到底先学啥?翻了一堆资料,看啥都像重点,结果啥都没学进去。今天把我自己一路摸出来的顺序捋一遍,零基础、应届生、转行的都适用。跟着走,至少方向不乱、不瞎忙,学完拿得出手。
第一阶段(10天):初阶应用
这一阶段就一个目标:把大模型真正"玩明白",不是只会聊天那种,而是能调教它、能用代码把大模型和业务接起来。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
这阶段正式进实战,目标很实在:做出两个能拿出手的东西——一个私有知识库,一个 agent 对话机器人。
为什么要做 RAG
搭建一个简单的 ChatPDF
检索的基础概念
什么是向量表示(Embeddings)
向量数据库与向量检索
基于向量检索的 RAG
搭建 RAG 系统的扩展知识
混合检索与 RAG-Fusion 简介
向量模型本地部署
…
走完这 30 天,Python 或 JavaScript 背景的基本能独立做一套 RAG 应用,简历上也敢写"大模型应用开发"了。
第三阶段(约20天):动手微调
学到这,你已经开始 “造” 模型了 —— 通过微调,搞出垂直领域的专用小模型。
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你从 “只会用” 变成 “能造” 的 AI 小子。那么你还想往下探索吗?
想要入局AI大模型赛道、抢占行业红利的朋友,微信扫描下方CSDN官方认证二维码,即可100%免费领取全套学习资料!
第四阶段(20天):商业闭环,部署落地
技术学完,落地才算数。这阶段带你搞明白大模型怎么真正跑起来、用起来。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
想要入坑大模型的朋友,给大家准备了一份2026 年最新 AI 大模型全套学习资料:
1、大模型系统化学习路线
2、大模型学习视频教程
3、大模型学习书籍&电子文档
4、AI大模型最新行业报告
5、大模型项目实战&配套源码
6、2026大模型大厂面试真题
7、为什么要学习大模型?
我国在A大模型领域面临人才短缺,数量与质量均落后于发达国家。2023年,人才缺口已超百万,凸显培养不足。随着AI技术飞速发展,预计到2025年,这一缺口将急剧扩大至400万,严重制约我国AI产业的创新步伐。加强人才培养,优化教育体系,国际合作并进是破解困局、推动AI发展的关键。
8、适合谁学?
- 传统后端 / Java / 前端开发,想转型 AI 应用
- 大学生、应届生,想拿更好的 offer
- 产品经理、运营,想武装职业竞争力
- 技术负责人,想给团队落地提效
学习是反人性的,但回报是真金白银。技术会更新,赛道会切换,但只要你先动手,机会就永远站在你这边。
9、这些资料真的有用吗?
这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。
资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。
想要入局AI大模型赛道、抢占行业红利的朋友,微信扫描下方CSDN官方认证二维码,即可100%免费领取全套学习资料!
好了,就写到这。路线是死的,人是活的,卡住了随时来问我。觉得有用就点个收藏,别让它进收藏夹吃灰——动起来比啥都强。