← 返回题目列表

推测解码和模型蒸馏有什么区别?

中等 第 18 / 25 题 更新于 2026/09/18
模型压缩AI技术大模型面试题

简化版

推测解码是推理时加速:小草稿模型先提出多个 Token,大目标模型一次并行验证,正确实现可保持目标模型采样分布;收益依赖接受率。蒸馏是训练时压缩:学生学习教师输出,部署后可单独运行,但质量通常近似教师而非完全等价。

前者不减少目标模型权重且每次仍需目标模型验证,适合必须保留目标质量的在线生成;后者需要数据和训练,适合长期用更小模型降低延迟与成本。两者可以组合:蒸馏一个与目标分布接近的 Draft,提高投机接受率。

详细版

维度推测解码蒸馏
发生阶段推理训练
是否需目标模型在线需要不需要
输出分布可保持目标分布近似教师
主要指标接受率、加速比学生质量、成本
主要成本双模型与验证数据与训练
speculative: draft k tokens -> target verifies in parallel -> accept prefix
distillation: teacher signals -> train student -> deploy student alone

选择时看质量契约、流量周期、硬件内存和工程复杂度;不能把“使用小模型”就都称为模型压缩。

完整版教学

1. 推测解码解决什么问题

自回归 Decode 每步依赖前一步,目标模型调用次数多。草稿模型便宜地产生 k 个候选,目标模型用一次前向验证多个位置。

接受多个候选时,减少目标模型串行迭代数,从而降低 TPOT。

2. 蒸馏解决什么问题

学生通过教师最终答案、Soft Logits、特征或偏好学习,在部署时替代教师。

它减少权重、显存和单次计算,但学生容量更小,质量上限和长尾需独立验证。

蒸馏一次训练可服务之后大量请求,适合稳定高流量场景;若任务和教师频繁变化,持续生成数据与重训也会形成显著运维成本。

3. 输出分布有什么根本差异

标准投机采样按接受/拒绝与修正分布实现,可严格采样自目标模型分布。

蒸馏学生只是拟合教师,在有限数据与容量下存在偏差,不能承诺逐 Token 等价。

因此投机解码主要是系统性能变换,而蒸馏属于模型能力变换;两者的质量验收和回滚对象不同。

4. 推测解码的关键变量

speedup depends on:
  draft_cost, target_verification_cost,
  proposal_length k, acceptance_rate

Draft 太慢、k 太大或接受率低时,额外工作可能导致负收益。

5. 接受率受什么影响

草稿与目标模型的 Tokenizer、领域、解码配置和概率分布越接近,接受率通常越高。代码、确定性文本可能比高温创作更容易预测。

只报告平均接受率不够,应按任务、长度和采样参数分桶。

6. 蒸馏数据决定什么

学生只能学习数据覆盖的教师行为。真实分布、困难样本、安全与通用回放需要平衡。

教师错误和偏差也会被继承,输出必须验证,训练/评测避免泄漏。

7. 内存和部署差异

投机解码需同时驻留 Draft 与 Target,并管理两套 KV;若显存不足,双模型切换可能抵消收益。

蒸馏上线只需学生,适合边缘和高并发,但要维护新的模型版本与训练流水线。

若 Target 与 Draft 不能同时放入单卡,跨卡通信会增加投机延迟;蒸馏学生能单卡容纳时,部署拓扑通常更简单。

8. 延迟与吞吐如何比较

投机解码主要降低目标串行步数,但验证批次会改变单轮时间;蒸馏通过更小模型同时改善 Prefill/Decode 的潜力更大。

场景更常见选择
必须保持强模型分布推测解码
边缘/内存严格蒸馏
长期巨大流量评估蒸馏 ROI
无训练数据/周期推测解码

仍需目标硬件实测。

9. 为什么两者可以组合

用目标模型蒸馏 Draft,使其分布更接近 Target,同时保持足够小,可提高接受率。

训练目标不只看 Draft 独立质量,还应优化接受率与端到端加速,避免草稿变强却过重。

也可蒸馏多个不同尺寸 Draft,按设备或流量选择;每个组合都要重新标定候选长度 k 和调度参数。

10. 与普通模型路由的区别

路由让简单请求只用小模型、复杂请求用大模型;投机解码每个请求都由目标验证;蒸馏学生可作为路由候选。

路由错误会直接改变回答模型,投机解码的正确算法仍以目标分布为准。

三者可以分层:路由先选择 Target 档位,该 Target 再使用匹配 Draft 做投机;低风险任务也可直接由蒸馏学生承接。

11. 质量如何验证

投机解码比较相同随机种子下的分布/统计一致性和实现正确性;蒸馏比较任务、长尾、安全、校准和教师差距。

两者都要检查不同温度、TopP 与停止条件,不能只测贪心解码。

工具调用和 JSON 场景还需执行 Schema/沙箱测试;分布统计一致不代表业务协议一定正确实现。

12. 性能实验怎么做

固定硬件、输入/输出长度、Batch 与目标模型,测 TPOT、TTFT、吞吐、显存和功耗。投机额外报告接受率与每轮接受 Token。

蒸馏还要把训练和数据成本摊到预期流量周期,比较单位成功任务成本。

13. 何时不适合

目标模型已经很小、输出很短或低流量时,投机调度复杂度可能不值;学生无法达到安全/质量底线时,不应蒸馏替代。

工具调用和严格格式任务需验证候选生成、停止条件和学生 Schema 能力。

推测解码用小模型帮助大模型更快地保持原分布,蒸馏则让小模型学习后独立承担任务。

14. 常见误区与追问

  • 误区:推测解码会用草稿答案替代目标答案。 候选要由目标验证并按规则修正。
  • 误区:蒸馏学生与教师输出完全一致。 它是有限容量近似。
  • 误区:接受率高就一定快。 Draft 与验证成本也要算。
  • 误区:推测解码节省目标模型显存。 Target 仍需驻留,且多一套 Draft。
  • 误区:二者只能选一个。 蒸馏 Draft 可提升投机效果。
  • 追问:哪种更适合保持质量? 正确投机采样可保持目标分布。
  • 追问:哪种更适合边缘? 通常是可独立运行的蒸馏学生。

15. 加强记忆

  1. 先分阶段:推测在推理,蒸馏在训练。
  2. 再分角色:推测需 Target 在线,学生可独立。
  3. 再分质量:目标分布保持对教师行为近似。
  4. 再看成本:双模型验证对数据训练。
  5. 再看指标:接受率/加速比对学生质量/成本。
  6. 再看场景:强质量在线对长期小模型部署。
  7. 最后记组合:蒸馏高接受率 Draft。