Learn
RAG/01-what-is-rag

什么是 RAG

💡🤖 AI 时代,还要学 RAG 吗?学到什么程度?

这不是「要不要学」的问题,而是做 AI 应用躲不开——RAG 本身就是 AI 时代的核心工程技能。检索、切片、嵌入、召回评估这些环节 AI 替不了你的决策,只停留在调 prompt 或套现成封装,只会做出「看似能答、实则幻觉」的玩具。建议目标:能独立搭出一条可靠的检索增强链路,并会评估召回质量与答案可信度。

RAG(Retrieval-Augmented Generation,检索增强生成) 是一种把「检索」和「生成」结合的架构:在让大语言模型(LLM)回答问题时,先从外部知识库里检索出相关文档片段,再把这些片段作为上下文喂给模型,让模型基于检索到的证据来生成答案,而不是只依赖模型训练时记住的参数化知识。

一句话:先查资料,再回答。

1. 为什么需要 RAG

纯粹的 LLM 有几个天然短板,RAG 正是为了补这些短板而生:

  • 知识有截止日期:模型训练后世界还在变化,它无法知道最新的产品文档、内部政策。
  • 幻觉(Hallucination):模型遇到不知道的内容时,倾向于「编」一个听起来合理的答案。
  • 缺乏私有/专有数据:企业内部的合同、工单、Wiki 不可能进公开训练集。
  • 不可追溯:纯生成式回答无法证明「这句话来自哪份文件」,难以追责。

RAG 用外部知识库把模型「接地」到真实资料上,答案有据可查、可更新、可管控。

ℹ️RAG 的核心思想

把模型的「记忆」和「知识库」分离:模型负责推理与表达,知识库负责提供事实。两者通过检索在推理时动态组合。

2. RAG 的工作直觉

用户提问: "我们的年假政策是怎么规定的?"
    │
    ▼
[检索] 在员工手册向量库中找到 3 段相关原文
    │
    ▼
[拼接] 把问题和这 3 段原文塞进 Prompt
    │
    ▼
[生成] LLM 基于原文作答,并标注来源

对比没有 RAG:模型只能凭「可能见过类似规定」来猜,且无法引用你公司真实的制度。

3. RAG 与微调(Fine-tuning)的区别

这是初学者最常混淆的点。两者都能让模型「更懂你的领域」,但解决的是不同问题:

维度RAG微调(Fine-tuning)
知识更新改知识库即可,实时需重新训练,成本高、周期长
事实准确性高,答案有原文支撑仍可能幻觉,知识固化在权重里
可溯源性强,能给出引用弱,无法指向具体来源
适用场景知识问答、文档检索改变风格/格式、特定任务行为
成本推理时多一次检索训练成本高,推理无额外开销
💡选型经验

绝大多数「基于文档问答」的需求,RAG 是首选。微调更适合「让模型学会一种表达方式或任务格式」。两者并不互斥——成熟系统常常 RAG + 轻量微调 组合使用。

4. RAG 不是银弹

RAG 也有自己的失败模式:检索不到(chunk 切错、Embedding 不匹配)、检索到却用不上(Prompt 没组织好)、以及上下文过长稀释注意力。后续章节会逐一拆解这些环节并给出工程化对策。

🎯想一想

列出你手头最想用 LLM 解决的 3 个问题。它们属于「知识会频繁更新、需要引用原文」型,还是「需要特定语气/格式」型?这决定了该上 RAG 还是微调。

小结

  • RAG = 检索 + 生成,先查资料再回答
  • 解决 LLM 的知识截止、幻觉、缺私有数据、不可追溯四大痛点
  • 与微调互补:RAG 管「事实与时效」,微调管「风格与任务」
  • 下一章我们看 RAG 的完整架构与离线/在线两阶段流程 →