问题
教模型推理最直接的办法,是收集人类书写的推理轨迹。这昂贵、缓慢,且受限于人类愿意写出多少高质量的思维链。
STaR(Self-Taught Reasoner,Zelikman 等,2022)提出:如果让模型自己写推理理由,再对照已知答案打分呢?循环如下:
- 采样一条推理轨迹和答案。
- 如果最终答案正确,保留该轨迹。
- 在保留的轨迹上微调。
- 重复。
它有效。GSM8K 和 CommonsenseQA 都在没有新的人工标注的情况下得到提升。但这个循环有内在偏差:任何得出正确答案的推理理由都会被保留,无论推理本身是否站得住脚。V-STaR(Hosseini 等,2024)用一个学习到的验证器修补这一点;Quiet-STaR(Zelikman 等,2024)把这一想法推广到逐 token 的内部推理理由。
概念
STaR:在有效的样本上自举
从一个具备初步推理能力的基座模型开始。对每个训练问题,采样一条推理理由和答案。如果答案与标签匹配,保留(问题、推理理由、答案)三元组。在保留集上微调模型。重复。
有一个转折很重要。如果模型永远无法把某道题做对,循环就没法从这道题学习。STaR 加入了合理化(rationalization):对模型失败的问题,把正确答案作为提示注入,重新提示模型生成一条通向该答案的推理理由。合理化产生的推理理由也会加入训练集。
原论文结果(Zelikman 等,2022):经过多轮带合理化的 STaR,GPT-J 基座模型在 GSM8K 上从 5.8% 提升到 10.7%——约 5 个百分点的绝对提升。在 CommonsenseQA 上,经 STaR 训练的 GPT-J 6B 达到 72.5%,与在人工标注推理理由上微调的 GPT-3 175B(约 73%)相当——后者大约大了 30 倍。
V-STaR:用 DPO 训练验证器
STaR 丢弃不正确的推理理由。Hosseini 等(2024)注意到,这些同样是数据:每一对(推理理由,「是否正确」)都能用来训练验证器。他们对正确和不正确的解同时做直接偏好优化(DPO),构建一个排序器。推理时采样 N 条推理理由,选验证器评分最高的那条。
报告的增益:在 GSM8K 和 MATH 上相对此前自我改进基线提升 4 到 17 个百分点,且大部分增益来自在推理时用验证器做选择,而不是继续微调生成器。
Quiet-STaR:逐 token 的内部推理
Zelikman 等(2024)问:如果模型学会在每一个 token 位置生成简短的内部推理理由,而不只是在问题与答案之间,会怎样?Quiet-STaR 训练模型在预测每个 token 之前生成一个隐藏的「思考」,再通过一个学习到的权重,把考虑思考的预测与基线预测混合。
结果:Mistral 7B 在没有任务特定微调的情况下,GSM8K 零样本绝对提升从 5.9% 到 10.9%,CommonsenseQA 从 36.3% 到 47.2%。模型学会了「何时思考」——困难的 token 获得更长的内部推理,容易的 token 几乎没有。
为什么三者共享同一个安全隐患
三种方法都用最终答案作为梯度信号。一条通过有缺陷推理——利用捷径、猜测或使用不可泛化的模式——到达正确答案的推理理由,会得到正向强化。在分布内问题上捷径有效;在分布外问题上,它会悄无声息地失效。
V-STaR 的验证器通过学会排序推理理由来缓解,但验证器在同一个标签集上训练。它可能学会偏好格式规范的错误推理,而不是诚实的不确定性。更安全的设计是把 STaR 式数据与 (a) 过程监督奖励模型(奖励中间步骤,而不只是答案)和 (b) 能打破简单捷径的留出 OOD 评测结合起来。
对比
| 方法 | 训练信号 | 推理成本 | 数据浪费 | 已知失败模式 |
|---|---|---|---|---|
| STaR | 正确则保留(推理理由、答案) | 1x | 丢弃所有错误推理理由 | 捷径式推理理由 |
| STaR + 合理化 | 上述 + 以正确答案为提示的重试 | 1x | 较少 | 合理化的推理理由可能不合逻辑 |
| V-STaR | STaR + 基于两类样本的 DPO 验证器 | Nx(best-of-N) | 极少 | 验证器可能强化自信的错误 |
| Quiet-STaR | 逐 token 推理理由 + 混合权重 | 1.5-3x | 极少 | 仍是答案条件化的梯度 |
它在 2026 年技术栈中的位置
STaR 已经很老。但这个模式在 2025-2026 年到处重现。可验证数学问题上的 RL(DeepSeek-R1、Kimi-k1.5、o1)就是 STaR 的答案条件化梯度信号放大后的版本。过程奖励模型(Lightman 等,2023;OpenAI 的 "Let's verify step by step")是过程监督的替代方案。AlphaEvolve(第 3 课)是面向代码的 STaR,用程序评测器代替标签。Darwin Godel Machine(第 4 课)是面向 Agent 脚手架本身的 STaR。
理解 STaR,这些就都能一下打通。它是最小可行的自我改进循环。
使用它
code/main.py 在一个玩具算术任务上运行模拟的 STaR 循环。你可以观察:
- 准确率如何随自举轮次攀升。
- 捷径如何混入:模拟器包含一类「偷懒」推理理由,有 40% 的概率得到正确答案,但泛化很差。观察 STaR 是否会保留它们。
- 验证器(V-STaR 式)如何在推理时提供帮助,却无法完全剪除训练中引入的捷径。
交付它
outputs/skill-star-loop-reviewer.md 帮你在训练之前审计一个拟议的自学推理 pipeline。
练习
- 运行模拟器。把捷径频率设为零,再设为 0.4。两次运行最终准确率相差多少,尽管两者在训练分布上都超过 90%?
- 给模拟器加一个留出 OOD 测试。从不同分布抽取问题,在分布内和 OOD 集上分别评测自举后的模型。量化差距。
- 阅读 Quiet-STaR 论文(arXiv:2403.09629)第 3 节。各用三句话解释「思考结束」token 和混合权重头。
- 把 STaR 的「正确则保留」过滤器与独立奖励每一步推理的过程监督方案做比较。指出标注成本差异和可能的质量差异。
- 设计一种能捕获已部署模型中捷径式推理理由的评测。它不必完美——它必须能打破 STaR 循环会强化的最简单捷径。
关键术语
| 术语 | 常见说法 | 实际含义 |
|---|---|---|
| STaR | 「自学推理器」 | 在模型生成、且得到正确答案的推理理由上微调;重复 |
| 合理化(rationalization) | 「带提示的重试」 | 对基座模型失败的问题注入正确答案,重新提示生成推理理由 |
| V-STaR | 「验证器版 STaR」 | 在正确与不正确的推理理由上用 DPO 训练验证器,用于推理时选择 |
| Quiet-STaR | 「逐 token 推理」 | 在每个 token 位置生成隐藏思考;与基线预测混合 |
| 答案条件化梯度 | 「基于结果的信号」 | 训练循环奖励最终答案,而不是推理步骤 |
| 过程奖励模型 | 「步骤级验证器」 | 按每一步正确性训练的奖励模型,而非按结果——与 STaR 相对 |
| 捷径式推理理由 | 「答案对、推理错」 | 通过不可泛化的模式到达标签的推理理由;STaR 会保留它们 |
延伸阅读
- Zelikman et al. (2022). STaR: Bootstrapping Reasoning With Reasoning — 原论文。
- Hosseini et al. (2024). V-STaR: Training Verifiers for Self-Taught Reasoners — 加入用于推理时选择的 DPO 验证器。
- Zelikman et al. (2024). Quiet-STaR: Language Models Can Teach Themselves to Think Before Speaking — 逐 token 内部推理理由。
- Lightman et al. (2023). Let's Verify Step by Step — 过程奖励模型,另一种梯度信号。
- DeepSeek-R1 paper (arXiv:2501.12948) — 可验证任务上的 RL,STaR 扩展到前沿训练。