概述
EAGLE 是最先进的版本,它在功能级别而不是令牌级别进行起草,可提供 2-4 倍的加速,并且输出质量损失为零。
深入探讨
正常的 LLM 生成是自回归的:模型生成一个令牌,将其反馈并重复,因此每个令牌都需要对数十亿个参数进行完整的前向传递。推测性解码打破了这个瓶颈。廉价的起草者提出了一大块候选令牌,而昂贵的目标模型在一次并行传递中验证所有这些令牌,接受最长的正确前缀。 EAGLE(提高语言模型效率的外推算法)通过在模型的隐藏特征空间中起草并反馈先前标记的真实嵌入来减少不确定性,从而改进了早期方法。 EAGLE-2 添加了动态草图树,而 EAGLE-3 则删除了特征预测约束以更好地扩展。至关重要的是,验证可确保输出与目标模型单独产生的输出相同。
现实世界的实施
缩短聊天助手的延迟,使响应速度提高 2-3 倍,而无需更改模型的答案
通过每次前向传递生成更多令牌,降低大容量 API 提供商的 GPU 服务成本
加速长链思维推理模型,其中每个查询生成数千个令牌
加快代码完成工具的速度,其中可预测的、重复的标记序列可产生较高的草稿接受率
EAGLE 推测解码的未来
推测性解码正在成为 vLLM 和 TensorRT-LLM 等服务堆栈中的默认基础设施。期望与批处理和 KV 缓存共享、不需要单独起草者的自起草模型以及假设并行验证的硬件协同设计进行更紧密的集成。 EAGLE 风格的特征起草正在扩展到多模式和推理模型,在这些模型中,长的思想链使得每个令牌的成本尤其痛苦,并且扩展到延迟最重要的设备上推理。
付诸实践
为什么这很重要
- 成本与预算. 多年来,架构决策决定着性能和运营成本。
- 更清晰的判决. 技术教育帮助团队选择正确的堆栈,而不仅仅是最新的堆栈。
- 质量控制. 更好的工程选择可以减少生产中的可靠性事故。
留意
- 优化一项基准测试可以隐藏更广泛的系统弱点。
- 基础设施和维护成本常常被低估。
- 随着系统变得更加复杂,安全性和可观察性差距可能会扩大。
后续步骤
- 在实施之前定义延迟、质量和成本目标。
- 在实际负载和数据条件下进行基准测试。
- 仪器监控错误、漂移和用户影响。
- 在扩展之前准备回滚和事件响应路径。
不断探索
常见问题
什么是 EAGLE 推测解码?
推测性解码通过让一个小草稿模型提前猜测几个标记,然后由大模型一次性验证,从而加速大型语言模型推理。 EAGLE 是最先进的版本,它在功能级别而不是令牌级别进行起草,可提供 2-4 倍的加速,并且输出质量损失为零。
推测解码背后的核心思想是什么?
小型起草者猜测前面的几个标记,大型目标模型将它们一起验证,接受最长的正确前缀。
EAGLE 与早期的推测解码方法有何不同?
EAGLE 预测目标模型的隐藏特征并重用其 LM 头,这比仅使用 token 的方法产生更准确的草稿。
为什么在通过精确验证实现时推测解码被认为是无损的?
精确的推测采样保留了目标分布;这并不意味着每次随机运行都必须在不同的随机抽取下发出相同的令牌序列。
反馈前一个 token 的嵌入有助于解决 EAGLE 特征起草中的什么问题?
以实际的前一个标记为条件可以减少预测下一个隐藏特征的模糊性,从而提高草稿准确性。
EAGLE-2 在原来的 EAGLE 基础上添加了什么?
EAGLE-2引入了上下文感知的动态草案树,扩展了有希望的分支以提高接受率。