文章摘要
大语言模型逐token自回归生成推理速度慢、部署成本高,传统投机解码存在首个token分歧即截断、浪费已完成计算的问题。北航、清华等四校联合团队提出近似投机解码ASD,在可控预算内接受低遗憾分歧,复用已计算内容,免训练即插即用兼容主流框架,测试平均提速约7.5%,最高15.26%,精度波动小,为大模型推理部署提供低成本加速路径。

大语言模型采用逐token自回归生成,每输出一个token都需要运行一次千亿参数的大模型,这是推理速度慢、部署成本高的核心瓶颈。投机解码作为近年主流的免费提速方案,通过轻量草稿模型先生成一段候选token,再由大模型一次性并行验证批改,被vLLM等主流推理框架广泛采用。不过传统投机解码有一个严格的验证规则:只要草稿的第一个token和大模型的最优选择不一致,就会立即停止验证,直接丢弃后续所有草稿内容,哪怕大模型已经完成了整段草稿的计算,造成了算力浪费。

北京航空航天大学、清华大学、香港大学、北京大学联合团队提出的近似投机解码(Approximate Speculative Decoding,ASD),打破了这一僵化规则,在严格可控的预算范围内,有选择地接受极少数“大模型本身也几乎倾向选择”的分歧token,并复用后续已经验证正确的内容,充分利用已经完成的计算资源。

核心性能数据

  • 在Qwen3-14B搭配DSpark-14B的7个任务测试中,固定负载吞吐平均提升7.78%,区间在3.64%到11.73%之间,平均每轮接受的token数从3.85提升到4.20;
  • 在DSpark、EAGLE3、Medusa三种主流草稿框架的10组配置中,全部实现正增益,提速幅度在3.05%到15.26%之间,平均提升7.52%,最高提速达15.26%;
  • 在284B参数的超大模型DeepSeek-V4-Flash(使用8张H20 GPU)上,验证端接受率提升约10%到16%;
  • 新增的验证逻辑每个token仅增加0.045到0.083毫秒的开销,且无需训练、微调,也不需要额外运行大模型;当预算设为零时,ASD会严格退化为标准投机解码,完全兼容原有系统;
  • ASD是即插即用的验证器模块,无需改动草稿模型和原有流程,可直接挂载到多种主流投机解码算法上实现提速。

研究背景

大语言模型的逐token生成需要数百上千次串行的大模型前向计算,而生成长篇内容的成本极高。投机解码通过轻量草稿模型批量生成候选,再由大模型并行验证,在严格的理论保证下可以实现和原生生成完全一致的输出。但传统的贪心验证规则存在明显的算力浪费:一旦第一个token出现分歧,后续已经完成计算的所有验证结果都会被丢弃,就像老师批改听写时,学生第一个字写错就撕掉整张已经批改好的答卷,完全浪费了已经付出的计算成本。更值得注意的是,大模型在计算后续token的logits时,本身就是基于“前面草稿全部正确”的假设进行的,也就是说,如果我们接受这一处小分歧,后续的很多token可能恰好也是大模型的最优选择,这些计算结果本可以被充分利用。

token分歧不等于任务失败

研究团队指出,草稿和大模型在单个token上的分歧,并不等同于最终任务结果出错。比如同一个数学结果可以写成1776、1,776或者带方框的\boxed{1776},37×48和48×37只是交换了顺序,推理中的连接词替换也不会改变最终语义。token级别的差异只是任务质量的不完美代理信号,而非错误本身。不过团队也强调,接受非贪心的token会改变解码轨迹,并非无损优化,真正的挑战在于如何在允许少量分歧的同时,将累计的偏差控制在整个请求范围内,避免误差随着生成长度不断累积。如果仅在每个草稿块内单独放宽容错,会让偏差在多轮解码中不断叠加;而如果每块都重置容错额度,又无法对同一段生成中已经引入的偏差进行约束,ASD正是为解决这一问题提出的方案。

研究方法

ASD的核心思路是,不再在第一个分歧处直接截断,而是在可控预算内选择性接受低遗憾的分歧,复用后续已经验证正确的连续token,无需额外计算。当出现token分歧时,ASD会计算该分歧的“遗憾值”,即大模型最优选择和草稿选择之间的概率差,遗憾值越小,说明该分歧越无伤大雅。为了防止偏差失控,ASD设置了三道约束闸门:

  1. 局部遗憾门控:单个分歧的遗憾值必须足够小,且和后续可复用的token数量相匹配,过于不划算的分歧会被直接拒绝;
  2. 单块异常次数上限:每个草稿块内最多允许的分歧次数,避免单块内出现过多偏差;
  3. 请求级遗憾预算账本:整个生成过程中累计接受的偏差总量被约束在固定预算内,彻底避免误差随生成长度累积。

这三道闸门共同作用,让近似优化变得可量化、可审计。此外,ASD还设计了前缀后缀复用机制:接受一个分歧token后,后续的草稿会基于包含该分歧的新前缀重新计算,其中一段连续的后缀往往恰好是大模型的最优选择,这部分内容可以直接复用,无需额外计算,这也是ASD实现提速的核心来源。

工程层面,ASD是独立的即插即用验证器模块,不需要重写草稿模型或改变原有投机解码流程,仅需要将标准验证中的“首个分歧即截断”替换为“预算化的最长前缀选择”即可接入现有流水线。它的优势包括:

  • 免训练、免微调、无需更换草稿模型,仅增加O(K)级别的算术复杂度;
  • 框架无关、广泛兼容,可直接挂载到DSpark、EAGLE3、Medusa等任意主流投机解码算法的验证环节;
  • 预算为零时严格退化为标准贪心验证,随时可以无缝切回原有系统。

实验结果

团队通过两组核心实验验证了ASD的有效性。

第一组实验:预算内放宽分歧能否提升端到端吞吐?

在Qwen3-14B搭配DSpark-14B,覆盖GSM8K、MATH-500、HumanEval、MBPP、MMLU、MT-Bench、Alpaca共7个任务的测试中,ASD的固定负载吞吐全部实现提升,幅度在3.64%到11.73%之间,平均提升7.78%。其中数学类任务MATH-500和GSM8K的提速最为明显,分别达到11.73%和10.08%,平均每轮接受的token长度也分别增加了0.67和0.49个,符合“接受低遗憾分歧解锁已算好后缀”的特征。在自然结束解码的质量审计中,7个任务中有5个的准确率没有下降,仅HumanEval和MT-Bench出现了约0.6个百分点的微小波动。

第二组实验:作为通用模块,ASD换用其他投机解码算法仍有效吗?

团队将同一个ASD验证器挂载到DSpark、EAGLE3、Medusa三种不同的投机解码算法上,在Qwen3、Llama-3.1、Qwen2.5等多款目标模型上进行交叉验证,10组配置全部实现正增益,提速幅度在3.05%到15.26%之间,平均提升7.52%,所有95%置信区间都严格大于零,且每组的平均接受token长度都有所增加。这说明提速来自ASD的验证端机制本身,而非特定草稿算法的改动。这些增益是在原有投机解码已经实现1.82×到6.88×加速的基础上再次提升,将整体加速上限推到了1.94×到7.32×。

消融实验和开销测试显示,相比仅在局部放宽的MARS、Fuzzy等对照方法,ASD在GSM8K上提升6.5%,在MATH-500上提升9.7%,凸显了请求级预算账本的不可替代性。系统层面,每个token仅增加0.045到0.083毫秒的验证开销,而验证轮次的减少让目标验证时间下降了1.48到1.51毫秒,说明提速确实来自昂贵验证轮次的减少,而非隐藏的额外开销。在284B参数的DeepSeek-V4-Flash搭配DSpark的大规模实验中,使用8张H20 GPU,在1000例独立GSM8K-Confirm验证集上,接受率提升了10.08%到11.48%,精度波动不超过0.3个百分点,GSM8K和MATH-500的验证端接受率总体提升约10%到16%。

不吹无损:把权衡摆上台面

论文明确指出,接受非贪心token会改变解码轨迹,ASD仅约束累积局部遗憾的上界,并不保证输出逐字一致、语义不变或任务必然正确。为此团队采用两套独立审计来明确权衡:固定负载评测衡量吞吐性能,自然结束解码则单独审计准确率、生成长度和输出哈希分歧率。结果显示,在GSM8K和MATH-500上,虽然超过95%的请求输出轨迹发生了变化,但实测准确率并没有下降,通过搜索帕累托前沿,甚至可以在大多数场景下实现精度和速度的双重提升。这印证了论文的核心立场:token分歧不等于任务失败,但任何近似轨迹都不能被当作“精确”或“绝对安全”,速度和行为的取舍应当被显式建模并公开披露,交由具体应用进行审计。实际部署时,可以先在独立数据上冻结预算B、门控g、块上限M三个参数,再针对每个模型和任务进行质量审计。

未来展望

ASD仅改动大模型验证后的验收决策,和草稿生成侧的改进天然正交,可以相互叠加,因此拥有广阔的想象空间:

  • 与更强的草稿模型、树形草稿结合:ASD不挑草稿类型,无论是循环草稿头、检索增强草稿,还是SpecInfer、Sequoia等树形草稿,都可以挂载ASD验证模块。草稿生成的候选越长、路径越多,接受小分歧解锁已算好后缀的机会就越大,两者叠加有望实现更高的加速比;
  • 从贪心验证推广到采样验证:目前ASD仅作用于贪心解码,而在创意写作、开放对话等需要随机性的场景中,投机采样依赖拒绝采样来严格保持输出分布。如何将“预算化接受”引入采样设定,在分布偏差可证可控的前提下实现提速,是重要的下一步方向;
  • 让三道闸门更智能:当前的预算B、门控g、块上限M是在独立数据上离线冻结的,未来可以让它们随任务类型、模型置信度、生成长度自适应调整,甚至引入语义级、任务级的验收信号(比如数学、代码任务直接校验最终答案),将“遗憾账本”记录在更贴近任务质量的维度上;
  • 更紧的理论边界:目前的账本仅约束累积局部遗憾的上界,并非完整的序列似然比保证,未来若能给出更紧的分布偏差界,就能让近似优化在理论上同样可证、可审计;
  • 走向生产级超大模型部署:本次284B模型的实验受FP4到FP8兼容路径限制,主要刻画了接受率和精度的变化,后续在生产级MoE大模型、分离式推理服务上的端到端落地,以及配套的任务质量审计流水线,将是工程落地的关键一步。

从应用场景来看,对话、代码生成、数学推理等高并发场景对单token延迟和单token成本极为敏感,ASD“免训练、即插即用、预算归零即可无损退回”的特性,使其有望作为vLLM、SGLang等主流推理框架的可选验证器模块灰度上线,在多数任务质量基本不变的前提下,充分利用已经完成的大模型计算资源,为大规模、低延迟的大模型服务提供通用且低成本的加速路径。

小结

ASD提供了一条免训练、广兼容的投机解码加速路径,它作为即插即用的验证器模块,无需改动草稿生成流程,仅在验证端将“首个分歧即截断”替换为“预算化的最长前缀选择”,充分利用大模型已经完成的计算结果。它的核心优势包括:即插即用、框架无关,可直接挂载到DSpark、EAGLE3、Medusa等多种主流投机解码算法上,并在所有场景下实现正向提速;免训练、免微调、无需额外大模型前向计算,吞吐最高提升15.26%,主实验平均提升约7.8%,跨算法平均提升约7.5%;在284B超大模型上仍能实现10%到16%的验证端接受率提升;三道闸门让偏差有界、可控、可审计,预算归零即可无缝切回原有系统。在不牺牲多数任务准确率的前提下,ASD为大模型的低成本、高效率部署提供了即插即用的新选择。

相关论文链接:https://arxiv.org/abs/2608.03447

开源实现地址:https://github.com/Kissmetothemoon/ASD

以上内容不代表本平台立场,仅供读者参考