时长 6–7 小时:真题(1.5h 作答 + 0.5h 对答案)· 自编模拟卷(1.5h + 0.5h)· 错题溯源(1.5h)· §3 补漏四讲(1h)
考试范围 Lecture 5–8,也就是第 3、4 周的全部内容:LLM 调优(偏好、RLHF、PPO、DPO)、LLM 推理(推理模型、GRPO、测试时缩放)、智能体化的 LLM(RAG、工具、智能体)、LLM 评测(评委、偏差、基准)。
配套代码
w5day2_checks.py(纯 numpy):模拟卷全部计算题的标准答案:Bradley-Terry 与奖励模型的损失、PPO 裁剪的四种情况、DPO 的损失与梯度权重、best-of-n 的 KL、GRPO 的组内优势、pass@k / pass^k / cons@k、智能体的错误累积、多轮工具调用的 token 数、RRF 与 NDCG、κ、标准误与 Elo今天的目标:在闭卷、计时的条件下做第二次真实检验;把每一道错题定位到具体的小节并重学;补上 Lecture 5–6 里我们只提了一句的几个考点。
§0 今天怎么安排
和期中那天(Week 3 Day 1)一样:先考试,后读 §3。§3 的内容就是考点,先读了等于提前看答案。
| 时段 | 做什么 | 要点 |
|---|---|---|
| 上午 1.5h | 2025 期末真题(§1) | 闭卷,严格 90 分钟 |
| 0.5h | 对答案、打分 | 选择题直接对;简答题按官方答案的要点逐条给分,没写到的要点不给分 |
| 下午 1.5h | 本文的模拟卷(§C) | 同样闭卷计时。计算题比真题多 |
| 0.5h | 对模拟卷答案(§D) | 计算题的数字来自 w5day2_checks.py |
| 1.5h | 错题溯源(§2) | 每道错题找到对应小节,合上书重推一遍 |
| 1h | 补漏四讲(§3) | Lecture 5–6 的 slides 里有、我们只提了一句的点 |
今天要用到的旧结论:全部第 3、4 周。
§1 考试是什么样的
2025 年秋季学期的期末卷和答案在课程主页公开:
- 试卷:https://cme295.stanford.edu/exams/fall25-cme295-final.pdf
- 答案:https://cme295.stanford.edu/exams/fall25-cme295-final-solutions.pdf
结构:90 分钟、100 分、闭卷(不许带任何东西,也不许用 AI)。和期中一样,四个部分各 25 分:8 道选择题(1–2 分,单选)+ 2 道简答题(每道由两小问组成,3–4 分一问)。
| 部分 | 对应 | 选择题涉及 | 简答题的类型 |
|---|---|---|---|
| 1 | Lecture 5 LLM 调优 | SFT 的局限、奖励模型的输入、Bradley-Terry、KL 项的作用、DPO 的核心洞见、best-of-N、reward hacking、价值函数 | 列出 RLHF 的阶段并解释其中一个;比较 DPO 与 PPO(从加载的模型数量出发),说出仍然选 PPO 的理由 |
| 2 | Lecture 6 LLM 推理 | “推理”的定义、CoT、R1-Zero 的回答长度、GRPO 与 PPO 的区别、可验证奖励、“aha moment”、冷启动、蒸馏 | 解释 GRPO 的优势怎么算、它的计算收益;定义测试时缩放、列举控制思考预算的方法 |
| 3 | Lecture 7 智能体 | RAG 解决的局限、上下文检索、ReAct、谁执行函数调用、MCP、智能体与聊天机器人、编造工具的对策、A2A | 为什么有 1M 上下文还要 RAG、RAG 的挑战;工具调用的三步、工具报错时怎么办 |
| 4 | Lecture 8 评测 | Goodhart 定律、数据污染、LLM 当评委、成对评测、位置偏差、pass@k、MMLU、BLEU / ROUGE 的不足 | 定义冗长偏差、给出一种去偏的方法;SWE-bench 测什么、静态基准与动态排行榜的区别 |
从结构里能读出的三件事:
- 简答题几乎都是”列举 + 解释”:列出两个阶段 / 三个步骤 / 两种方法,再解释其中一个的作用。答题要先列全、再解释,每一点一句话,别只写一个点写得很深(§A.1)。
- 选择题的干扰项很”夸张”:错误选项常常带着”完全""严格""一定""所有任务”这类绝对化的措辞,或者把一个概念张冠李戴(把量化说成蒸馏、把 JavaScript 库说成 ReAct)。真正的考点在于你能不能一眼认出正确的那一个,而它通常就是讲义里那句核心定义。
- 计算很少,概念很多。和期中相比,期末几乎没有计算题。但面试会问计算(Day 5),所以本文的模拟卷多放了计算题。
§2 错题溯源表
每道错题,按下表找到对应的小节。重读不够,要合上书把那一段的推导或论证重写一遍。
2.1 Lecture 5:LLM 调优
| 考点 | 去哪里看 |
|---|---|
| 为什么 SFT 不够;比较比写容易 | Week 3 Day 2 §1.1–1.3 |
| 偏好数据的形式(单点 / 成对 / 列表)与收集配方 | Week 3 Day 2 §2.1;今天 §3.1 |
| Bradley-Terry、奖励模型的损失与梯度 | Week 3 Day 2 §2.2 |
| 奖励模型的结构(输入是提示 + 回答,输出一个标量) | Week 3 Day 2 §2.3 |
| 奖励模型的准确率天花板与偏见 | Week 3 Day 2 §2.4–2.5 |
| RLHF 的阶段与数据流 | Week 3 Day 2 §3.1 |
| reward hacking、过度优化、KL 约束 | Week 3 Day 2 §3.2–3.4 |
| RL 的形式化(智能体 = LLM,动作 = 下一个 token……) | Week 3 Day 3 §1.1;今天 §3.2 |
| 策略梯度与基线;价值函数、优势、GAE | Week 3 Day 3 §1.2–1.3、§2 |
| PPO-Clip 与 PPO-KL | Week 3 Day 3 §3.2–3.4;今天 §3.2 |
| 四个模型与显存;PPO 的难处 | Week 3 Day 3 §4.3–4.4 |
| best-of-N | Week 3 Day 2 §3.2;Week 3 Day 6 §2 |
| DPO 的推导(闭式最优解 → 隐式奖励 → BT → 损失) | Week 3 Day 4 §1–2 |
| DPO 与 PPO:省了什么、丢了什么、什么时候选 PPO | Week 3 Day 4 §5.1–5.2 |
| IPO / KTO / SimPO / ORPO;对齐税 | Week 3 Day 4 §4、§5.3 |
2.2 Lecture 6:LLM 推理
| 考点 | 去哪里看 |
|---|---|
| 推理的定义、推理模型与普通模型的区别 | Week 3 Day 5 §1.1–1.2;今天 §3.3 |
| 思维链为什么有效 | Week 2 Day 3 §5.1–5.2 |
| 推理的评测:pass@k、pass@1、cons@k | Week 3 Day 5 §5.1;今天 §3.3 |
| 可验证奖励(格式 + 正确性) | Week 3 Day 5 §2 |
| GRPO:组内优势、为什么不需要价值网络 | Week 3 Day 5 §3 |
| 回答越来越长的现象;Dr. GRPO、DAPO | Week 3 Day 5 §4 |
| R1-Zero 与 R1 的配方;“aha moment”;冷启动 | Week 3 Day 5 §1.3;今天 §3.4 |
| 蒸馏(用强模型的推理轨迹做 SFT) | Week 3 Day 5 §5.3;今天 §3.4 |
| 测试时缩放:并行、串行、搜索;控制思考预算 | Week 3 Day 6 §1–4;今天 §3.3 |
2.3 Lecture 7:智能体化的 LLM
| 考点 | 去哪里看 |
|---|---|
| RAG 解决的局限;为什么有长上下文还要 RAG | Week 4 Day 1 §1.1、§1.3 |
| 建知识库:收集、切分、嵌入;块大小与重叠 | Week 4 Day 1 §2 |
| 语义检索、双塔、交叉编码器 | Week 4 Day 1 §3.1;Week 4 Day 2 §4.1 |
| BM25、混合检索、RRF | Week 4 Day 2 §1–2 |
| HyDE、上下文检索 | Week 4 Day 2 §5.2–5.3 |
| 检索指标(Precision / Recall / RR / NDCG @k) | Week 4 Day 2 §3 |
| RAG 的挑战与故障地图 | Week 4 Day 1 §1.4 |
| 工具调用的三步;谁执行函数 | Week 4 Day 3 §1.2、§2.2 |
| 工具报错时怎么办 | Week 4 Day 3 §2.4 |
| 教模型用工具:训练与提示 | Week 4 Day 3 §3 |
| 工具太多、工具选择 | Week 4 Day 3 §4 |
| MCP 的动机与架构 | Week 4 Day 3 §5 |
| 智能体的定义、ReAct 循环 | Week 4 Day 4 §1–2 |
| A2A | Week 4 Day 4 §6.2 |
| 安全 | Week 4 Day 3 §6 |
2.4 Lecture 8:LLM 评测
| 考点 | 去哪里看 |
|---|---|
| 评测的两层含义;人工评分与 κ | Week 4 Day 5 §1–2 |
| BLEU / ROUGE / METEOR 及其不足 | Week 4 Day 5 §5 |
| LLM 当评委:做法、好处、单点与成对 | Week 4 Day 6 §1.1–1.3 |
| 最佳实践 | Week 4 Day 6 §1.4 |
| 位置、冗长、自我偏好偏差与对策 | Week 4 Day 6 §2.1–2.3 |
| 事实性的量化 | Week 4 Day 6 §3.1 |
| 智能体的失败模式(工具预测、工具调用、回答生成) | Week 4 Day 6 §3.2 |
| 四类基准:MMLU、AIME / PIQA、SWE-bench、HarmBench | Week 4 Day 5 §4.1 |
| τ-bench 与 pass^k | Week 4 Day 5 §4.2;Week 4 Day 4 §3.3 |
| 数据污染与预防 | Week 4 Day 5 §4.4 |
| Goodhart 定律;静态基准 vs 动态排行榜;Pareto 前沿 | Week 4 Day 5 §4.5 |
| Chatbot Arena、Elo 与 Bradley-Terry | Week 4 Day 6 §2.5 |
2.5 怎么记录
和期中一样,每道错题写一行进疑问清单,错因分类(概念没懂 / 推导不熟 / 记混了 / 审题错):
[期末 II.9] 只写了"组内平均",漏了"除以标准差"。错因:记混了。
回到 Week 3 Day 5 §3.2,重写了 Â_i = (r_i − mean)/std,以及"全对 / 全错的组没有信号"。
把期中和期末的错因放在一起看:如果同一类错因(比如”推导不熟”)反复出现,Day 4 的推导默写就重点练那一类。
§3 补漏四讲
3.1 偏好数据:三种形式与收集配方
三种形式(Lecture 5):一条”观察”是(提示,回答)。
- 单点(pointwise):每条观察一个分数(0.4、0.9……)。收集容易,但不同标注者的尺度不一致(Week 4 Day 5 §2)。KTO 就是用这种数据的(Week 3 Day 4 §4.2)。
- 成对(pairwise):同一个提示的两个回答,哪个更好。最常用:比较比打绝对分容易、更一致(Week 3 Day 2 §1.2)。
- 列表(listwise):同一个提示的多个回答排成一个顺序。 个回答的排序可以拆成 个成对比较( 时 6 对),也可以直接用 Plackett-Luce 建模(Week 3 Day 2 §2.5)。
收集成对数据的配方(Lecture 5):
- 为同一个提示生成一对回答:提示来自线上日志或一个参考分布;回答来自 SFT 模型(用一定的温度采样,保证两个回答不一样)、合成数据、或者对已有回答的改写。
- 标注哪个更好:人工评分(RLHF 里的 “HF” 就来自这里);或者代理(LLM 当评委、BLEU / ROUGE 等)。量表可以是二元的(更好 / 更差),也可以是更细的(“明显更好""略好”……,Llama 2 用它设置间隔项,Week 3 Day 2 §2.5)。
Lecture 5 的一句提醒:“模型行为不端,也可能是一个检查 SFT 数据质量的警钟。“偏好调优不是用来掩盖 SFT 数据问题的。
数据规模的量级(Lecture 5 引用 InstructGPT):奖励模型约 条比较,RL 阶段约 个提示(标签由奖励模型给出)。
3.2 RL 的形式化与 PPO 的两个变体
把强化学习的五个概念对应到 LLM 上(Lecture 5,Week 3 Day 3 §1.1 的精简版):
| 强化学习 | LLM |
|---|---|
| 智能体(agent) | LLM |
| 环境(environment) | token 序列 |
| 状态(state) | 到目前为止的输入 |
| 动作(action) | 下一个 token |
| 策略(policy) | 下一个 token 的概率分布 |
| 奖励(reward) | 人的偏好(由奖励模型近似) |
PPO 的两个变体(Schulman et al. 2017):
- PPO-Clip:裁剪新旧策略的概率比 ,防止一次更新太大(Week 3 Day 3 §3.2)。注意两个术语上的坑(Lecture 5 特别指出):它是一个要最大化的目标函数,不是损失;公式里的 常常指概率比,不是奖励。
- PPO-KL 惩罚:不裁剪,而是在目标里减去 ,惩罚策略分布的变化;原论文里 可以自适应地调整。两个”KL”要分清:原始 PPO 惩罚的是和上一轮策略(old)的 KL,为了稳定地一步步更新;LLM 的 RLHF 里,惩罚的是和参考模型(ref,也就是 SFT 模型)的 KL,为了防止 reward hacking、保住语言能力(Week 3 Day 2 §3.3)。Lecture 5:“如今,KL 散度是相对于参考(基座)模型的。”
PPO 真正最大化的是优势,不只是奖励(Lecture 5):优势 ≈ 奖励 − 基线,基线由价值函数给出。价值函数是 token 级的(“如果之后都按当前策略走,预期能拿到多少奖励”),和策略一起训练,标签就是奖励(Week 3 Day 3 §2)。期末卷的一道选择题就问”价值函数估计的是什么”。
PPO 的难处(Lecture 5):需要四个模型;要先训奖励模型(两阶段);超参很多;训练不稳定;很难找到一个监控训练的好指标;需要回答足够多样。于是有了两条”不做 RL”的路:best-of-N(推理时挑)和 DPO(训练时直接在偏好数据上做监督学习)。
3.3 推理:定义、指标与控制”思考”
“推理”的尝试性定义(Lecture 6):解决一个问题的能力。对比两个问题:“斯坦福 Transformer 课的课程编号是什么?“(查找记忆,不是推理)和”这只熊 2020 年出生,它现在几岁?“(需要多步推理)。
怎么认出一个推理模型:界面上有”思考摘要”(完整的思维链通常不展示给用户);API 的计费里有”推理 token”(思考的 token 也要付钱,而且常常比回答长得多)。
推理的三个指标(Lecture 6):
- pass@1:只关心一次生成的正确率。
- pass@k: 次里至少一次对(Chen et al. 2021 的无偏估计,Week 3 Day 5 §5.1)。适合”检查很容易、或者能接受更高延迟”的场景(比如代码可以跑测试)。
- cons@k(consensus at k): 个回答做多数投票,看投票结果对不对(R1 报告里用的)。它就是 Week 3 Day 6 §2 的多数投票准确率。
控制”思考”的三种办法(Lecture 6:“不是所有提示都一样”:简单的题不该想那么久):
| 办法 | 做法 | 出处 |
|---|---|---|
| 动态预算 / 上下文感知 | 让模型知道这道题的 token 预算(比如在提示里写明),按题目难度分配思考长度 | “Token-Budget-Aware LLM Reasoning”(Han et al. 2024) |
| 预算强制 | 模型想停时追加 “Wait” 让它继续想;超过预算时强行结束思考 | s1(Muennighoff et al. 2025),Week 3 Day 6 §4.3 |
| “连续”的思考 | 不把中间推理写成 token,而是在连续的隐藏状态空间里推理 | Coconut(Hao et al. 2024) |
期末卷的简答题”列出两种在推理时控制或增加思考预算的方法”,官方答案给的是 best-of-N 和”上下文感知、预算强制”。
3.4 R1 的五步配方,以及”蒸馏”的两种含义
R1-Zero(概念验证):DeepSeek-V3-Base(MoE,约 6710 亿总参数、约 370 亿激活参数)直接做 GRPO,奖励 = 格式(思考写在 <think> 里)+ 正确性。好处:不需要任何 SFT 就出现了推理能力;训练中回答长度自发增长,模型学会自我检查和回溯(“aha moment”)。问题:推理链的格式和可读性差(中英混杂等)。
R1 的完整配方(Lecture 6 逐步展开):
- 预训练:DeepSeek-V3-Base。
- 小规模 SFT(冷启动):数据是 R1-Zero 生成、再由人改写过的长思维链。目的是稳定输出格式、让推理轨迹可读(期末卷的冷启动题)。
- 推理数据上的 GRPO:和 R1-Zero 基本相同,奖励 = 格式 + 正确性 + 语言一致性。
- 大规模 SFT:约 60 万条推理数据(对”到目前为止的 R1”做拒绝采样,用规则和 V3 当评委筛选)+ 约 20 万条通用数据(大多复用 V3 的 SFT 数据)。
- 推理与非推理数据上的 GRPO:推理数据的奖励 = 格式 + 正确性;通用数据的奖励 = 有用性 + 无害性(奖励模型)。
“蒸馏”的两种含义(Lecture 6 特意对比):
- Lecture 2 的蒸馏(DistilBERT,Week 1 Day 6 §4.6):学生逐 token 地匹配教师的下一个 token 分布(软标签)。
- Lecture 6 的蒸馏(R1-Distill):用教师生成的完整回答(推理轨迹)对学生做 SFT。学生只看到采样出来的文本,看不到教师的概率分布。结果:小模型的效果很有竞争力,而且是对算力的”好用法”(Week 3 Day 5 §5.3:比小模型自己做 RL 更有效)。
§A 答题方法
A.1 “列举 + 解释”型简答题
期末的简答题几乎都是这个结构(“(i) 列出……(ii) 解释其中一个……”)。模板:
- 先列全:题目要两个就写两个、要三个就写三个,每个一行,用编号。阅卷按要点给分,漏一个要点就少一份分。
- 再解释:解释的那一问套期中的四步(是什么 → 为什么 → 怎么做 → 代价,Week 3 Day 1 §A.1),但只写两三句。
- 能给数字就给数字:比如”DPO 只需要策略和参考两个模型,PPO 要四个”,比”DPO 更省显存”得分更稳。
例:“为什么有 1M 上下文还要 RAG?说出 RAG 的一个挑战。”
(i) ① 成本:按 token 计费,1M 上下文每次都要付 100 万 token 的钱,RAG 只送几千;② 延迟:prefill 的注意力随长度平方增长;③ 效果:模型在长上下文中间的信息用得差(迷失在中间、大海捞针)。(ii) 检索质量:检索不到相关的块(或者检索到的块相关但不含答案),生成器就没法答对;检索的召回是 RAG 正确率的上限。
A.2 选择题
- “一眼认出核心定义”:L5–L8 的选择题大多在考一句定义(BT 在做什么、KL 项的作用、DPO 的洞见、MCP 标准化什么……)。把 §2 表里每个考点的”一句话定义”背熟。
- 排除绝对化的措辞(和期中相同,Week 3 Day 1 §A.2)。
- 排除张冠李戴:干扰项常把另一个概念的描述套过来(把”量化”当”蒸馏”、把”读取资料”当”上下文检索”)。
A.3 时间
每部分约 22 分钟。简答题的两问加起来 6–7 分,写 4–6 行就够了,不要在一道简答题上写成一篇文章。
§B 实操
- 做 2025 期末真题(1.5h,闭卷、计时、手写),对答案打分。
- 做本文 §C 的模拟卷(1.5h),对照 §D 打分;计算题的数字可以用
python w5day2_checks.py核对。 - 错题溯源(1.5h):每道错题按 §2 找到小节,合上书重推一遍,按 §2.5 记录。
- 读 §3 的补漏四讲,把 R1 的五步配方默写一遍。
- 自评:期中、期末、两份模拟卷的分数各是多少?哪一讲失分最多?把它写进 Day 3 的全景图里,标成”待补”。
§C 模拟卷(90 分钟,闭卷)
按真题的结构自己出的,和真题的考点互补,计算题多一些。选择题都是单选。
第一部分:LLM 调优
1.1 对每个提示采 4 个回答,标注者给出完整排序。这个排序可以拆成多少个成对比较? (A) 3 (B) 4 (C) 6 (D) 16
1.2 把 LLM 的生成写成强化学习问题时,“动作”对应的是: (A) 整个提示 (B) 下一个 token (C) 奖励模型的分数 (D) KL 惩罚项
1.3(计算)奖励模型给一对回答打分 、。按 Bradley-Terry 模型, 是多少?这一对的损失和对 的梯度是多少?两个分数同时加 5 会怎样?
1.4 关于 RLHF 中奖励模型的结构,正确的是: (A) 必须是 encoder-only 的模型 (B) 常从 SFT 模型初始化,把输出词表的头换成输出标量的头,输入是提示和回答 (C) 输入只有回答,这样才不会受提示影响 (D) 输出一个关于词表的概率分布
1.5 RLHF 的 RL 阶段加入对参考模型的 KL 惩罚,最主要的作用是: (A) 加快训练 (B) 防止策略为了刷高奖励模型的分数而偏离参考模型太远(reward hacking),保住语言能力 (C) 让奖励模型更准 (D) 保证回答的多样性一定提高
1.6(计算)从参考策略采 16 个回答、按奖励挑最好的一个。所得策略相对参考策略的 KL 最多是多少?和 RL 相比,best-of-N 的代价在哪里?
1.7 DPO 训练时需要放进显存的模型是: (A) 只有策略 (B) 策略和参考模型 (C) 策略、参考模型和奖励模型 (D) 策略、参考模型、奖励模型和价值模型
1.8 DPO 训练中”被选中回答的对数概率也在下降”这一现象: (A) 说明训练出错了,应该立刻停止 (B) 是可能的,因为 DPO 只要求两个对数概率比的间隔变大,不要求被选中回答的概率本身变大 (C) 只在 β = 0 时出现 (D) 说明参考模型漂移了
1.9(简答)PPO 的裁剪目标 ,。分别写出 、、、 时目标的值和它对 的梯度,并用一句话解释每种情况。
1.10(简答)某个偏好对:、、、,。(i) 算出隐式奖励、间隔、DPO 损失和这一对的梯度权重。(ii) 控制的是什么?
第二部分:LLM 推理
2.1 按 Lecture 6 的尝试性定义,下面哪个问题不需要推理? (A) “这只熊 2020 年出生,它现在几岁?” (B) “斯坦福 Transformer 课的课程编号是什么?” (C) 一道 AIME 题 (D) 修复一个让单元测试失败的 bug
2.2 DeepSeek R1-Zero 训练时的奖励是: (A) 一个神经网络奖励模型给出的有用性分数 (B) 基于规则的格式奖励和正确性奖励 (C) 人工逐条打分 (D) 过程奖励模型对每一步的打分
2.3 用 GRPO 训练时回答越来越长,一个被指出的原因是: (A) KL 惩罚太大 (B) 按回答长度对损失做归一化后,错误的长回答里每个 token 分到的惩罚更小 (C) 裁剪系数太小 (D) 采样温度太低
2.4(计算)对一道题采了 个回答,其中 个正确。分别算出 时 pass@k 与 pass^k 的无偏估计。
2.5 R1 在 GRPO 之前先做一次小规模 SFT(冷启动),主要是为了解决 R1-Zero 的什么问题? (A) 模型不会数学 (B) 推理链的格式与可读性差 (C) 上下文太短 (D) 训练太慢
2.6 s1 的”预算强制”指的是: (A) 模型想结束思考时追加 “Wait” 让它继续,超过预算时强行结束 (B) 在 RL 的奖励里惩罚长回答 (C) 用过程奖励模型做搜索 (D) 对多个回答做多数投票
2.7 cons@k 衡量的是: (A) k 个回答里至少一个正确的概率 (B) k 个回答做多数投票后是否正确 (C) k 个回答全部正确的概率 (D) 用奖励模型从 k 个里挑一个后是否正确
2.8 R1-Distill 这类”推理蒸馏”的做法是: (A) 把权重量化到 4 bit (B) 用强模型生成的完整推理轨迹对小模型做 SFT (C) 让小模型逐 token 地匹配强模型的概率分布 (D) 剪掉强模型的一部分层
2.9(简答)一组 8 个回答的奖励是 。(i) 按 GRPO 算出答对和答错的回答的优势(用总体标准差)。(ii) 如果一道题的单次正确率是 0.9、每组 8 个,这道题”没有学习信号”的概率是多少?这对题库的选择意味着什么?
2.10(简答)8 个回答的最终答案是 42、42、41、42、40、41、42、39,标准答案是 42。(i) 这道题的 cons@8 和 pass@8 各记多少?(ii) Lecture 6 说什么场景用 pass@k、什么场景用 pass@1?
第三部分:智能体化的 LLM
3.1 双塔(bi-encoder)检索能建索引的原因是: (A) 它比交叉编码器更准 (B) 打分是”查询向量 · 文档向量”,文档向量可以离线算好存起来 (C) 它不需要训练 (D) 它只用关键词
3.2 HyDE 拿去做检索的是: (A) 原始问题的向量 (B) LLM 写的一段”假设的答案”的向量 (C) 所有文档拼在一起的向量 (D) BM25 的分数
3.3 倒数排名融合(RRF)使用的是: (A) 各路检索的原始分数 (B) 各路检索的名次 (C) 文档的嵌入 (D) 交叉编码器的 logit
3.4 在 OpenAI 格式的工具调用中,模型返回的函数参数: (A) 已经被模型执行过 (B) 是一个 JSON 字符串,应用程序要自己解析并校验 (C) 一定是合法的 JSON (D) 是一个可以直接调用的 Python 对象
3.5(计算)一个智能体任务要连续做对 10 步,每步正确率 0.95。(i) 整体成功率是多少?(ii) 如果有一个召回率 0.8 的检查器,发现错误就重试(最多 1 次),整体成功率变成多少?(iii) 由此说明设计智能体时最该优先做什么。
3.6 写 stdio 传输的 MCP 服务端时,不能往 stdout 打印调试信息,因为: (A) 会降低性能 (B) stdout 是协议通道,非协议的输出会破坏 JSON-RPC 消息流 (C) 会泄露用户数据 (D) stdout 不支持中文
3.7 A2A 协议里的 AgentCard 包含: (A) 模型权重 (B) 智能体的名字、地址、版本和技能列表 (C) API 密钥 (D) 训练数据
3.8 Anthropic 的”上下文检索”主要修的是: (A) 切出来的块缺少上下文(比如没有公司名、没有主语),导致检索不到 (B) 向量检索太慢 (C) 嵌入维数太高 (D) 重排器延迟太大
3.9(计算)系统提示和工具说明共 2000 token,用户问题 100 token;每轮工具调用新增 50 token 的调用和 450 token 的返回。(i) 串行调用 5 轮工具再回答,累计要发送多少输入 token?(ii) 如果这 5 个调用互不依赖、放在一轮里并行,累计多少?(iii) 还有什么办法降低成本?
3.10(计算)BM25 的排序是 [d1, d2, d3, d4],稠密检索的排序是 [d3, d1, d5, d2]。(i) 用 RRF()融合,写出前 5 名的顺序。(ii) 相关度 d1 = 2、d3 = 1、d5 = 1、其余 0,算融合结果的 NDCG@3。
第四部分:LLM 评测
4.1 Cohen’s κ = 0 表示: (A) 两人完全一致 (B) 两人的一致程度和碰巧一致一样 (C) 两人完全相反 (D) 无法计算
4.2 检测 LLM 评委的位置偏差,最直接的方法是: (A) 交换两个回答的顺序再问一次,统计结论前后一致的比例 (B) 提高温度 (C) 把提示写长 (D) 用 BLEU 核对
4.3 “先写理由、再给分数”这条最佳实践的主要理由是: (A) 更便宜 (B) 分数在理由之后生成,相当于先做了一遍思维链,判断更有依据也更容易审查 (C) JSON 格式要求这样 (D) 能减少 token
4.4(计算)评委和人对 100 个回答判”通过 / 不通过”,混淆矩阵(行:评委,列:人)是 [[40, 10], [5, 45]]。算出一致率、碰巧一致率和 Cohen’s κ。
4.5 两个模型在一个 1.4 万题的基准上差 0.3 个百分点。最恰当的结论是: (A) 分数高的那个一定更好 (B) 这个差距在抽样误差之内,要看置信区间或做配对检验才能下结论 (C) 分数低的那个被污染了 (D) 这个基准已经失效
4.6 Chatbot Arena 的”风格控制”做的是: (A) 删掉长回答 (B) 在 Bradley-Terry 回归里加入长度、格式等风格协变量,估计”风格相同时”模型的强度 (C) 要求用户忽略格式 (D) 截断回答
4.7 用 13-gram 重叠检测数据污染,最大的弱点是: (A) 抓不住改写过的污染 (B) 太慢 (C) 只能用于英文 (D) 误报率总是很高
4.8 一个客服智能体要”每个用户都能办对”,最该看的指标是: (A) pass@k (B) pass^k (C) BLEU (D) 困惑度
4.9(简答)(i) 200 道题、准确率 0.70,标准误和 95% 区间的半宽是多少?题目加到 800 道呢?(ii) 你试了 50 个提示、在同一个测试集上挑了最好的一个报告,为什么这个分数会偏高?
4.10(简答)(i) Elo 评分 1600 的 A 对 1500 的 B,A 的期望得分是多少?A 输了,,A 的新评分是多少?(ii) 为什么 Chatbot Arena 从在线 Elo 换成了 Bradley-Terry 的最大似然?
§D 模拟卷详解
计算题的数字都来自 w5day2_checks.py。每题后面是溯源的位置。
第一部分
1.1 C。 (Week 3 Day 2 §2.1;今天 §3.1)。
1.2 B(今天 §3.2;Week 3 Day 3 §1.1)。
1.3 ;损失 ;对 的梯度 (排得越对,梯度越小)。两个分数同时加 5, 不变:奖励只确定到一个常数,所以不同提示之间的奖励不能直接比较(Week 3 Day 2 §2.2)。
1.4 B。 A 太绝对(encoder-only 可以,但不是必须);C 错:奖励模型的输入是提示和回答;D 是语言模型的头(Week 3 Day 2 §2.3)。
1.5 B(Week 3 Day 2 §3.3)。
1.6 nat(回答空间连续、奖励两两不同时取等号)。KL 只随 增长,很”省 KL”;代价是每次推理都要采 次,而 RL 是一次性的训练成本(Week 3 Day 2 §3.2;Week 3 Day 6 §4.2)。
1.7 B(Week 3 Day 4 §5.1)。
1.8 B(likelihood displacement,Week 3 Day 4 §3.3)。
1.9()
| 目标 | 解释 | ||
|---|---|---|---|
| (1.3, +1) | 1.20 | 0 | 好动作的概率已经涨过头了,不再推 |
| (0.7, +1) | 0.70 | +1 | 好动作的概率被压低了,照常往上推 |
| (1.3, −1) | −1.30 | −1 | 坏动作的概率被抬高了,照常往下压 |
| (0.7, −1) | −0.80 | 0 | 坏动作的概率已经压够了,不再压 |
裁剪只在”已经往有利的方向走过头”时切断梯度,另外两种情况照常更新(Week 3 Day 3 §3.2)。
1.10 (i) ,,间隔 ;损失 ;梯度权重 (排错越厉害权重越大)。(ii) 是 KL 约束的强度:同样的对数概率变化, 越大间隔越大、损失越小( 时损失 0.0789),模型越”不愿意”离开参考模型(Week 3 Day 4 §2.3、§3.2)。
第二部分
2.1 B(今天 §3.3)。
2.2 B(Week 3 Day 5 §1.3、§2)。
2.3 B(Dr. GRPO 指出的长度偏置,Week 3 Day 5 §4.1)。
2.4
| pass@k | pass^k | |
|---|---|---|
| 1 | 0.3000 | 0.3000 |
| 3 | 0.7083 | 0.0083 |
| 5 | 0.9167 | 0.0000 |
时两者相等; 增大,pass@k 上升、pass^k 下降(Week 3 Day 5 §5.1;Week 4 Day 4 §3.3)。
2.5 B(今天 §3.4)。
2.6 A(今天 §3.3;Week 3 Day 6 §4.3)。
2.7 B(今天 §3.3)。
2.8 B。 C 是 Lecture 2 意义上的蒸馏(今天 §3.4)。
2.9 (i) 均值 0.375,总体标准差 0.4841:答对的优势 ,答错的 (组内优势之和为 0)。(ii) 全对或全错的概率 :这时标准差为 0、所有优势为 0,这组采样白做了。题库要选”模型偶尔能做对”的题,训练中要动态地去掉已经学会和完全不会的题(DAPO 的动态采样,Week 3 Day 5 §3.2、§4.2)。
2.10 (i) 多数票是 42(4 票),和标准答案一致,cons@8 记 1;8 个里有正确的,pass@8 也记 1。(ii) pass@k:检查很容易(比如代码可以跑测试)、或者能接受更高延迟的场景;pass@1:只关心一次生成的场景(今天 §3.3)。
第三部分
3.1 B(Week 4 Day 1 §3.1)。
3.2 B(Week 4 Day 2 §5.2)。
3.3 B(Week 4 Day 2 §2.3)。
3.4 B(Week 4 Day 3 §A.1)。
3.5 (i) 。(ii) 每步成功率 ,10 步 (最多重试 2 次时 0.9000)。(iii) 先提高”错误能被自动发现”的比例(参数校验、明确的报错、测试),它比多重试几次更关键(Week 4 Day 4 §3.2)。
3.6 B(Week 4 Day 3 §A.4)。
3.7 B(Week 4 Day 4 §6.2)。
3.8 A(Week 4 Day 2 §5.3)。
3.9 (i) 第 轮()的输入 ,累计 token。(ii) 两次调用: token。(iii) 提示缓存(固定前缀按折扣价计)、裁剪工具返回、工具路由减少工具说明的长度(Week 4 Day 3 §2.3、§4.2)。
3.10 (i) RRF 分数:d1 = 1/61 + 1/62 = 0.03252,d3 = 1/63 + 1/61 = 0.03227,d2 = 1/62 + 1/64 = 0.03175,d5 = 1/63 = 0.01587,d4 = 1/64 = 0.01562。顺序:d1、d3、d2、d5、d4。(ii) 前 3 名的增益 、、0,DCG@3 ;理想排序是 (2, 1, 1),IDCG@3 ;NDCG@3 (Week 4 Day 2 §2.3、§3.2)。
第四部分
4.1 B(Week 4 Day 5 §2.2)。
4.2 A(Week 4 Day 6 §2.1)。
4.3 B(Week 4 Day 6 §1.4)。
4.4 一致率 ;评委说”通过”的比例 0.50、人说”通过”的比例 0.45,;(Week 4 Day 5 §2.2)。
4.5 B。 1.4 万题、准确率在中段时,两个独立测量的差能分辨到约 1.7 个百分点(Week 4 Day 5 §3.1)。
4.6 B(Week 4 Day 6 §2.5)。
4.7 A(Week 4 Day 5 §4.4)。
4.8 B(Week 4 Day 4 §3.3;Week 4 Day 5 §4.2)。
4.9 (i) 200 题:标准误 ,半宽约 ±0.064;800 题:0.0162、±0.032。题目加 4 倍,误差才减半。(ii) 胜者的诅咒:每个提示的测量值 = 真实水平 + 噪声,挑最高分等于挑噪声最大的那一个;即使 50 个提示一样好,报告的分数平均也会偏高(500 题时约 4.6 个百分点)。调参要用开发集(Week 4 Day 5 §3.1、§3.3)。
4.10 (i) ;A 输了:。(ii) Elo 是对 Bradley-Terry 似然的随机梯度上升,结果依赖对局顺序、 大时波动大;BT 的最大似然用全部对局一次拟合,结果唯一,还能用 bootstrap 给出置信区间(Week 4 Day 6 §2.5)。
出关标准
- 在闭卷计时的条件下完成了 2025 期末真题和本文的模拟卷,记下了两份分数
- 每道错题都定位到了具体小节,并合上书重推了一遍
- 能说出偏好数据的三种形式、PPO 的两个变体(以及两个 KL 的区别)
- 能说出推理的三个指标、控制思考的三种办法
- 能默写 R1 的五步配方,说清两种”蒸馏”的区别