AdaFlash:优化投机解码,减少大模型无效计算

当大模型开始被智能体(Agent)高频调用时,推理加速的核心逻辑正在发生变化——不再仅仅关注单次前向传播能生成多少Token,更要在真实流量中持续识别并跳过无效计算。
投机解码为大模型推理加速提供了实用路径:轻量级的草稿模型先提出一段草稿序列,再由大尺寸的目标模型一次性验证,保留通过验证的前缀,从而提升推理速度。近年来,扩散草稿模型进一步降低了草稿开销,将草稿生成从多次自回归前向传播压缩到一次并行前向传播。
但这种并行生成带来了新的不确定性。同一草稿模型在不同任务领域的接受率可能大幅波动,同一问题的不同阶段,草稿质量也存在明显差异。固定的草稿长度和离线权重,难以适配工业生产中不断变化的请求场景。
针对这一问题,南京大学与华为基础模型团队提出了AdaFlash方案,核心是让扩散草稿模型根据目标模型的反馈进行在线学习更新,并依据当前草稿序列的质量动态调整验证长度。
AdaFlash在多种模型、任务和并发度下保持稳定加速,在Qwen3-8B模型上实现最高5.32倍的端到端加速;在高并发场景下,平均吞吐较当前最优水平最高提升66%,并已适配国产昇腾计算平台。
投机解码的发展方向:从“更快”到“更高效”
投机解码的发展正从“生成更快”转向“更高效”,传统方法固定验证长度,会将大量计算资源浪费在低置信度的草稿尾部。AdaFlash与同期的相关方案都将验证数量从固定超参数改为随请求状态变化的动态决策,这是领域内的关键共识。
两者的切入点有所不同:相关方案偏向高并发服务中的置信度调度,而AdaFlash则把动态验证和草稿模型在线适应放在同一个闭环里,自适应长度头预测整段草稿的总体接受率,在线策略蒸馏持续修正扩散草稿模型,服务引擎再按每个请求的预测长度重新打包验证批次。
AdaFlash的核心架构:在线学习闭环
AdaFlash的核心是在线学习闭环,包含两个互补组件:一是在线策略蒸馏,利用真实流量中的反馈更新草稿模型,与离线蒸馏不同,它使用当前模型生成的轨迹训练,减轻训练与推理的分布偏差。论文针对扩散草稿模型的分布特点设计了两处改动:反向KL与Top-1硬标签的混合损失,既提高接受率,又提供稳定的梯度方向;逐词表项的散度裁剪,避免离群项主导更新。
二是自适应长度头,读取草稿模型的中间特征,预测草稿序列的整体接受率,动态调整验证长度,将计算资源集中在更可能被接受的前缀上。验证结束后,系统会及时收到真实接受率反馈,无需额外标注或调用目标模型即可在线更新长度头,解决了草稿质量不均带来的计算浪费问题。
同时,AdaFlash还实现了基础设施层面的优化:训练与推理解耦,推理服务器把线上轨迹写入共享缓冲区,训练服务器后台更新模型,新权重通过轻量级热加载替换,不阻塞Token生成;可变长度请求打包,允许每个请求使用不同验证长度,打包成紧凑批次,提升硬件利用率并避免显存超预算。
实验结果:多场景下的稳定优势
该方案在八个基准任务上完成评估,覆盖数学推理、代码生成、对话、混合领域和长序列推理。在Qwen3-8B模型上,单请求加速最高达5.32倍,并发度128时仍保持1.15倍加速,显著优于现有方案;在MoE模型上,并发度128时平均加速达1.69倍,远超其他对比方法。
在长序列推理任务中,32K上下文场景下,MATH-500任务并发度1时加速3.67倍,并发度32时仍达3.52倍;AIME25任务也保持2.77倍以上加速,验证了方案在长链路推理中的有效性。
在昇腾计算平台上,跨域测试中并发度1时加速3.69倍,并发度128时仍有1.50倍加速,证明了方案的硬件适配性。
价值与开源进展
AdaFlash将投机解码从静态组件升级为在线学习闭环,能根据请求分布变化调整草稿模型,根据草稿质量调整验证预算,根据流量并发调整批次组织,尤其适配智能体多轮任务的复杂场景。
该方案的代码、模型权重及相关集成内容已公开,论文《AdaFlash:基于策略蒸馏扩散草稿模型的自适应投机解码》发表于高效推理领域的学术会议Workshop,并入选亮点论文。
扩散草稿模型降低了并行生成的成本,但“何时信任草稿、验证多少Token”仍需部署层面的突破。AdaFlash的思路是让模型从每次验证中学习,动态调整验证策略,为扩散投机解码走向复杂生产环境提供了新方向。

