最近看一位 IBM 研究员拆解 RAG 工程实操,
顺手用一段 IBM 风格的 prompt 生成了几张图,记录成图文。
01|RAG 的真实架构:不是“搜一下再喂给模型”
真正的 RAG,是个严格分层的两阶系统:
Offline 做采集和向量化,Online 做问题理解与上下文组装。
离线决定“你能找到什么”,在线决定“你会不会用”。
大多数 RAG 效果差,不是模型问题,而是:
离线数据结构混乱和在线上下文拼接粗糙。
02|规模化陷阱:Token 越多 ≠ 越聪明
RAG 失败后的常见反应:
Top K 不够?加。
Chunk 不够?加。
文档不够?全量灌。
结果往往是:
准确率先升后降,呈现倒 U 型。
问题不在“检索不够多”,
而在“噪声开始主导注意力”,
最终还是“检索不够准”。
03|真正的第一步:数据不是越多,而是越干净
如果你现在还在做这件事:
把 PDF 扔进 RAG,然后祈祷模型理解它
那问题已经找到了。
PDF 是给人看的,不是给模型看的。
真正可用的 RAG 数据,必须经过结构化清洗:
→文本语义连续
→表格语义完整
→图片 / 页码 /标题具备元数据
→可被精确定位与引用
这也是为什么现在越来越多团队会用 Docling 这类工具:
PDF → Markdown / JSON + Metadata
左边是“文档集合”,右边才是“知识资产”。
04|Context Engineering:RAG 的灵魂,不是检索算法
RAG 的核心不在“怎么搜”,
而在“上下文如何被组织”。
混合召回解决“找得到”,
重排序决定“信不信”。
优秀的 RAG,
更像一位替你整理证据链的研究助理。
05|企业落地:私有化不是选项,是前提
在企业场景里,RAG 永远绕不开三件事:
数据主权、可审计性、性能稳定。
本地模型部署、KV Cache 管理、上下文控制,
不是优化项,而是入场门槛。
RAG 在企业里不是聊天工具,
而是可控、可复现的工程系统。
千言万语一句话:
RAG 的上限,不由模型决定,而由工程纪律决定。




