🟣 Speculative Decoding:小模型猜、大模型审
🟣 Speculative Decoding:小模型猜、大模型审
一个看似作弊的点子: 让一个”便宜的小模型”先猜 N 个 Token, 再让”贵的大模型”一次性审核。 数学上完全等价——但快 2-3 倍。
🟣 AI 深度派专栏 · 第 S2-07 期 📅 2026年9月29日 ✍️ 小敏说 AI
💡 本文要点:本文讲清推测解码(Speculative Decoding)核心原理、为什么能”既快又无损”、几种主流变体(Medusa / Eagle / 自推测),以及它在工业界的真实加速效果。
🎯 本文导读
- 🔹 自回归生成的天然慢
- 🔹 推测解码核心思想
- 🔹 为什么”无损”
- 🔹 三种主流变体
- 🔹 真实加速效果
一、🐢 自回归生成为什么慢
LLM 生成本质是串行:
Token 1 → Token 2 → Token 3 → ...
每一步都要 forward 一次大模型
GPU 浪费严重:生成一个 Token 时,绝大部分算力闲置(Memory-bound)。
💬 关键观点:LLM 推理瓶颈是”显存带宽 + 串行”,不是算力本身。
二、💡 推测解码的核心思想
类比:一个高级编辑(大模型)每次只能写 1 个字;找个实习生(小模型)先写 5 个字,编辑一眼扫过,错的改、对的留。
流程
1. 小模型一次生成 N 个 Token(草稿)
2. 大模型一次性 forward "原始输入 + 草稿"
(注意:这一次 forward 等于 N+1 个 Token 的并行)
3. 大模型同时输出"如果是我,下一个 Token 是什么"
4. 从草稿开头逐个比对:
- 草稿与大模型一致 → 接受
- 不一致 → 丢弃后续,用大模型自己的接上
5. 至少接受 1 个,可能接受 N 个,平均 2-5 个
🎯 一句话总结:1 次大模型 forward → 平均产出 2-5 个 Token。
三、🎯 为什么”无损”
关键数学保证:接受 Token 的概率分布 = 大模型独立生成的概率分布。
通过一个叫 “rejection sampling” 的技巧:
- 草稿 Token x 是否接受,按 p_target(x) / p_draft(x) 概率决定
- 拒绝时按 (p_target - p_draft) 重新采样
✅ 数学上证明:最终序列分布与大模型单独生成完全一致。
⚠️ 重要提醒:这不是近似、不是有损压缩。是”真的等价但更快”。
四、🛠 三种主流变体
变体 1:标准 Speculative Decoding
- 用一个完全独立的小模型做草稿(如 Llama 70B + Llama 7B)
- 简单、通用
- 代价:要部署两个模型
变体 2:Medusa
- 给大模型加几个轻量”预测头”,一次性预测 N 个未来 Token
- 不需要独立小模型
- 代价:要微调
变体 3:Eagle / Eagle 2 / Eagle 3
- 用大模型自身的中间表征喂给一个小草稿网络
- 接受率更高(达 70-85%)
- 目前工业界最优
变体 4:Self-Speculative
- 大模型自己跳过一些层做草稿
- 不需要额外模型
五、📊 真实加速
| 场景 | 加速比 |
|---|---|
| 普通对话 | 2-2.5× |
| 代码生成 | 3-4×(重复结构多) |
| 翻译 | 2-3× |
| 数学推理 | 1.5-2×(推理链不稳定,接受率低) |
💬 关键观点:重复 / 模板化越强的任务,加速越明显。
六、💼 工业界部署
| 框架 / 服务 | 是否支持 |
|---|---|
| vLLM | ✅ 内置 |
| TensorRT-LLM | ✅ |
| SGLang | ✅ |
| OpenAI / Anthropic 后台 | ✅(推测) |
| 国内推理引擎 | ✅ 越来越普及 |
七、❌ 常见误区
| 误区 | 真相 |
|---|---|
| ❌ 推测解码会损精度 | ✅ 完全等价 |
| ❌ 它和 KV Cache 二选一 | ✅ 是配合关系 |
| ❌ 加速 = 模型变笨 | ✅ 加速 ≠ 牺牲 |
| ❌ 任何任务都加速一样多 | ✅ 取决于”可预测性” |
八、🔮 后续演进
| 方向 | 描述 |
|---|---|
| 更准的小草稿 | Eagle 系列继续迭代 |
| 多草稿并行 | 同时跑多个草稿路径 |
| 思考链推测 | 给推理模型加速 |
| 服务端 + 端侧协同 | 端跑小、云跑大 |
九、🎁 给非工程读者的”推测解码心法”
🔑 LLM 推理慢在"串行 + 显存"
🔑 让小模型当"打字员"、大模型当"审稿人"
🔑 数学等价,无精度损失
🔑 工业界已普遍使用
🔑 你今天用的 ChatGPT 大概率就开着这个
📮 今日话题:你觉得”用小模型给大模型加速”这种思路,还能用到其他场景吗?
🔮 下一篇预告:s2ep08《Mamba / SSM:会取代 Transformer 吗》
🟣 本系列是「小敏说 AI · AI 深度派专栏」第 S2-07 期。 关注公众号 小敏说 AI,回复「深度派」领取第二季合集。