- 文档
- 教程
- 知识库
【免费下载链接】developer-roadmap
Interactive roadmaps, guides and other educational content to help developers grow in their careers.
检索增强生成(RAG)与微调(Fine-tuning)是增强大语言模型应用能力的两种主流方案,但二者在方法论、成本结构与适用场景上截然不同。本文以 developer-roadmap 仓库中 rag-vs-fine-tuning 主题文档为核心骨架,结合仓库内 RAG、Fine-tuning 等系列主题内容,系统讲解两种方案的原理、完整实现链路与决策框架,帮助 AI 工程师在实际项目中做出准确的技术选型。
核心差异:两种增强 LLM 能力的方法论
原文档指出,RAG 与微调是增强语言模型的两种路径,核心区别在于方法论与使用场景:
- 微调(Fine-tuning):在预训练模型之上,使用特定领域的数据集继续训练,使模型在该任务上表现更精准。但它的知识边界被锁定在训练数据内——模型只能"记住"训练时见过的知识,无法感知训练之后发生的新信息。
- RAG(检索增强生成):将实时信息检索与文本生成结合,先从外部知识库检索与查询相关的资料,再让模型基于这些资料生成上下文相关的回答,从而访问最新外部数据。
两者并非互斥的竞争关系,而是解决不同问题的工具。原文档给出的基本判断是:微调适合"专业化、静态"的任务,RAG 适合"动态、需要实时事实支撑"的任务。接下来的章节将分别深入剖析两条链路,再从多个维度给出可落地的选型建议。
深入理解 RAG:从检索到生成的完整链路
RAG 的核心思想是用"外部知识 + 生成模型"替代"模型记忆知识"。仓库的 RAG 与实现 文档将其拆解为两个关键组件:
- 检索器(Retriever):负责在知识库中搜索与查询相关的信息;
- 生成器(Generator):基于检索到的资料,利用生成式语言模型(如 GPT 系列)组织回答。
完整的 RAG 实现链路包含以下环节,每一环在仓库中都有对应的主题文档支撑:
第一步:切分文档(Chunking)
Chunking 文档说明:RAG 的第一步是将大文档拆分为更小的、可管理的块(chunk),通常以段落或小节为单位。这样做有两个目的:
- 让检索器能在海量数据中高效检索,而不是把整篇文档当作检索单元;
- 保证每个块的长度落在模型 Token/输入限制之内。
每个 chunk 会被转换为 embedding 并存入向量数据库;查询时检索器搜索的是最相关的块,而非整个文档,从而兼顾速度与准确度。
第二步:向量化与相似度搜索(Embedding + 向量数据库)
Embedding 模型 文档指出:embedding 模型将文本、图像等数据转化为数值向量表示,在向量空间中保留语义含义与关系。这样可以通过数学运算(如余弦相似度)判断数据之间的相似性,进行聚类或相似检索。
这些向量需要专门的存储与检索设施。向量数据库 文档说明:向量数据库是专为存储、索引和检索高维向量而设计的系统,擅长处理非结构化数据,通过近似最近邻(ANN)搜索实现大规模下的快速相似度检索,是语义搜索、推荐系统等内容发现任务的基础设施。
第三步:查询处理与检索(Retrieval Process)
检索过程 文档给出了查询阶段的完整流程:收到用户查询后,系统先将查询转换为向量(embedding),再用该向量在预索引的 embedding 库中搜索最相似的数据点,通常借助 ANN 搜索技术加速。
第四步:生成(Generation)
检索到的相关 chunk 被拼入提示词,连同用户查询一并交给生成模型。模型基于这些"现场提供"的证据组织回答,输出的事实依据来自检索结果而非模型参数记忆——这正是 RAG 能保证回答"实时、可追溯、可更新"的根本原因。
RAG 的典型应用场景
RAG 用例 文档列举了 RAG 的高价值场景:聊天机器人、客户支持、内容摘要,以及问答、文档生成、语义搜索等。RAG 将输出锚定在真实世界信息上,产出更可靠、信息量更大的答案,因而在需要"基于公司私有文档、最新产品手册、动态政策"回答问题的场景中优势明显。
深入理解微调:训练的本质与真实成本
微调的本质是继续训练。仓库 Training 文档解释了模型训练的一般原理:通过向模型暴露数据集,让它迭代学习数据中的模式,用梯度下降等方法不断调整内部参数以最小化预测与真实结果之间的误差,最终让模型在未见过的数据上也能泛化。
微调正是把这一过程应用到预训练 LLM 上:用较小、任务相关的数据集对预训练模型做针对性训练,让模型的行为方式、输出风格与领域知识向目标任务靠拢。
仓库 Fine-tuning 文档同时给出了重要提醒:
- 微调可能资源密集(resource-intensive),需要 GPU 算力、数据集准备与训练流程管理;
- 它不总是最高效的方案——提示工程(prompt engineering)、RAG,或选用更小的专用模型,有时能以更低的算力与数据成本取得相当甚至更好的效果。
这意味着微调是一条"高投入、高定制"的路径,适合知识相对静态、任务模式固定的场景,例如让模型固定采用某种输出格式、遵循特定领域术语、复现某种写作风格。
选型决策:何时选 RAG,何时选微调
基于原文档的对比结论,并结合仓库各主题文档,可以将决策因素归纳为四个维度:
| 决策维度 | 倾向 RAG | 倾向微调 |
|---|---|---|
| 知识时效性 | 知识持续变化,需要实时、最新的事实(产品文档、政策、新闻) | 知识相对静态,变化频率低 |
| 知识来源 | 知识存在于外部文档库,希望回答可溯源、可审计 | 希望把知识"写进"模型参数,脱离外部系统也可工作 |
| 任务形态 | 开放式的问答、检索、摘要,答案依赖具体上下文 | 固定的输出风格、格式约束、领域行为规范 |
| 成本与资源 | 无需训练,主要成本在知识库构建与向量存储 | 需要 GPU 训练资源、标注数据集与训练运维 |
需要说明的是,这是一个"倾向性"参考框架而非绝对规则。从仓库 Fine-tuning 文档的表述看,两条路径的边界在实践中是模糊的,且经常被组合使用。
混合策略与工程实践建议
在实践中,最稳健的工程方案往往不是二选一,而是组合:
- RAG 为主 + 微调为辅:用微调固定模型的输出风格、格式与行为约束,用 RAG 提供动态的事实内容——这是企业客服、私有知识库问答中最常见的架构;
- 先验证再投入:在投入微调前,先用提示工程 + RAG 验证效果是否达标,避免过早产生训练成本;
- 知识更新走 RAG,行为定制走微调:把"知识层"(更新频繁)与"行为层"(相对稳定)解耦,分别用两条链路维护。
在 AI Engineer 路线图中的位置
本主题位于仓库的 AI 工程师(AI Engineer)学习路线中,与其相邻的主题共同构成了完整的 LLM 应用知识体系:
- 基础概念:RAG、RAG 与实现、Fine-tuning;
- 实现链路:Chunking、Embedding 模型、向量数据库、检索过程;
- 应用与进阶:RAG 用例。
原文档还推荐了 RAG vs Fine-tuning 的进阶学习资源(含蒙特卡洛数据、Towards Data Science 的文章与讲解视频),读者可沿这些资料进一步深入对比案例。掌握本文的对比框架后,建议结合仓库内上述主题文档,逐环搭建一套最小可用的 RAG 原型,再评估是否需要引入微调——这是将选型决策转化为工程实践最直接的方式。
- 文档
- 教程
- 知识库
【免费下载链接】developer-roadmap
Interactive roadmaps, guides and other educational content to help developers grow in their careers.
相关推荐
Fine-tuning 与 Prompt Engineering 对比:AI Agent 开发中的模型优化路径选择指南
Fine tuning 与 Prompt Engineering 对比:AI Agent 开发中的模型优化路径选择指南 在 AI Agent 的开发中,如何让大
文档教程知识库AI 工程师的角色与职责全解析:基于 developer-roadmap 的 AI Engineer 路线图指南
AI 工程师的角色与职责全解析:基于 developer roadmap 的 AI Engineer 路线图指南 AI 工程是一个以"应用"为核心的工程领域:A
文档教程知识库developer-roadmap 之 AI 工程师路线:模型训练(Model Training)原理与实践指南
developer roadmap 之 AI 工程师路线:模型训练(Model Training)原理与实践指南 模型训练(Training)是机器学习与深度学
文档教程知识库
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考