2026-06-28·10 分钟
RAG 上生产环境的 7 个坑
RAG大模型工程化
RAG(检索增强生成)是当下最务实的 LLM 落地方式。但「能问答」和「能生产用」之间,隔着 seven 个坑。
1. 切片策略决定了上限
按固定字数切,经常把一个完整语义劈成两半。优先考虑按标题/段落结构切,并对小段落做合并。
2. 召回 ≠ 相关
向量相似度高的,不一定是用户要的。混合检索(向量 + 关键词 BM25)通常比纯向量稳。
3. 没有重排(rerank)就没有精度
召回 20 条,用 rerank 模型挑 top 4 再喂给 LLM,效果立竿见影。
4. 上下文窗口不是越大越好
塞太多 chunk 会稀释重点、增加幻觉。精炼 > 堆量。
5. 缓存命中率是隐形的成本杀手
# 对问题做归一化后再查缓存
key = normalize(question)
if cache.exists(key):
return cache.get(key)6. 一定要有评测集
没有 ground truth 的 RAG 就像没有单测的后端:你不知道哪次改动把准确率搞崩了。
7. 降级方案
模型挂了、超时了怎么办?兜底返回「我不确定」,好过返回一堆幻觉。这又是后端老本行了。
想直接问我关于这篇文章或我的经历?
和我聊聊 →