跳到主要内容

拆解《动手做生产级 RAG——先检索再生成的实战》(原书 Hands-On RAG for Production)

(所谓 RAG——Retrieval-Augmented Generation,意思是检索增强:先去资料里检索、再照着检索到的内容生成回答。这本书讲的正是它。)

生成回答的那一步,交给大语言模型(Large Language Model,也叫 LLM)——一种读了海量文字后学会「照上文续写」的程序。

后面的行文就管它叫模型

书名里的 RAG 就是这本书的主角。

30 秒导读: 这本书回答一个问题——一个下午就能搭出来的 RAG 演示, 要怎么变成敢放上关键业务的系统? 做法开头已经给了:先去你的资料里检索,再把检索到的事实连同问题一起交给模型, 让它照着材料写答案——这是今天把 AI 接上企业知识的标准做法。 这本书的价值在于它按「会怎么坏」来组织: 每一章对应一类生产故障及其工程解法。 本组文档是我们重写的完整拆解,十六章。读完不必看原书。

1. 先交代清楚:这是谁在什么时候写的

  • 作者:Ofer Mendelevitch 与 Forrest Sheng Bao——版权页写明两位作者1

  • 成书时间:2026 年(O'Reilly);书中模型与价格是 2026 年时点快照。

  • 作者身份:Mendelevitch 是 RAG 平台公司 Vectara 的创始人;Bao 曾任 Vectara 机器学习(让机器从数据里学规律的那门学科)联席负责人。

  • 顺便记一个名字:HHEM——Bao 参与造的一个程序,专门给「一本正经地编造」打分;为什么需要它,01 章细讲2

  • 内容:十章:导论、基础栈、规模化、上生产、平台、评测,外加三个进阶方向——把检索包成可反复调用的工具(第 12 章)、文字之外的图与表与音视频(第 14 章)、把知识存成实体与关系的一张网(第 15 章)。

两件事必须先说,否则会误读这本书:

第一,作者是利益相关方。 第 10 章「RAG 平台」的演示全部用 Vectara, 「买平台」的结论与作者的商业立场重合。技术内容本身扎实、代码可复现, 但涉及 build vs buy 的判断,请把这一点读进去。

第二,这本书假设你已经会调大模型的接口(API——程序与程序之间约定好的调用方式)。 它跳过原理直奔工程; 我们的拆解把省掉的解释补了回来——所以这份拆解比原书厚,是刻意的。

2. 全书一条主线(读完这一节,你就懂了这本书)

这条链从头贯到尾,每一步都被上一步逼出来。细节全部留给对应章节。

① 起点:它不知道该什么,又不知道自己不知道

大模型知道的一切,都在训练(把海量文字喂给模型、把内部上千亿个可调数值调到位的过程)那一刻压进了它的内部。

压进去的是什么?是一大堆参数(那些调好之后固定的数值)。你的退款政策、上周的更新,不在里面。

而它只会「写得像」,不会说「我不知道」。于是问到公司的事,它流畅而自信地编——这就是幻觉(生成的内容流畅自信、却没有真实数据支撑)。

把训练数据搞大解决不了:世界装不进一次训练,装进去的瞬间就开始过时。 (为什么,第 01 章讲。)

② 所以:知识别放模型里,放模型外面

RAG 的回答是把「知道什么」从模型身体里搬出来:回答前先去资料库检索, 把找出的几段连同问题一起交给模型照着写。知识一旦变成普通数据库里的内容, 它就可增删、可设权限、可溯源

替代路线一,微调(拿私有数据继续训练模型)——做不到上面三样。

替代路线二,超长上下文(把文档全文塞给模型)——无关内容也按次付费。 (三条路线各撞在哪,第 02 章讲。)

③ 把它做出来是两条流水线

一条离线备料:文件 → 解析(把 PDF 这类「为眼睛设计」的格式还原成文字)→ 切成小块 → 转成一串数字。

这串数字叫嵌入(embedding)——它让「意思相近」变成「数字相近」。

这样一段文字就变成了一个向量(一串有方向的数)。

存进能毫秒级找「最相似」的向量库(也叫向量数据库:专门存这些数字串并快速找近邻的库)。

一条在线答题:问题也转成数字 → 找出最像的几块 → 拼进指令 → 模型写答案 → 过一道护栏。

查「最像」这一步,术语叫向量检索(按数字距离找最像的文本)。(解析与切块第 03 章,嵌入第 04 章,向量检索与生成第 05、06 章。)

④ 规模一上来,每一步都要重做一遍

一百万份文档时:摄入管线会脆弱会慢,重试、幂等这些工程功课一样不能少。

数据有三种脏法:OCR(光学字符识别:从扫描图像里认字)认错的字、样板文字、编码错。

检索质量也会散:精度(检回结果里真正相关的比例)掉下去。

结果里混进噪声(无关结果)。

修法是拆成两段。第一段只求别漏——向量一路、字面词一路,两路同时检索再合并,这个做法叫混合搜索

第二段只求排对,用重排(用更准的模型把候选重新排序)收口。

幻觉要有专门的检测与纠正;安全上,有人会把恶意指令埋进你的文档里,第 08 章给防法。(第 07、08 章。)

⑤ 生产化的大头不是 AI,是工程

延迟(用户等答案的时长)要定预算:检索段三百毫秒级,生成段几秒。

缓存(把算过的结果存起来,下次直接取)有四层,而失效最难。

多步处理要能编排(把任务按依赖关系组织起来自动跑)。

隐私要按实体类型脱敏(把人名、电话这类身份信息换成类型标签)、权限要在查询期过滤、成本实际会超预算 3-5 倍。

「上线」要写成一张 KPI 表:可用性、延迟、幻觉率,全是数字;安全也是一条——要防提示注入(把恶意指令混进输入劫持模型,第 08 章给防法)。(第 09 章。) 这些组件全自己拼,就有了「买平台」这个选项——第 10 章算这笔账, 也警告了全公司各自为政的「RAG sprawl」。

⑥ 不能量,就不能修

「答错了」其实分三层:库里没数据或数据坏、检索没检到或检错、生成幻觉或 答非所问——修法互不相同,所以每一层都要单独打分——这就是量化(把「好坏」变成数)。

每层用的那把尺子,叫指标(用数字衡量好坏的度量标准)。 裁判可以交给另一个模型,但裁判本身有偏差、要校准、要版本化。

评测要变成持续集成(英文缩写 CI——代码每改一次就自动构建、自动测试一遍)里的门。

在线靠抽样与 A/B(两版系统各分一半流量对比效果)对比,一圈接一圈地不停转下去;用户赞/踩是另一半——合起来的「飞轮」就是指这种自增强循环:数据越多→回答越好→用户越多→数据更多(第 11 章细讲)。

⑦ 问题变复杂后,检索从「动作」变成「工具」

有一类问题一次检索答不了:要先查到 A、再拿 A 去查 B。于是把检索包成 模型可以反复调用的工具——模型每走一步都向外部程序发一次工具调用(模型输出一个结构化的「请帮我执行这个函数」请求,由外层程序真的执行)。

把「问一圈再答」循环起来——观察、推理(想清楚下一步做什么)、行动。

这样的系统就是 agent(能自己规划并接连做很多步的系统)。

要让工具调用跨系统标准化,有两个协议:模型上下文协议(英文缩写 MCP——约定模型这边怎么连工具)管 agent 连工具,A2A 管 agent 连 agent。

但 agent 的失败是「行为性」的——系统一切绿灯,任务照样失败—— 所以监控要换成 trace 与行为指标。(第 12、13 章。)

⑧ 知识不止文字,关系本身也是知识

表格、图像、音视频——文字之外的信息,统称多模态(一种数据不止文字:还有图、表、声音、影像)。它们各有各的进法,也各有各的坑:表格被朴素切块切成「无头块」就丢了表头与数据的关系;图像可以摄入时转成 摘要、也可以查询时把原图给能看图的模型;音视频承载的意思不全在语音里 (红色按钮问题)。(第 14 章。)

而时限事实、多约束交集、多跳链这三类查询, 「找相似」原理上答不了,要换成「沿事实走路径」的知识图谱 (把知识存成实体与关系的图)——但超过一半的图谱项目死于低估实体链接, 书里给的默认答案是:评测先证明你需要它,再上。(第 15 章。)

⑨ 落点:你在建企业的大脑

长上下文不会杀死 RAG,只是把它变成「决定什么值得模型专注」的高精度过滤器; 检索从一次查找走向规划推理;数据搬不动就把查询发过去; 合规(数据主权、被遗忘权、来源链审计)变成设计输入。 贯穿全书的姿态:核心模式(RAG、工具、agent、图谱、评测)是稳定地基, 具体组件会一直换——别迷恋栈,专注使命。(第 16 章。)

3. 十六章地图

这张表不用记任何术语——每章后面写的是「读完你能回答什么问题」。

读完你就能回答
01 为什么需要 RAGdemo 很顺的系统为什么一问公司的事就崩?RAG 的两个动作是什么?
02 替代路线与收益长上下文、微调为什么替代不了 RAG?RAG 换来哪五条收益?
03 解析与切块PDF 的文字为什么难「读出来」?为什么必须切块、怎么切?
04 嵌入「意思相近」怎么变成可计算的距离?选嵌入模型看哪四个轴?全书枢纽,别跳
05 向量检索与向量库一百万段文字里怎么毫秒级找出最像的?「近似」近在哪?
06 查询流与生成prompt 里哪几句是承重墙?「选哪个模型」怎么不靠拍脑袋?
07 规模化(上)两百万文档的系统一个月花多少钱?摄入管线会怎么坏?
08 规模化(下)两段检索怎么分工?幻觉怎么检测、怎么纠正?注入攻击怎么防?
09 上生产延迟预算、缓存、脱敏、权限、TCO——上线目标怎么写成数字?
10 RAG 平台自建还是买?平台到底卖的是什么?(注意:本章有作者利益相关)
11 评测「答错了」分哪三层?每层用什么指标?评测怎么进持续集成?
12 从 RAG 到 agent检索怎么从一次动作变成可反复调用的工具?MCP 与 A2A 各管什么?
13 agent 的记性、失败与可观测agent 的七种坏法?为什么「一切绿灯」它还在失败?(标题的「记忆」:就是 agent 跨多次交谈仍能记住用户偏好的那个能力)
14 多模态 RAG表格、图像、音视频各怎么进 RAG?什么是无头块、红色按钮问题?
15 知识图谱哪三类查询向量搜索原理上答不了?要不要上图谱,怎么决?
16 RAG 的未来哪些趋势是架构转变、哪些是本周风味?「企业的大脑」是什么意思?

推荐顺序: 01 → 02 → …… → 16,这也是原书的推理顺序。 赶时间:01、02、08、11 是承重墙(动机、路线选择、检索质量、评测); 想做 agent 直接从 12 进;想做图谱先读 11 再读 15。

4. 这本书覆盖什么、不覆盖什么

覆盖(而且讲得比一般材料系统)——读完你能回答:

  • RAG 为什么存在、两条流水线各有哪些站、每站的取舍;
  • 从解析到生成的完整基础栈,每站都带可运行的代码走查;
  • 规模化的两本账:数据侧(成本、编排、脏数据、新鲜度)与检索侧(混合搜索、重排、护栏、幻觉);
  • 生产化的非 AI 部分:延迟、缓存、安全、TCO、KPI;
  • 一套完整的评测方法论:失败分类学、指标族、裁判模型、离线门与在线飞轮;
  • agent 化、多模态、知识图谱三个进阶方向的触发条件与代价;
  • build vs buy 的完整算账框架。

不覆盖(别指望在这本里找):

  • 大模型原理:作者明说不讲神经网络(一层层简单计算零件堆起来、靠数据调参数的计算结构)的数学;我们书架的 hands-on-large-language-models 可以补。

  • 端到端(从数据进来到答案出去的完整链路)的生产代码:第 4 章明说不给——生产是分布式系统,环境特定。

  • 微调怎么做:只讲了「为什么不用它装知识」。

  • 国产模型与中文场景:全部例子是英文与海外厂商;切块、分词(把连续中文切成一个一个词的预处理)、合规都要自己移植。

  • 多模态的深入实现:视频理解、原生多模态检索都只到方向级。

  • agent 框架的深对比:LangChain/LlamaIndex/CrewAI 各一个玩具例,不是选型指南。

书架上另外三本 RAG 书,怎么分工

本库书堆里 RAG 不止一本。这本是生产工程全景(从动机到上线的整条链), 另外三本各有专攻,读到这里后按需取用:

一句话分工
essential-graphrag(《Essential GraphRAG》)微软 GraphRAG 专精:从零手写建图与查询的整套管道,连微软的做法都自己复刻一遍
rag-ready-patterns-for-data-platforms(《RAG-Ready Patterns for Data Platforms》)检索的上游:数据进锅之前,数据平台侧先把资料整理得干净、可信任
unlocking-data-genai-rag(《Unlocking Data with Generative AI and RAG》)企业数据策略面:同一条管道从 RAG 一路讲到 agentic 记忆与自学习

5. 我们的判断

判断(我们的,不是书里的): 这本书最独特的贡献不是任何单一技术, 而是把「RAG 会怎么坏」组织成了工程学科:三层失败分类(第 11 章)、 六条图谱决策清单(第 15 章)、3-5 倍超支经验数(第 09 章), 都是「先知道会怎么死,再决定怎么建」的写法。 如果错,会错在: 如果读者的场景永远停在十万文档以下, 第七到十章的相当部分是过度工程——书的框架按企业级规模校准, 小场景应只取第 01-06 章加第 11 章的评测思想。

判断(我们的,不是书里的): 引用本书要分两层—— 机制与清单(可信,可引)平台结论(利益相关,要交叉验证)。 第 10 章「数据库类比」(没人自建数据库引擎,所以也没人该自建 RAG) 是作者商业主张的直接延伸;类比本身有解释力,但「没人自建数据库」 的今天同样存在自己装一套免费数据库的场景,类比不能推到底。 如果错,会错在: 如果平台间迁移成本被标准化(比如统一的 RAG 接口层出现), 锁定风险下降,平台结论会比我们估计的更稳。

判断(我们的,不是书里的): 全书所有具体数字(窗口大小、价格、 模型名单、延迟预算)都是 2026 年中快照,引用时一律引方法不引数字; 方法层(四病因、两段检索、失败分类学、六条清单)的半衰期会远长于数字。 如果错,会错在: 如果某家厂商的定价或能力结构发生断层式变化 (比如生成成本降到接近检索成本),第 07、09 章的成本结构结论要重算。

6. 许诺兑现表

正文里每一处「第 N 章讲」,都在这里记一行、逐行核过。

许诺在哪许诺了什么应兑现在哪核过
本页 §2 ①为什么幻觉是结构性的、扩训练集不可行01 §2
本页 §2 ②三条替代路线各撞在哪02 §2、§3
本页 §2 ③解析/切块/嵌入/向量检索/生成各站03/04/05/06
本页 §2 ④规模化的两本账07(数据侧)、08(检索侧)
本页 §2 ⑤生产化的非 AI 大山与 KPI 表09 §3-§6
本页 §2 ⑥三层失败与各自指标11 §2-§4
本页 §2 ⑦检索变工具、MCP/A2A、行为性失败12 §4-§6、13 §4-§6
本页 §2 ⑧多模态三模态的败法、图谱三类死穴14 §2-§4、15 §1
本页 §2 ⑨长上下文的角色转换、检索走向规划推理、数据搬不动查询过去、合规变设计输入与落点16 §3-§6
本页 §3 地图 04「意思变成距离」怎么做、选型四轴04 §2、§5
本页 §3 地图 10平台卖什么、利益相关提醒10 §1、§6、§7
01 §5检索质量散成噪声怎么办08 §2-§3
01 §5提示注入(把恶意指令混进输入劫持模型)怎么防08 §4
02 §5agentic/多模态/图谱三个方向是什么12/14/15
03 §4重排与混合搜索的细节08 §2-§3
04 §3嵌入模型训练方式的细节(那两个训练术语在 04 章 §3 就地讲明白)04 §3 脚注(书架指引)✓(已标为书外补充)
05 §4实时更新向量索引(为快速检索建的数据结构)的向量库适配度07 §5
06 §5LLM-as-a-judge 的偏差细节11 §5
07 §2缓存机制09 §3
08 §4多轮诱导与 agent 注入13 §4 第 7 类
09 §2失败分类学11 §2
11 §8多模态评测14 §5 评测账
12 §5调试级联 → 可观测13 §5-§6
14 §2「解析 100% 准不可假设」的铁律14 §2 提取一节
15 §1不用 agent 能否答多跳15 §4 hybrid-graph
16 §3agentic 的税13 §5-§6 与 16 §3

拆解写于 2026-08-28,依据 2026 年 O'Reilly 版。原始书籍文件不入库, 本组文档是我们自己的重写;每条引用都可用 node scripts/book-verify.mjs hands-on-rag-for-production-design 回核。

Footnotes

  1. 出处:「版权页」(text/03-fm-hands-on-rag-for-production.txt:16,搜「Forrest Bao」)与「Preface」第 127 段(text/06-fm-preface.txt:127,搜「Forrest Sheng Bao」)。epub 元数据只登记了第一作者,书卡以版权页为准。

  2. 出处:「About the Authors」第 10 段(text/135-fm-about-the-authors.txt:10,搜「Forrest Sheng Bao」)。Vectara 关联见「About the Authors」第 10 段(text/135-fm-about-the-authors.txt:10,搜「cohead of machine learning at Vectara」);Mendelevitch 是 Vectara 创始人一句不在书里,来自通用知识。