Skip to content

03. Decoding Strategies | 解码策略 ​

页面目标 ​

从首 token 之后的生成循环开始,观察单条请求每轮如何读取已有 KV 状态、产生输出,再比较生成策略对速度、质量和额外成本的影响。

核心机制 ​

Decode 是一轮一轮的小步生成:每一步读取已有 KV 状态,得到 logits,再选择下一个 token,并把新的 token 和状态追加到序列中。先用贪心解码建立基线;再把投机式生成看成一条策略链:经典 draft / target 验证、多个 token 推进与更一般的多候选验证,目标都是提高每轮有效推进量。本页重点是单条请求的生成决策;多个请求如何组织执行,放到 Task4 的调度正文中。

这里的“加速”不是简单地减少模型调用次数,而是提高每次验证真正提交的 token 数。可以用 effective_output_tokens / decode_step 表示单轮有效推进量;它必须和 acceptance_rate、验证耗时、回退次数以及最终质量一起观察。这样才能区分“候选更多”与“有效生成更多”。

Decode 策略对照

策略主要改变什么需要观察什么
贪心 Decode(基线)每轮选择 logits 最大的一个 token输出长度、TPOT、KV Cache 访问、质量
随机采样按 temperature、top-k / top-p 选择 token质量、重复率、TPOT、输出稳定性
经典投机解码draft 提议、target 验证与修正acceptance rate、验证成本、TPOT
多 Token 投机式推进单轮提出多个 token 或候选有效推进、首次拒绝与回退
Decode Scheduling不同请求的执行顺序,属于 Task4 的请求级调度吞吐、TPOT、P99

单请求的 Decode 可以按“读取状态 → 计算 logits → 选择 token → 检查停止 → 追加状态”理解。策略改变的是其中的候选生成、验证或单轮产出;它不会自动消除 KV Cache 的容量约束,也不能用吞吐提升替代质量检查。比较 speculative decoding 或 multi-token decoding 时,还要记录接受情况和回退成本。

生成环节需要回答的问题证据
读取状态本轮使用了哪些历史 KV?Cache 长度、TPOT、读写量
选择 token是贪心、采样,还是 draft 提议后验证?temperature、top-k/top-p、acceptance rate
停止与回退何时遇到 EOS,何时拒绝候选?generated tokens、停止原因、回退次数
质量与成本更快是否保持了目标质量?质量指标、TPOT、吞吐、额外模型成本

生成策略的比较需要把“可重复性”和“质量门槛”一起固定。贪心 Decode 适合作为确定性基线;采样实验应固定随机种子和采样参数;speculative decoding 还要记录 draft 与 target 的版本、接受率和拒绝后的回退路径。只有在输出质量达到同一门槛后,TPOT 或吞吐的改善才可以作为性能收益。

对照条件应固定的内容额外记录
贪心基线模型、Prompt、最大输出长度、停止条件输出 token、TPOT、E2E、质量基线
随机采样seed、temperature、top-k/top-p、Prompt 集重复率、格式成功率、质量分布
经典投机解码draft/target 模型、proposal 长度、验证规则acceptance rate、回退次数、额外显存
多 Token 投机式推进候选来源、单轮候选数量、接受与回退规则有效推进、验证成本、TPOT

参考入口:论文 Fast Inference from Transformers via Speculative Decoding;开源实现 vLLM Speculative Decoding。

判断框架 ​

本节承接 02 的 Prefill 与 Attention,先用 21 Decoding Strategies 建立单步生成口径,再用 23 Speculative Decoding 理解经典 draft / target 验证,用 35 Multi-Token Speculative Decoding 比较候选推进分支,随后由 68 Benchmark 固定质量与成本口径;最后才通过 36 Decode Scheduling 观察多请求组织。阅读下表时,先固定 TPOT、decode_share、generated tokens 和质量约束,再根据现象选择下一步动作。

观察到的现象优先判断下一步
每轮生成耗时高Decode 计算、KV Cache 访问或 sampling检查基础 Decode 和 04
循环次数过多生成长度或单轮产出受限检查 speculative / multi-token
acceptance rate 低draft model 或 proposal 不匹配调整 draft、长度或放弃策略
多请求吞吐低、P99 高请求组织或调度问题进入 07 / 06

Released under the MIT License.