芯片层 开放阅读

Speculative Decoding

Speculative Decoding

概念 ID
speculative-decoding
更新时间
2026-05-29
来源数量
待补

Speculative Decoding(推测解码)

3 秒看懂

用一个”小参谋”先猜多个 token,再让”大将军”一次性验货——猜对的直接放行,猜错的当场修正。 本质是把逐 token 串行生成变成”批量猜测 + 并行验证”,在不改变输出分布的前提下加速 LLM 推理解码阶段。

3 分钟产业解释

为什么需要它?

大语言模型推理(Inference)分两个阶段:

阶段计算特征瓶颈
Prefill(预填充)一次处理全部 prompt,矩阵运算密集,计算密集型(compute-bound)算力
Decode(自回归解码)每步只生成 1 个 token,需要反复加载整个模型权重,访存密集型(memory-bandwidth-bound)显存带宽

Decode 阶段的硬件利用率极低——数十 GB 的权重只为了产出 1 个 token。Speculative Decoding 的核心洞见是:如果你能让大模型一次验证多个 token 而不只是生成 1 个,就能把 memory-bound 变成 compute-bound,大幅提升吞吐。

它怎么赚钱?

  • 降低单请求延迟(Latency):用户体验响应更快,Chat 类产品留存提升。
  • 降低单位推理成本(Cost/Token):同等算力可服务更多请求。
  • 无需改模型权重:不重新训练大模型,只在推理侧加一层调度逻辑,工程改造成本可控。
  • 据 [Google Research, Leviathan et al., 2023, arXiv:2211.17192] 及 [DeepMind, Chen et al., 2023, arXiv:2302.01318] 的原始论文,理论上可实现 2-3 倍 解码加速(具体取决于 draft 质量与任务)。

15 分钟专家深入

1. 工作流程拆解

┌───────────────────────────────────────────────────────────┐
│                    一个完整的推测解码轮次                    │
│                                                           │
│  Step 1: Draft(猜测)                                    │
│  ┌─────────┐                                              │
│  │ 小模型 M_q│──→ x₁, x₂, x₃, ..., x_K  (K 个候选 token)  │
│  └─────────┘                                              │
│         ↓ 将 [已有序列 + x₁...x_K] 一起送入                │
│  Step 2: Verify(验证)                                   │
│  ┌─────────┐                                              │
│  │ 大模型 M_p│──→ 对每个位置给出完整词表分布                  │
│  └─────────┘     p(x₁|...), p(x₂|...), ..., p(x_K|...)   │
│         ↓                                                  │
│  Step 3: Accept/Reject(验收)                             │
│  - 从左到右逐位置比对:                                      │
│    若 draft token xᵢ 被 target 接受 → 保留                 │
│    若在位置 j 首次被拒绝 → 从 target 分布 p(xⱼ|...) 重采样  │
│    本轮共输出 (被接受数 + 1) 个有效 token                    │
└───────────────────────────────────────────────────────────┘

2. 保真性证明(为什么输出分布不变?)

这是 Speculative Decoding 最精妙之处。验收采用修正拒绝采样(Modified Rejection Sampling)

对于 draft 模型 $q(x|context)$ 和 target 模型 $p(x|context)$,对候选 token $x$:

$$ text(Accept with probability ) \min!\left(1,\ frac(p(x)){q(x)}\right) $$

若被拒绝,则从修正分布重新采样:

$$ p’(x) = \frac{\max(0,\ p(x) - q(x))}{\sum_{x’} \max(0,\ p(x’) - q(x’))} $$

数学上可证明:由此过程采样得到的 token 序列与直接从 target 模型自回归采样完全一致。 这意味着 Speculative Decoding 是无损的——不牺牲任何生成质量。

3. 加速比分析

设:

  • \alpha = 每位置平均接受率(draft 与 target 的”一致度”)
  • $K$ = 每轮推测的 draft token 数
  • c_d = draft 模型单次前传成本
  • c_t = target 模型验证 $K$ 个 token 的成本

每轮期望有效输出 token 数

$$ E[tokens/round] = (1 - alpha^K) / (1 - alpha) $$

每轮总成本 \approx c_d \cdot K + c_t

对比标准自回归(每轮 1 token、成本 c_t),加速比

$$ Speedup ~= (1 - alpha^K) / ((1 - alpha) * (1 + K * c_d / c_t)) $$

接受率 \alpha推测数 $K$理论最大加速比(c_d \approx 0
0.65≈ 2.31×
0.75≈ 2.77×
0.85≈ 3.36×
0.95≈ 4.10×
0.910≈ 6.51×

⚠ 以上假设 draft 模型推理成本可忽略。实际中 c_d 不为零,且 batch 场景下验证成本结构更复杂,实际加速比通常 1.5-3× [行业经验估算]。


技术原理(最深一层)

核心机制:并行验证 vs 串行生成

标准自回归解码的时间复杂度为 $O(n)$ 次 target 模型前传($n$ = 生成长度),每次前传的关键瓶颈是 KV-Cache 加载 + 权重加载

Speculative Decoding 将其中 $n$ 次 target 前传替换为:

标准解码:     T → T → T → T → T → T → T → T    (8 次 target 前传, 8 tokens)

推测解码 (K=3):
  D → D → D → T(验证3个) → [假设接受2个]
  D → D → D → T(验证3个) → [假设接受3个]
  D → D → T(验证1个)

  共 3+3+3+3+3+1 = 16 次 draft 前传 + 3 次 target 前传
  若 c_d <&lt; c_t,总时间 ≈ 3 次 target 前传 → 产出 8 tokens → ~2.7× 加速

验证的计算图

验证阶段的本质是 一次 Prefill 式前传

输入: [token_0, token_1, ..., token_n, draft_x1, draft_x2, ..., draft_xK]
                ↑ 已有 KV-Cache                   ↑ 需计算注意力

Target Model 一次性为所有 K 个位置计算隐藏状态 → 词表 logits

关键: K 个 draft token 的计算是并行的 (受 GPU compute-bound 启发)
     这比 K 次串行 decode (每次 memory-bound) 高效得多

在实现中:

  • KV-Cache 管理:target 模型需要为验证位置预先分配 KV-Cache 空间。接受后释放未用部分,拒绝后回退。对推理框架(vLLM、TensorRT-LLM)的调度器提出要求。
  • Attention Mask:验证时 K 个 token 之间需要 causal mask,但与 draft 阶段的 mask 不同。

Draft 模型的选取策略

策略描述代表工作
独立小模型与 target 同系列但参数量小(如用 LLaMA-7B draft for LLaMA-70B target)Leviathan et al., 2023
同模型量化版用 target 模型的 4-bit 量化版做 draft(天然与 target 分布接近)[行业实践,未充分披露归属]
浅层 Early Exit用 target 模型的前几层输出直接预测 token(Self-Speculative)[推测实现方向,待具体论文确认]
检索增强 Draft从语料库中检索 n-gram 作为 draft token(零额外参数)REST [He et al., 2023]
多头预测在 target 模型最后层加多个预测头,每头预测不同未来位置Medusa [Cai et al., 2024]
特征外推用 target 模型中间特征线性外推下一层输出EAGLE [Li et al., 2024]

技术演进史

2022.11  Leviathan et al. (Google) 发表 "Fast Inference from Transformers via
         Speculative Decoding" [arXiv:2211.17192] —— 首次正式提出框架

2023.02  Chen et al. (DeepMind) 发表 "Accelerating Large Language Model Decoding
         with Speculative Sampling" [arXiv:2302.01318] —— 独立提出类似方法
         (Speculative Sampling / SpecSam)

2023.04  两篇论文同期被 ICML 2023 接收,该方向获得学术界广泛认可

2023 H2  工程集成阶段:各大推理框架 (vLLM, TensorRT-LLM, llama.cpp)
         陆续实现 Speculative Decoding 支持

2023-24  变体爆发:
         - Medusa:免 draft 模型,多头并行预测
         - REST:基于检索的 draft,零额外参数
         - EAGLE:基于特征外推,高接受率
         - Lookahead Decoding:Jacobi 迭代式并行解码
         - Self-Speculative:用自身浅层做 draft (如 draft & verify 用同一模型)

2024+    与硬件协同:推测解码改变了 decode 阶段的计算特征
         (从 memory-bound 转向 compute-bound),影响 GPU 选型与集群调度策略

技术路线对比

维度经典 Speculative DecodingMedusaEAGLESelf-SpeculativeREST (检索)
是否需要额外 draft 模型否(额外 head)否(额外外推模块)否(同模型浅层)否(检索库)
额外参数量完整小模型少量 head 参数少量外推网络
分布保真性✅ 严格保真⚠ 需修正采样✅ 严格保真✅ 严格保真✅ 严格保真
典型加速比2-3×2-3×2.5-3.5× [作者报告]1.5-2× [估算]1.5-2.5× [估算]
工程复杂度中(两模型调度)低(单模型加 head)中(特征缓存)
训练需求无(draft 现成)需训练 head需训练外推模块
适用场景draft 与 target 分布匹配时通用,尤其大模型通用,接受率高受限于浅层质量文本分布有规律时

上下游

上游(依赖什么)

层级要素说明
模型层Target 大模型 + Draft 小模型(或等价替代)Draft 与 target 的分布一致性决定接受率
算法层修正拒绝采样数学框架保证输出分布严格不变
框架层推理引擎的调度器支持需要处理 KV-Cache 回退、动态批处理中不同请求的推测长度差异
硬件层GPU/加速器的并行计算能力验证步骤变为 compute-bound,对算力(而非仅带宽)的需求上升

下游(影响什么)

受影响领域影响方式
LLM 推理服务直接降低每 token 成本,提高吞吐
用户体感延迟TTFT 不变,但 TPS(tokens/sec)提升
GPU 选型逻辑推测解码使 decode 阶段更偏 compute-bound,高算力卡(如 H100 SXM)vs 高带宽卡的权衡发生变化
Batching 策略推测长度动态变化,对 continuous batching 的调度提出新挑战
端侧推理在手机/边缘设备上,draft 模型可用极小模型实现,可行性高

关键指标

指标含义典型范围
Acceptance Rate (\alpha)每个 draft token 被 target 接受的概率0.5 - 0.9+
Speculation Length ($K$)每轮推测的 draft token 数3 - 8(常见),理论上可更高
Speedup Factor相对于标准解码的加速比1.5× - 3×(实践),理论更高
Overhead Ratio (c_d/c_t)draft 模型单次前传成本 / target 模型验证成本目标 < 0.1(越小越好)
Wall-clock Latency端到端生成延迟降低 30%-70%(视场景)
Throughput (tokens/sec/GPU)单卡吞吐量可提升 1.5-3×

供需与市场数据

供给侧

  • 开源框架支持:vLLM(从 v0.4+ 开始支持推测解码)、TensorRT-LLM(NVIDIA 官方支持)、llama.cpp(支持 draft model 推测解码)、SGLang 等。据 [开源社区观察,非精确统计],主流推理框架均已将推测解码作为标准特性。
  • 闭源 API:各主要 API 提供商(OpenAI、Anthropic、Google 等)是否在服务端使用推测解码 [未充分披露],但技术上完全可行且有强烈动机。

需求侧

  • LLM 推理的全球算力需求据 [多家行业报告综合估算] 在 2024 年约占 AI 算力总支出的 50% 以上,且推理占比持续上升。
  • 推测解码作为一种纯推理侧优化,不需要额外训练成本,部署门槛低,需求侧采纳意愿强。

市场影响估算

如果推测解码在行业中位数实现 2× 加速,相当于在不增加 GPU 的情况下将推理吞吐翻倍。对于年推理支出数十亿美元级别的公司(如 [估算] OpenAI、Google、字节跳动等),即使仅覆盖部分场景,节省的算力成本可达数亿美元量级 [粗略估算]。


代表公司与资本映射

公司/团队角色关联标的/逻辑
Google (DeepMind)Speculative Decoding 两大原始论文之一出自 Google ResearchAlphabet (GOOGL)
DeepMindSpecSam 论文作者团队Alphabet (GOOGL)
NVIDIATensorRT-LLM 原生支持推测解码;推测解码使推理更 compute-bound,可能提升高端 GPU 需求NVDA
vLLM 团队 (UC Berkeley)开源推理引擎,率先集成推测解码未上市 / 开源生态
MetaLLaMA 系列是推测解码最常见的 target/draft 组合META
SambaNova / Groq / Cerebras定制推理芯片/架构;推测解码改变计算特征,影响架构设计方向各有融资/上市路径
各大云厂商推测解码直接降低推理服务成本,提升单位算力营收AMZN (AWS), MSFT (Azure), GOOGL (GCP)

资本影响逻辑

推测解码本身是算法层优化,不直接对应独立商业模式,但:

  1. 利好高端 GPU:验证阶段变为 compute-bound,高算力卡(H100/B200)的优势更明显。
  2. 利好推理框架生态:支持推测解码成为框架竞争力分水岭。
  3. 利好小模型生态:高质量小模型作为 draft 的需求上升。

投资逻辑

看多理由

  1. 免费午餐:不改模型、不牺牲质量、纯推理侧优化——落地阻力小。
  2. 复合效应:与量化(Quantization)、KV-Cache 压缩、Flash Attention 等技术正交,可叠加使用,进一步放大加速。
  3. 小模型复用价值:各厂商已训练的中等规模模型(7B/13B)天然可做 draft,资产利用率提升。
  4. 边际成本递减:一旦推理框架适配完成,全行业可共享优化红利。

需关注的风险

  1. Draft 模型质量问题:如果 draft 与 target 分布差距大,接受率低,加速比趋近于 1,甚至因 overhead 而变慢。
  2. Batch 场景复杂化:大 batch 下推测解码的收益可能被调度开销稀释(不同请求推测成功长度不同,导致 GPU 空泡)。
  3. MoE 模型的挑战:对于 Mixture-of-Experts 模型,推测解码的验证阶段需要频繁的 All-to-All 通信,实现更复杂。
  4. 架构迭代风险:如果未来出现非自回归架构(如扩散语言模型、SSM 变体),推测解码的基础假设(逐 token 自回归)可能被绕过。

常见误读纠偏

❌ 误读 1:“推测解码会降低生成质量”

纠正:不会。 修正拒绝采样的数学保证了输出分布严格等价于直接从 target 模型采样。这不是近似,是精确等价。输出质量完全取决于 target 模型本身,draft 模型只影响速度、不影响质量。

❌ 误读 2:“推测解码需要重新训练大模型”

纠正:不需要。 Target 模型完全不改动。Draft 模型通常是已有的小模型(或用量化版本、浅层截取等方法获得),不需要针对推测解码进行专门训练。部分变体(如 Medusa、EAGLE)需要训练额外的小模块,但主模型权重冻结。

❌ 误读 3:“推测解码就是投机取巧地多猜几个 token,和 beam search 类似”

纠正:完全不同。 Beam Search 是改变解码搜索策略(搜索更宽的候选空间),可能改变输出分布;Speculative Decoding 不改变搜索策略(仍按原采样方式),只是改变了计算的组织方式(猜测+验证),且数学保证输出分布不变。

❌ 误读 4:“Draft 模型越小越好,因为推理更快”

纠正:有取舍。 Draft 模型越小,c_d 越低,但与 target 的分布差距越大 → 接受率 \alpha 越低 → 每轮有效 token 数减少。最优 draft 模型大小是使 \alpha 足够高的最小模型,而不是绝对最小的模型。经验值:draft 模型参数量约为 target 的 1/5 到 1/10 可能是较好的平衡点 [基于公开实验报告的估算,非普适结论]。


学习路径

入门(1-2 小时)

  1. 先理解 LLM 自回归解码的基本原理(为什么是 memory-bound)
  2. 阅读 [Leviathan et al., 2023] 的 Introduction 和 Figure 1(直觉图解)
  3. 看一篇英文博客(如 Lilian Weng 或 HuggingFace Blog 对 Speculative Decoding 的介绍)

进阶(3-5 小时)

  1. 精读 [Leviathan et al., 2023] 的 Section 3(修正拒绝采样的数学推导)
  2. 精读 [Chen et al., 2023] 的 Speculative Sampling 算法伪代码
  3. 对比 Medusa 和 EAGLE 论文的方案差异

动手(1-2 天)

  1. 用 llama.cpp 或 vLLM 跑一个 Speculative Decoding demo,对比有/无推测解码的延迟
  2. 调节 $K$(推测长度)和 draft 模型大小,观察接受率和加速比变化
  3. 在 TensorRT-LLM 中尝试量化版 draft(如 4-bit draft + 16-bit target)

深入研究

  1. 研究推测解码在 batch 场景下的调度策略(连续批处理 + 推测长度动态变化)
  2. 关注推测解码与 KV-Cache 压缩、PagedAttention 的交互
  3. 探索推测解码在非 Transformer 架构(如 SSM/Mamba)中的适用性

一句话总结

Speculative Decoding 用一个廉价的小模型快速猜测多个 token、再用昂贵的大模型一次性并行验证,以修正拒绝采样数学保证输出分布严格不变,实现 2-3× 的推理加速——本质上是把 memory-bound 的逐 token 解码变成 compute-bound 的批量验证,是当前最具工程落地价值的 LLM 推理加速技术之一。


延伸阅读与来源

来源说明
[Leviathan et al., 2023] “Fast Inference from Transformers via Speculative Decoding”, ICML 2023, arXiv:2211.17192原始论文之一(Google Research)
[Chen et al., 2023] “Accelerating Large Language Model Decoding with Speculative Sampling”, ICML 2023, arXiv:2302.01318原始论文之二(DeepMind)
[Cai et al., 2024] “Medusa: Simple LLM Inference Acceleration Framework with Multiple Decoding Heads”, arXiv:2401.10774Medusa 变体
[Li et al., 2024] “EAGLE: Speculative Sampling Requires Rethinking Feature Uncertainty”, arXiv:2401.15077EAGLE 变体
[He et al., 2023] “REST: Retrieval-Based Speculative Decoding”, arXiv:2311.08252检索增强 draft 方案
vLLM 官方文档 — Speculative Decoding工程实现参考
NVIDIA TensorRT-LLM 文档 — Speculative Decoding工程实现参考
Lilian Weng Blog, “Prompt Engineering” / “Large Transformer Model Inference Optimization”综合性技术博客

免责与准确度说明:本文中的数学公式基于 [Leviathan et al., 2023] 和 [Chen et al., 2023] 公开论文。加速比数值、市场估算等基于公开论文报告值与行业经验推断,已做标注。具体加速效果因模型、硬件、任务、batch size 等因素差异显著,请以实际测量为准。

source: 公开披露与公开资料整理 本页仅用于产业链学习、信息检索和研究辅助;不构成投资建议,不预测涨跌,不提供买卖、仓位或目标价建议。
完整概念页 复盘 13 节结构 公司投研页 沿产业链找到受益公司 投资课 把概念转成可跟踪模型