RAG 的基本流程是怎样的?

算法工程师第 14 / 15 题答题框架
参考思路:离线(切块/向量化/入库)→在线(检索改写→topK 召回→重排→拼 prompt 生成)→评估(召回率/忠实度)→常见问题(切块粒度/幻觉)。

五个经典回答示范

回答一 · 思路口述版

「RAG 分离线在线两条链路。离线:文档解析切块——按语义段落切,块大小 300 到 800 token 加重叠;向量化入向量库,带元数据。在线:用户问题先做改写补全上下文,检索 topK,可加重排精排,拼进提示词生成,答案带引用。评估看两端:检索端的召回率、生成端的忠实度与相关性。」

回答二 · 1-3年经验版

我讲企业知识库落地踩的坑:切块一开始按固定 512 字硬切,表格被拦腰斩断——改成结构感知解析,表格整块保留并转 markdown;检索纯向量漏关键词精确匹配,改成 BM25 加向量混合检索再加 RR 融合;topK 从 10 降到重排后取 3,token 降四成准确率反升。评估集 200 个真实问题每月回归,是迭代依据。

回答三 · 资深版

我把 RAG 当检索系统设计:召回层多样性策略——MMR 去冗余、多路召回、查询分解应对复杂问题;排序层 cross-encoder 重排收益最大;生成层可控性——引用锚点、拒答机制(检索置信不足时明确说不知道)抑制幻觉;数据层持续运营——badcase 回流标注、索引增量更新、权限过滤在检索前做。RAG 的天花板是检索质量,不是模型。

回答四 · 追问应对

追问「怎么评估」:检索端 hit rate 与 MRR,生成端忠实度(答案是否被原文支撑)、答案相关性,工具用 RAGAS 类框架加人工抽检;「幻觉怎么减」:拒答阈值、引用强制、温度调低、提示词约束只答原文范围;「冷启动文档少怎么办」:先跑起来积累 badcase,问题库驱动切块与检索策略调优。

回答五 · 反面示范

『RAG 就是把文档全塞向量库然后让大模型回答,搜出来什么用什么,答错了就是模型不行换个更新的模型。』——点评:忽略了切块、混合检索、重排、评估这四个真正决定效果的环节;『换模型』的归因习惯会一直掩盖检索层问题。

怎么练这道题
  1. 打开 模拟练习,选择「算法工程师」方向,限时 3 分钟作答本题。
  2. 对照上方答题框架,逐点检查:哪些要素没覆盖、哪里表达啰嗦。
  3. 用自己项目的真实经历替换框架中的占位内容,重讲一遍并录音回听。

这类题在真实面试中常被追问细节,
建议进入限时模式练一遍。

开始限时演练