篇一:RAG 工程实战:从向量检索到可信回答

3 阅读4分钟

第一篇:RAG 为什么还在被低估?

如果你做过 RAG 项目,大概率经历过这种场景:Demo 跑得很漂亮,一上生产就翻车——用户问"公司报销流程",系统回答"请咨询财务部门",但答案明明就在员工手册第 12 页。

问题出在哪?不是模型不够强,也不是向量库不够快,而是 RAG 从来不是一个"库+模型"的简单拼接,而是一条精密的流水线。任何一个环节掉链子,最终回答都会崩。


一、RAG 的五个"隐形瓶颈"

大多数人理解的 RAG 是这样的:

用户提问 → 向量化 → 检索相似片段 → 塞进 Prompt → LLM 回答

实际生产环境里,这条链路至少有五个地方会出问题:

1. 文档解析就错了

PDF 里的表格被拆成乱序文本,PPT 里的图片完全丢失,Word 里的脚注被吞掉。垃圾进,垃圾出——解析阶段丢的信息,后面再也找不回来。

2. 切片切碎了语义

固定长度切片把一个完整段落切成两半,前半段在 chunk_12,后半段在 chunk_13。用户问的问题恰好需要完整上下文,结果两个 chunk 的相似度都不够高,都没被召回。

3. 向量检索"看起来相关"

向量相似度衡量的是语义接近度,不是事实相关性。用户问"2024 年 Q3 营收",可能召回一堆提到"营收"但年份不对的片段,因为语义上确实很接近。

4. 上下文塞满了噪声

召回 10 个 chunk,其中 6 个其实没用。LLM 的注意力被稀释,反而更容易产生幻觉。召回越多不一定越好,关键是要准。

5. 答案无法追溯

用户问"这个结论哪来的",系统答不上来。没有引用来源的 RAG,在企业场景里几乎不可用——没人敢为一个"黑箱答案"负责。


二、一个完整的 RAG 流水线长什么样

┌─────────────┐
│  文档入库    │  PDF/Word/HTML/图片 → 解析 → 清洗 → 切片
└──────┬──────┘
       ↓
┌─────────────┐
│  向量化      │  Embedding 模型 → 写入向量库
└──────┬──────┘
       ↓
┌─────────────┐
│  检索        │  用户 Query → 向量化 → 向量检索 + BM25 → 混合召回
└──────┬──────┘
       ↓
┌─────────────┐
│  重排序      │  Reranker 对召回结果重新打分,取 Top-K
└──────┬──────┘
       ↓
┌─────────────┐
│  上下文组装  │  去重 + 排序 + 引用标注 + 窗口裁剪
└──────┬──────┘
       ↓
┌─────────────┐
│  生成        │  LLM 基于上下文生成答案 + 引用来源
└──────┬──────┘
       ↓
┌─────────────┐
│  评估        │  相关性 / 忠实度 / 召回率 / 延迟 / 成本
└─────────────┘

每个环节都可以独立优化,也都有各自的坑。这个系列会逐个拆解。


三、为什么现在写 RAG 系列?

2024 年的 RAG 还在"跑通就行",2025-2026 年的 RAG 已经进入工程化深水区:

  • 评估标准化:RAGAS、DeepEval、TruLens 让 RAG 效果可以量化对比,不再凭感觉
  • 检索混合化:纯向量检索被证明不够,Hybrid Search(向量 + BM25 + Rerank)成为标配
  • 架构多样化:GraphRAG、Agentic RAG、Self-RAG 等新范式不断涌现
  • 可信要求提高:企业场景要求答案可追溯、幻觉可控、引用可查

换句话说,RAG 的门槛变高了——会调 faiss.add() 已经不够,需要理解整条链路的每个环节。


四、这个系列怎么写?

不堆概念,不讲"什么是向量数据库"这种基础科普。每篇聚焦一个具体环节,给出:

  • 问题:这个环节常见的坑是什么
  • 方案:当前业界的主流解法
  • 代码:可运行的 Python 示例
  • 指标:怎么量化这个环节的优化效果
  • 选型建议:什么场景选什么方案

系列规划(10 篇):

篇序主题核心问题
1RAG 为什么还在被低估?全景认知(本篇)
2文档解析与切片PDF/表格/图片怎么处理,切片策略怎么选
3Embedding 与向量检索模型选型、向量库对比、多语言支持
4召回优化:Hybrid SearchBM25 + 向量 + Reranker 怎么配
5上下文组装窗口大小、去重、引用标注、防污染
6RAG 评估体系RAGAS/DeepEval,怎么建测试集
7高级 RAG 模式GraphRAG / Agentic RAG / Self-RAG
8幻觉控制引用强制、可追溯、"不知道就说不知道"
9性能优化缓存策略、预计算、流式输出、QPS
10实战:企业知识库问答从入库到上线,完整走一遍

总结

RAG 不是"调个库就完事"的玩具,而是一条需要精细调优的工业流水线。把每个环节拆开看,问题就没那么可怕了。