FFengPT
← 返回博客
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. 降级方案

模型挂了、超时了怎么办?兜底返回「我不确定」,好过返回一堆幻觉。这又是后端老本行了。

想直接问我关于这篇文章或我的经历?

和我聊聊 →