概述
精确的推测采样可以保留目标分布,但加速取决于草稿成本、接受率、批处理和硬件。
深入探讨
Normally an LLM generates text one token at a time: each token requires a full forward pass through the giant model, and you can't start the next until the current one finishes. For large models at low batch sizes, decoding can be memory-bandwidth bound: each token step reads many weights, so moving data may dominate arithmetic. Other batch sizes and workloads can have different bottlenecks. Speculative decoding breaks the bottleneck. A small, cheap draft model proposes a chunk of, say, five candidate tokens. The large 'target' model then processes all five in a single parallel forward pass and checks them. In greedy decoding, the target accepts the matching prefix and uses its own token at the first mismatch, discarding the remaining draft. Exact sampling uses a rejection-sampling correction to preserve the target distribution; acceptance is not always simple token equality. The target can verify a drafted block in a parallel pass, but verification still costs computation. Net speedup depends on draft-model cost, how many tokens are accepted, and the hardware and workload.
现实世界的实施
7B 草案模型提出 70B 聊天模型的代币,以减少生产助理中的响应延迟
Medusa 头固定在 LLM 上,因此无需单独的草稿模型即可同时预测多个未来代币
vLLM 支持推测性解码,以提高服务集群上的每秒令牌吞吐量
在模型的隐藏特征空间中进行 EAGLE 绘图,以提高接受率和整体速度
推测解码的未来
服务框架提供推测性解码和自起草变体,但最佳方法取决于目标模型、工作负载和硬件。系统应该测量延迟、吞吐量、接受率、内存使用和输出分布要求,而不是假设固定的加速比。有些方法使用单独的绘图员;其他人添加头部或使用特征空间建议。持续的研究可能会改善这些权衡,但部署收益必须根据实际服务来衡量。
付诸实践
为什么这很重要
- 成本与预算. 多年来,架构决策决定着性能和运营成本。
- 更清晰的判决. 技术教育帮助团队选择正确的堆栈,而不仅仅是最新的堆栈。
- 质量控制. 更好的工程选择可以减少生产中的可靠性事故。
留意
- 优化一项基准测试可以隐藏更广泛的系统弱点。
- 基础设施和维护成本常常被低估。
- 随着系统变得更加复杂,安全性和可观察性差距可能会扩大。
后续步骤
- 在实施之前定义延迟、质量和成本目标。
- 在实际负载和数据条件下进行基准测试。
- 仪器监控错误、漂移和用户影响。
- 在扩展之前准备回滚和事件响应路径。
不断探索
常见问题
什么是推测解码?
推测性解码可以通过让更快的起草者为目标模型提出令牌以进行批量验证来加速大型模型的生成。精确的推测采样可以保留目标分布,但加速取决于草稿成本、接受率、批处理和硬件。
推测性解码如何加速大型模型的生成?
快速草稿模型提出多个令牌,大型目标模型在一次并行传递中检查所有令牌。
对于低批量大小的大型模型,为什么单令牌自回归解码会很慢?
对于低批量大小的大型模型,重复读取权重可能会主导算术,尽管瓶颈取决于工作负载。
在贪婪推测解码中,草稿和目标预测不一致的第一个标记会发生什么?
在贪心验证中,目标纠正第一个不匹配,并丢弃剩余的草拟后缀;精确采样使用拒绝采样校正来代替。
在精确推测采样下,输出分布与仅从目标模型采样相比如何?
精确的拒绝采样校正保留了目标模型的分布;这与宽松的变体不同。
最直接决定推测解码加速的因素是什么?
目标模型每个验证步骤接受的起草令牌越多,加速就越大。