Appendix C

Interview Question Index 面试题索引

本页由 reference/gen_appendix.py 从各章自动生成

本页从全书 29 章(不含导读)的章末自测中自动聚合了 97 道题,按题型分组,便于面试前按题型集中复习。每题链接回原章节,参考答案与推导过程在原章节中默认折叠——建议先自己回答,再展开对照。

配套练习:想练开放式的 Agent 设计题(限时交卷、逐层追问),见姊妹篇《Agent 设计面试手册》。

怎么用这一页。「面试题改编」与「架构评审」两组最接近真实面试的提问方式,优先刷这两组;「估算题」「计算题」考察的是能不能当场算出量级,需要动笔而不只是看答案;「场景判断」与「决策题」考察的是取舍意识,答案的价值在推导链条而非结论本身。

面试题改编 22 题

「上下文窗口从 8K 扩到 128K,是不是就不用做 RAG 了?」
Prompt caching / prefix caching 和 PagedAttention 是什么关系?没有分页能做前缀缓存吗?
连续批处理和 PagedAttention 分别解决什么问题?只做其中一个会怎样?
「为什么大模型量化比小模型难?」
「为什么并行验证多个 token 几乎不增加耗时?这个前提在什么条件下不成立?」
「你们的 LLM 服务延迟多少?」——这个问题该怎么回答才算专业?
「用一个 LLM 来判断该路由到哪个模型,这个设计有什么问题?」
「设计一个支撑 1000 万日活的 AI 助手,需要多少 GPU?」
「既然可以微调把公司知识训进模型,为什么还要做 RAG?」
「都 2026 年了,为什么检索系统还在用 BM25 这种九十年代的算法?」
「上下文窗口迟早会到千万级,RAG 是不是过渡技术?」
「什么时候不该用 agent?」
「你会怎么设计一个多 agent 系统?」
「为什么 agent 的评估比模型的评估难?」
「什么时候应该微调?」
「LoRA 为什么有效?它的低秩假设合理吗?」
「微调项目里最难的部分是什么?」
「SFT 和 DPO 分别解决什么问题?什么时候需要 DPO?」
「怎么防御 prompt injection?」
「你们怎么解决幻觉问题?」
「你怎么保证 LLM 应用的可用性?」
「把采样调到最保守,能不能让 LLM 工作流可复现?你会怎么测试?」

架构评审 11 题

某 RAG 系统的 prompt 结构为:`[检索到的 5 篇文档] + [system prompt] + [对话历史] + [用户提问]`,检索结果按相关性分数降序排列。指出其中的缓存设计问题。
某 RAG 系统效果不佳,团队的排查计划是:① 换更强的 embedding 模型 → ② 调 prompt → ③ 加 rerank → ④ 换更大的生成模型。指出这个计划的问题。
某团队的 RAG 评估方案:每周从线上随机抽 100 条问答,由两位工程师人工打分(好/中/差),记录「好」的比例作为质量指标。指出问题并给出改进。
某 agent 设计:暴露一个通用工具 execute_sql(query: string),让模型自己写 SQL 查数据库。评审这个设计。
某 agent 的记忆方案:每轮对话结束后,把完整对话内容向量化存入向量库;下一轮检索 top-5 相关历史拼进上下文。评审这个设计。
某订单处理 agent 的设计如下,找出其中的问题:「用户提出请求 → agent 自主规划 → 依次调用 查订单 / 改地址 / 发退款 / 发通知邮件 四个工具 → 循环直到 agent 认为完成 → 返回结果。评估方式:每周抽 50 条线上会话人工打分。」
某团队的 LLM 监控方案:记录每次请求的耗时与是否报错,每月对账单做一次复盘。指出问题并给出最小可行的改进。
某邮件助手 agent:读取用户收件箱 → 总结邮件 → 可以代为回复和转发。找出安全问题并给出改进。
为一个刚起步的 LLM 产品设计评估体系,团队只有 3 个人。你会建议先做什么、后做什么?
为一个 RAG 客服产品设计降级方案,假设上游模型 API 完全不可用 4 小时。用户在这段时间应该看到什么?
一个客服系统开启 streaming,检测到 JSON 可以解析就立即执行退款;失败由 SDK 自动重试。指出至少四处契约缺口。

决策题 4 题

一个文档问答产品,日均 10 万次调用,目前全部走旗舰模型。小模型价格是旗舰的 1/15,实测在 60% 的请求上质量无差异。给出你的方案,并说明先做什么、后做什么。
产品要上线代码助手:只知道峰值 40 QPS、输入 P50 6K token、输出均值 150 token,SLA 要求 TTFT P95 < 1.5s。能否据此给出 GPU 数与月成本?请给出可执行的容量规划方案。
某团队说:「我们微调了模型,让它记住公司的 500 条产品规格。」这个方案会遇到什么问题?
一次工具调用超时后,你不知道下游是否成功。什么时候可以自动重试?

场景判断 24 题

产品要支持中英双语。团队按英文语料测出「平均每次请求 500 token」并据此做了成本预算和限流阈值。上线后中文用户占多数,会发生什么?
以下哪种负载从 PagedAttention 获益最大?A. 单用户本地跑批量翻译,序列长度固定 512;B. 面向公网的聊天服务,请求长度从 20 到 4000 token 高度不均;C. 离线批量 embedding 计算。
某服务上线后用户反馈「回答有时会卡顿一下再继续吐字」,但平均吞吐指标很漂亮。最可能的原因是什么?怎么验证?
团队把线上模型从 FP16 换成 4-bit,公开基准测试分数只掉了不到 1%,于是直接上线。两周后客服反馈「模型偶尔会把 JSON 格式写错」。这里的方法论错误是什么?
以下四种负载,哪些适合开投机解码?A. 面向公网、GPU 长期打满的聊天服务;B. 本地单人用的代码补全插件;C. 夜间批量跑十万条文档摘要,只关心总耗时;D. 内部低频使用的长文档问答,GPU 大部分时间空闲但要求响应快。
监控显示 TTFT 的 P50 是 400ms 但 P99 飙到 9 秒,而 TPOT 的 P50/P99 都很平稳。问题最可能出在哪?
团队开启了 prompt caching,但账单几乎没变。排查方向按什么顺序展开?
以下四类知识,各应该放在参数里还是索引里?A. 公司请假审批流程;B. 中文语法与写作规范;C. 今天的库存数量;D. 本行业的专业术语体系。
四类文档各该怎么切?A. 法律合同;B. 客服对话记录;C. API 参考文档;D. 长篇会议录音转写稿。
用户搜「订单 A7X-99210 为什么没发货」,纯向量检索完全找不到这个订单的记录,但语义相近的其他订单记录排在前面。原因是什么?怎么修?
三个需求各选一条路(RAG / 长上下文 / fine-tune):A. 让模型掌握公司最新的退款政策;B. 让模型稳定输出符合特定 schema 的 JSON;C. 让模型用本行业资深专家的方式做推理和措辞。
三组分层指标各指向什么问题、该怎么修?A. Recall@20 = 45%;B. Recall@20 = 92%、Recall@3 = 50%;C. Recall@3 = 88%、groundedness = 60%。
agent 经常在两个功能相近的工具之间选错。应该怎么修?为什么调 system prompt 通常不管用?
四个任务各选哪种模式?A. 把一段中文翻译成英文;B. 排查一次线上故障;C. 生成一份季度报告(需查 5 个固定数据源);D. 写一个函数并保证测试通过。
一个客服 agent 要跨会话记住用户信息。以下四项各该怎么存?A. 用户偏好用英文交流;B. 用户上周投诉过订单 #123 未送达;C. 用户的信用卡后四位;D. 上一轮工具返回的 2000 字物流详情。
四个需求,各该用单 agent 还是多 agent?A. 调研某技术方向,需查阅几十个来源;B. 重构一个包含 8 个文件的模块;C. 处理客服工单:分类 → 检索知识库 → 生成回复;D. 对一份财报做多角度分析(财务、竞争、风险)。
团队用 LoRA 微调后效果不理想,提议把 rank 从 16 提到 128。这个判断可能错在哪?应该先检查什么?
微调后模型在目标任务上准确率从 76% 提到 95%,团队准备上线。你会要求补做什么检查?
微调模型在目标任务上全面超过教师,团队想直接全量替换。你会提出什么?
用户投诉「最近回答质量下降了」,但所有监控指标正常。你按什么顺序排查?
企业知识库助手上线后,用户反馈「有时给的答案在文档里根本找不到」。按什么顺序排查和修复?
离线评估分数提升明显,但上线后线上指标毫无变化。可能的原因有哪些?
某天开始,用户反馈回答「变啰嗦了、而且经常拒绝回答」。你的代码一行没改。怎么排查?
启用严格 JSON Schema 后,是否可以删除业务校验?为什么?

场景判断组 1 题

四个需求各选一条路:A. 客服要能回答最新的退款政策;B. 需要稳定输出符合 schema 的 JSON;C. 需要模型用本公司资深法务的方式审阅合同条款;D. 模型总在特定行业术语上理解错误。

估算题 11 题

一个中文客服系统:system prompt 800 字,每轮用户输入约 60 字,模型回复约 200 字,平均对话 6 轮。不开任何缓存,估算单次完整对话消耗的 token 量级。
batch=8 的静态批处理,8 条请求的生成长度分别是 30、40、50、60、700、80、90、100 个 token。有多少比例的「槽位×迭代」是空转的?
一张 24GB 显存的卡,要跑 13B 模型并支持尽可能高的并发。用 FP16 与 INT4 各能给 KV cache 留多少空间?(该模型 40 层、hidden 5120,KV cache 按 FP16 计)
草稿长度 K=4,实测接受率 α≈0.7。草稿模型每次前向的成本是目标模型的 1/10。估算净加速比。
一个流式问答服务:TTFT P95 = 800ms,TPOT P95 = 40ms,平均输出 500 token。用户的 E2E 体感是多久?如果把模型换成一个小一半、TPOT 降到 25ms 但 TTFT 升到 1.1s 的方案,值得吗?
客服机器人:system prompt + 工具定义 + few-shot 共 3000 token 固定不变,每轮用户提问约 100 token,日均 50 万次调用。假设缓存读取价格为普通输入的 1/10,开启缓存能省下多少比例的输入成本?
级联方案:小模型成本 1 单位、延迟 500ms;大模型成本 12 单位、延迟 2000ms;升级率 25%。对比全走大模型,成本与平均延迟各如何变化?P99 延迟呢?
某服务并发 60 条请求,平均序列长度 4K,模型 32 层、hidden 4096、FP16 服务。KV cache 需要多少显存?若要在单张 80GB 卡上跑,还剩多少给权重?
法律团队要审查一份 8 万 token 的合同,会围绕它连续提问约 30 个问题。用 RAG 还是全文塞进上下文?
某 agent 单步成功率 92%,完成典型任务需 12 步。端到端成功率是多少?若要把它提到 80% 以上,有哪些手段、各自需要做到什么程度?
某 agent 在评估集上单次成功率 85%。若业务要求「同一任务连做 10 次都不出错」的概率不低于 90%,单次成功率需要达到多少?这个要求现实吗?

计算题 1 题

一个 32 层、hidden_size 4096 的模型以 FP16 服务,每个 token 的 KV cache 是多少?一条 4K 上下文的请求峰值占多少?

概念题 23 题

为什么模型经常数不清一个单词里有几个字母、也算不好两个数字的大小比较?
为什么 KV cache 的占用随 batch size 和序列长度都是线性增长?这对「能服务多少并发」意味着什么?
为什么解码阶段增大 batch size 能几乎线性提升吞吐,而且单请求延迟只轻微变差?这个规律什么时候失效?
为什么仅权重的 INT4 量化在本地单用户场景提速明显,在高并发服务端却可能收益有限?
草稿模型质量很差会不会导致输出质量下降?为什么?
为什么增大 batch size 几乎总能提高吞吐,却不总能提高 goodput?
为什么 prompt caching 能降低 TTFT,却对 TPOT 毫无帮助?
为什么说路由错误的代价是不对称的?这如何影响阈值设定?
为什么容量要回放峰值窗口 trace,而成本要按整月实际用量估算?两者不一致会导致什么?
为什么 RAG 能缓解幻觉,却不能根治幻觉?
为什么增大 chunk size 会降低检索精度?「小块检索、大块生成」为什么能同时解决两个问题?
为什么交叉编码器(cross-encoder)精度更高,却不能直接用来做全库检索?
为什么 groundedness(忠实度)比「答案正确率」更适合作为生成层的核心指标?
「模型调用了删除接口,把生产数据删了」——这个说法在技术上哪里不准确?正确的表述和防护点在哪?
为什么「每轮滑动窗口」这种最简单的记忆策略,在成本上可能比「累积 + 偶尔压缩」更贵?
「多 agent 的性能提升中,约八成方差可由 token 用量解释」——这个发现对你评估多 agent 方案有什么方法论上的影响?
为什么 LoRA 在推理时不增加任何延迟?这和 adapter 类方法有什么区别?
用强模型的输出蒸馏小模型时,为什么不能直接把教师的全部输出拿来训练?
为什么 eval set 必须按时间切分,而不能从训练数据里随机切一部分出来?
为什么传统的「错误率 + 延迟 + 饱和度」监控体系,用在 LLM 应用上会留下致命盲区?
为什么 SQL 注入能被参数化查询根治,prompt injection 却不能?
为什么说「让模型自己报告置信度」不是一个可靠的方案?有哪些更好的信号?
为什么说「未校准的 LLM 评委比没有评委更危险」?