外观
RAG 评测与生产工程专项面试题
目录
1. 使用说明
- 对应知识主题:RAG 评测与生产工程与多模态、监控和故障定位篇;
- 角色:资深面试官从分层评测追问到版本门禁与故障回流,高级技术应聘者负责给出指标、Trace、SLO 和证据边界;
- 回答顺序:先用 1~3 句专业短答,再用生活化解释;语料、解析、索引、检索、上下文、生成、系统和业务必须分层;
事实红线| 不使用单一总分代替根因分析,LLM-as-a-Judge 不是绝对真值,门禁阈值与效果数字必须由项目实测;
- 题目数量:7 题,严格覆盖 L1~L7。
阅读图例|
L1~L2概念与边界 ·L3~L4原理与实现 ·L5工程 ·L6架构 ·L7项目复盘答案层级| 必答结论 · 小白解释 · 加分项 · 高频误区 · 下一问
2. 递进路线
图:RAG 评测与生产工程 L1~L7 递进路线
替代文本: L1 八层评测对象 → L2 指标边界 → L3 样本与指标原理 → L4 Trace/版本实现 → L5 线上故障闭环 → L6 发布门禁架构 → L7 示例生产化复盘。
图表加载中…
读图结论: 蓝色阶段建立概念与边界,紫色阶段进入原理与实现,橙色和青色阶段验证工程与架构能力,绿色阶段用项目证据完成复盘。
题链先拆开“哪里错”和“怎样量化”,再把评测样本、Judge、Trace 和版本矩阵落到实现,最后检验能否用灰度、回滚和失败入库形成持续生产闭环。
图:RAG 从离线门禁到失败样本回流的发布闭环
替代文本: 候选版本清单先在冻结门禁集上完成语料、检索、生成、性能与安全分层评测,通过后才进入影子和灰度流量;线上 Trace、SLO、用户反馈和安全事件触发回滚或降级,失败样本经脱敏、人工复核和根因标注后进入滚动回归集,只有经独立审查的代表性样本才晋级到冻结门禁集。
图表加载中…
读图结论: 生产级 RAG 的评测不是一次性测试,而是“离线拦截回归 → 影子/灰度验证分布变化 → 线上 Trace 定位 → 经审核失败样本驱动下一轮门禁”的受控闭环。
这张图特别区分了“滚动回归集”与“冻结发布门禁集”:前者快速吸收经复核的真实失败,后者保持独立性并需受控晋级,避免边调参边污染最终门禁。线上越界时也不先继续调 Prompt,而是先降级或回滚、保留版本矩阵与 request_id,再用分层 Trace 确定第一个偏离点。
3. 一问一答
第 1 题|L1 概念|为什么 RAG 不能只用一个端到端准确率或总分评测?
核心考察点|RAG 因果链、责任边界和可归因评测
面试官提问
请给出完整分层,并说明同一错误答案可能来自哪些环节。
30 秒专业短答
生产 RAG 应分为语料、解析、索引、检索、上下文、生成、系统和业务八层评测,因为一个错答可能来自事实不存在、解析丢失、索引陈旧、召回失败、上下文截断、生成不忠实、服务超时或业务任务未完成。单一总分会掩盖根因和长尾分桶,无法指导修复与回滚。
小白解释
餐厅评分低可能是食材、切配、库存、点单、摆盘、烹饪、送餐或顾客任务任一环出错;只看一个总分,不知道该换厨师还是补库存。
- 合格线| 明确八层对象,并说明端到端结果无法定位根因;
- 加分项| 每层给出稳定 ID、版本、输入输出和可重放证据;
- 高频误区| 只看答案准确率、RAGAS 总分或几个成功 Demo;
- 下一问| 分层后,需要为检索、答案、引用、拒答和系统分别选择指标。
第 2 题|L2 边界|Correctness、Groundedness、引用、拒答和 LLM Judge 有何边界?
核心考察点|事实正确、证据忠实、引用支持、选择性回答和自动评审边界
面试官提问
请给出“答对但无证据”和“忠实复述旧文档”两个反例。
30 秒专业短答
Correctness 判断答案是否符合权威事实,Groundedness 判断本次答案主张是否受给定证据支持;引用还要检查 claim 是否由当前、有权版本真正支持,拒答需同时评估误拒与漏拒。模型可能脱离证据猜对,也可能忠实复述错误旧文档;LLM Judge 只能作为经人工校准、固定版本和分项 rubric 的辅助裁判,不是绝对真值。
小白解释
学生可能没看材料却碰巧猜对,也可能认真照抄一本过期教材而答错;页脚挂了参考书名,也不代表那一页真的支持答案。机器阅卷员也会偏爱某种表达,所以要用人工标准卷校准。
- 合格线| 五类概念不混淆,Judge 不作唯一真值;
- 加分项| 说明 Citation Precision/Recall、Abstention Precision/Recall 与高风险人工复核;
- 高频误区| 把 groundedness 等于 correctness,或看到引用就判可信;
- 下一问| 指标边界明确后,要设计能计算这些指标且防止泄漏的评测样本。
第 3 题|L3 原理|一条合格的 RAG 评测样本应包含什么,Recall、MRR 与 nDCG 各测什么?
核心考察点|样本契约、检索指标含义、多证据完整性和评测泄漏
面试官提问
请覆盖可回答性、多证据、权限、时间版本和数据切分。
30 秒专业短答
样本至少包含 query_id、answerable、必要证据 ID、参考事实、allowed_scope、as_of_time/corpus_version、查询分桶与风险标签。Recall@k 衡量必要证据覆盖,MRR 强调第一个相关结果位置,nDCG@k 适合分级相关性排序;多跳题只命中一个证据时,MRR 可能很高但答案仍不完整。相近改写应按来源、意图簇或时间隔离,避免调参与最终测试泄漏。
小白解释
每道考题不只写标准答案,还要写允许看的资料、截止日期、哪些页缺一不可和它属于哪类风险。第一个正确页很靠前不代表两页证明都找齐,也不能把同一道题改几个字后同时放进练习册和期末卷。
- 合格线| answerable、evidence、scope/version、分桶;区分 Recall/MRR/nDCG;
- 加分项| 无证据样本不硬算普通 Recall,报告样本量、分桶和不确定性;
- 高频误区| 只有参考答案没有证据标注,或用 MRR 代表多证据完整性;
- 下一问| 有评测样本后,还要让一次线上输出能够绑定全部版本并重放每层结果。
第 4 题|L4 实现|如何设计可重放 Trace 和 RAG 版本矩阵?
核心考察点|版本矩阵、分层 Trace、缓存可追溯性与隐私
面试官提问
请说明最小字段、缓存影响和隐私边界。
30 秒专业短答
Trace 应关联 request_id、脱敏身份、raw/normalized/rewrite query、corpus/parser/chunker、embedding/index/retriever/reranker、每路候选、过滤理由、final_context、model/prompt、引用、拒答、分阶段耗时、用量、缓存与降级状态。发布单元应绑定不可变版本矩阵而非只记 model 名;高基数 ID 放 Trace/日志,敏感原文按最小化、脱敏、加密、访问审计和保留期治理。
小白解释
每道菜要有一张追踪卡,写清食材批次、切配版本、厨师、上菜顺序和是否用了备用方案;只有这样才能复做。顾客隐私不能贴到大厅统计看板,只能放在受控档案里。
- 合格线| 覆盖数据到模型全部关键版本、候选与 final_context;
- 加分项| 缓存键按层绑定 entitlement/policy、语料/索引、上下文哈希和模型版本;
- 高频误区| 只记模型名或最终答案,或把 user_id/run_id 当无界 Metric 标签;
- 下一问| 有可重放证据后,继续演练质量下降、p99 激增或缓存泄露的生产闭环。
第 5 题|L5 工程|线上 RAG 质量或稳定性突然下降,如何止损、定位和防复发?
核心考察点|风险控制、证据归因、恢复验证和事故资产化
面试官提问
请以“偶发检索为空”或“回答跑偏”为例,给出止损、版本固定、逐层证据、恢复验证和防复发闭环。
30 秒专业短答
先停止扩量并按风险回滚或降级,固定失败 request_id、身份和完整版本矩阵,再从语料、Chunk、索引、查询、候选/过滤、融合/重排、final_context 到生成寻找第一个偏离点。偶发空召回应对比节点、别名、缓存、超时和各层 candidate_count;回答跑偏则先判断正确证据是否进入 final_context,再区分检索、窗口截断与生成忠实度。修复后用原请求和相邻分桶做离线重放、影子/灰度验证,并把样本、指标、告警和 Runbook 加入发布门禁。
小白解释
高峰期少数外卖拖很久时,先暂停继续加单,找到具体订单,再看是厨房排队、骑手等待还是顾客地址问题;修好后要做高峰演练和报警,不能只说“现在看起来恢复了”。
- 合格线| 止损→固定版本→逐层重放→修复→离线/灰度验证→防复发;
- 加分项| 给出 chunk_id、score/rank、index_version、filter_reason、rerank_delta、final_context_tokens、truncation 和 degraded 等具体字段;
- 高频误区| 立即换模型或无界重试,修完个例却不加入回归集;
- 下一问| 单次事故能闭环后,需要把评测变成候选版本无法绕过的发布控制环。
第 6 题|L6 架构|如何建立 RAG 的持续评测、灰度和回滚门禁?
核心考察点|分层门禁、基线比较、灰度、回滚和反馈闭环
面试官提问
请说明离线门禁、影子/灰度、线上观测和失败回流如何连接。
30 秒专业短答
候选版本先经过确定性单测、语料/解析/索引完整性、检索指标、生成正确性/忠实度/引用/拒答、性能和安全测试,再在冻结门禁集与分桶上对比基线;通过后进入影子与小流量灰度,按版本监控质量、p95/p99、成本、新鲜度和安全事件。指标越界要能原子回滚版本与缓存命名空间,线上失败经脱敏、人工复核和根因标注后进入滚动集与下一轮门禁。
小白解释
新配方先做卫生、口味和高峰测试,再让少量顾客试吃;出现异常立刻换回旧配方。真实差评经过核实后变成下一次必考题,让同类问题不能再次混过发布考试。
- 合格线| 离线→影子/灰度→线上观测→回滚→失败入库;
- 加分项| 门禁集与调参集隔离、Judge 人工校准、降级结果独立 SLO/缓存;
- 高频误区| 只做一次离线总分,或把未经复核的用户点赞直接当真值;
- 下一问| 最后用示例生产化项目说明技术难点、可验证亮点与未知边界。
第 7 题|L7 项目复盘|如何把内部运维 RAG 原型升级为生产服务?
核心考察点|生产化架构、证据化亮点、风险闭环与未知止步
面试官提问
请从难点、亮点、生产风险和验收证据复盘;当前能否报告上线指标?
30 秒专业短答
这是源文档中的示例设计:为语料、解析、索引、检索、上下文、生成和服务建立稳定 ID、版本与分层 Trace,用冻结门禁集、影子/灰度、权限感知缓存和原子回滚控制发布。难点是跨组件归因、版本组合和质量/延迟/成本/安全权衡;亮点必须由控制变量重放、撤权测试和回滚演练验证。代表性风险是旧索引、Reranker 长尾、无答案强答和跨用户缓存泄露,均要闭环为回归样本。仓库没有真实运行证据,因此不能报告准确率、SLO、成本或业务收益。
小白解释
这是把试营业厨房改造成可审计餐厅的设计:每道工序有批次记录,新版本先试菜,出问题能换回旧版,真实投诉会进入下次检查表。现在能说明怎么验收,不能凭空写营业成绩。
- 合格线| 分层评测、版本 Trace、灰度回滚、权限和失败回流;
- 加分项| 明确代表性故障的定位字段、止损方式、验证证据和适用边界;
- 高频误区| 用“总分提升”代替归因,或虚构线上事故与收益;
- 下一问| 本组题结束;后续可把相同的运行时、权限和可观测原则迁移到 Agent 系统。
4. 自测与评分
- [ ] 为一个小知识库定义八层评测对象和每层至少一个证据字段;
- [ ] 构造“答对但不忠实”和“忠实但错误”的样本并说明判定;
- [ ] 实现 Recall@k、MRR、nDCG、引用和拒答指标的边界测试;
- [ ] 为索引陈旧、p99 激增和跨权限缓存各写一条故障闭环;
- [ ] 按准确性、原理深度、工程意识、项目表达、沟通结构各 0~5 分评分;
- [ ] 第 7 题必须声明示例边界,不得编造 SLO、指标或实际事故。
5. 事实边界与参考资料
- 单一事实源:RAG 评测与生产工程与多模态、监控和故障定位篇;
- 源文档依据包括 BEIR、RAGAS、ARES 原始论文,以及 OpenAI Evals、OpenTelemetry、NIST 和 OWASP 官方资料;
- Judge 模型、Prompt、评审量表、门禁阈值、SLO、采样与保留策略必须在目标业务中校准和审查;
当前无法确认| 示例生产服务的数据规模、真实质量指标、延迟、成本、安全事件与业务效果。
6. 总结
一句话记忆: 生产 RAG 要把每次输出拆成可归因层,并用版本门禁、灰度、Trace 和失败回流持续控制。
- 语料、解析、索引、检索、上下文、生成、系统和业务不能被一个总分替代;
- Correctness、Groundedness、引用与拒答回答不同问题;
- LLM Judge 是经人工校准的辅助信号,不是绝对真值;
- request_id、final_context 和完整版本矩阵是复现与回滚基础;
- 没有实测与审计证据时,只能说明设计和验证计划,不能报告效果。