DLite:面向智能体的无历史推测解码,吞吐量提升70%

DLite以无历史局部预测重构草稿模型,智能体负载下接受长度达2-6,超DSpark 70%。
文章介绍了一种面向智能体负载的推测解码新框架 DLite。传统推测解码依赖草稿模型生成候选 token,但在智能体场景下,持续增长的历史上下文导致接受长度最多下降 80%,且维护历史 KV 缓存带来显著系统开销。DLite 的解法是不显式维护历史,而是复用目标模型推理中产生的上下文隐藏状态做局部预测,将复杂的全局建模转化为简单的短程预测;同时引入轻量级顺序头恢复块内因果依赖,并设计两阶段训练策略解决异构架构的训练难题。实验覆盖通用、长上下文与智能体三类负载,DLite 接受长度达 2-6,较当前最优方法 DSpark 最高提升 70%。文章认为这体现了推理加速正从通用优化走向负载感知的趋势。
推测解码(Speculative Decoding)已成为加速大语言模型推理的主流技术,其核心思路是用一个轻量级草稿模型生成候选token,再由目标模型验证。然而,当工作负载转向智能体(Agentic AI)场景时,长且持续演进的上下文、频繁的多轮交互让传统草稿模型举步维艰。一篇新论文提出的DLite框架,通过「无历史」的局部预测思路,在智能体负载下实现了2-6的接受长度,性能超越当前最优方法DSpark达70%。

智能体负载下推测解码的痛点
推测解码在标准文本生成任务中表现优异,但智能体工作负载带来了两个新问题。论文观察到,现有草稿模型在智能体场景下的接受长度(acceptance length)最多下降80%,这意味着草稿模型生成的候选token被目标模型接受的比例大幅缩水,加速效果几乎丧失。
同时,为了维持草稿模型的表现,一种常见做法是保留历史KV缓存。但智能体的上下文会持续增长,维护这些历史缓存带来了显著的系统开销——显存占用增加、缓存管理复杂化,抵消了推测解码带来的收益。
论文将这两个问题的根源归结为同一个因素:不断增长的历史上下文。历史越长,草稿模型需要建模的依赖关系越复杂,接受率越低;而为了处理这些历史,系统又不得不付出额外的缓存代价。
接受长度(acceptance length) 是推测解码的核心评价指标,指目标模型在一次验证中连续接受草稿模型所生成候选 token 的平均数量。该值越大,意味着草稿 token 被"一次通过"的比例越高,目标模型需要执行的前向次数越少,加速比也就越显著。理论上,若每次草稿生成 γ 个 token、接受长度为 τ,则理想加速比约为 τ(受验证开销影响略低)。因此,接受长度从常见的 3-4 骤降至不足 1,几乎等同于推测解码失效——草稿 token 大部分被拒绝,验证开销反而成为负担。理解这一指标,是判断 DLite 所称"2-6 接受长度"意义的前提。
KV 缓存(Key-Value Cache) 是自回归推理中避免重复计算的关键机制:模型在生成每个 token 时,会缓存此前所有 token 在各注意力层的 Key 和 Value 张量,从而只需为新 token 计算一次注意力。对于草稿模型而言,若希望它准确建模长历史,通常需要为其单独维护一份与目标模型同步的 KV 缓存。在智能体场景下,上下文可达数万 token 且持续增长,这份缓存的显存占用会随对话轮次线性膨胀;同时,多轮交互中缓存的一致性维护、淘汰与迁移都带来额外的工程复杂度。这正是论文所指"历史 KV 缓存开销抵消加速收益"的技术根源。
DLite的核心思路:把复杂建模变成局部预测
DLite的解法颇为巧妙:既然历史上下文是负担,那就干脆不显式维护它。DLite直接复用目标模型在推理过程中产生的上下文隐藏状态(contextual hidden states),在此基础上进行局部的推测预测,而不需要草稿模型自己维护一份完整的历史。
这一设计将「越来越复杂的建模问题」转化为「局部的简单预测问题」。草稿模型不再需要理解整个对话历史,只需基于目标模型当前提供的隐藏状态做短程预测,接受率因此得以恢复。
不过,完全丢弃历史会带来一个新问题:一个块(block)内部的因果依赖关系如何保留?如果草稿模型对块内token之间的关系一无所知,预测质量仍会受损。为此,DLite引入了一个轻量级的顺序头(sequential head),以低开销恢复块内的因果依赖。这个顺序头只处理局部信息,不触及历史上下文,因而不会重新引入系统负担。
上下文隐藏状态(contextual hidden states) 指目标模型在处理输入序列时,各层(尤其是最后一层)输出的、已经融合了前文信息的稠密向量表示。与原始 token 嵌入不同,隐藏状态编码了模型对当前上下文的"理解",因而天然携带了历史信息。DLite 的关键洞察是:既然目标模型已经计算出了这些表示,草稿模型无需再从头建模历史,只需以这些隐藏状态为条件做短程预测即可。这样既复用了目标模型的前向计算结果,又避免了草稿模型维护独立历史缓存,是其"无历史"设计得以成立的技术基础。
顺序头(sequential head) 是 DLite 中一个参数量很小的模块,专门负责在一个推测块内部按顺序建模 token 之间的因果依赖。推测解码通常一次性草稿多个 token(一个 block),若各位置独立预测,则块内后一个 token 无法利用前一个 token 的信息,预测质量下降。顺序头以自回归或轻量循环的方式在块内逐位生成,从而恢复这种局部因果性,且其计算仅涉及块内少量 token,不接触历史上下文,因此不会重新引入长上下文的系统开销。这一设计在"局部准确性"与"低开销"之间取得了平衡。
两阶段训练:让异构架构真正work
DLite的架构是异构的——它依赖目标模型的隐藏状态,又配有独立的顺序头。这种结构无法用常规的单阶段训练方式有效训练。论文为此设计了一套定制的两阶段训练策略,先让各组件分别适应各自的任务,再联合优化整体预测能力。
这种训练策略是DLite能够落地的关键。复用目标模型隐藏状态意味着草稿模型与目标模型之间存在强耦合,训练时必须让草稿部分学会「读懂」目标模型的内部表示,而不是像传统草稿模型那样独立学习整个分布。两阶段设计降低了这种耦合带来的训练难度。
实验表现:通用、长上下文与智能体负载全面验证
论文在通用任务、长上下文任务和智能体工作负载三类场景下进行了实验。结果显示,DLite在智能体负载下达到2-6的接受长度,相比当前最优的推测解码方法DSpark最高提升70%。
这一提升的意义在于,智能体应用正成为LLM落地的重要形态——从代码助手到自动化工作流,多轮交互和长上下文几乎是标配。推测解码若在这类场景下失效,加速技术的价值就大打折扣。DLite的「无历史」路线提供了一个新方向:与其让草稿模型追赶不断增长的历史,不如让目标模型自己提供局部上下文,草稿模型只做它擅长的那一小段预测。
从更广的视角看,DLite反映了一个趋势:推理加速技术正在从「通用优化」走向「负载感知」。针对特定工作负载的特征重新设计解码流程,可能比在通用框架上做增量改进更有效。
要点总结
- 智能体负载下现有草稿模型接受长度最多下降80%,历史KV缓存维护开销大,根源均为增长的历史上下文。
- DLite复用目标模型隐藏状态做局部预测,不显式维护历史,将复杂建模转化为局部简单预测。
- 轻量级顺序头以低开销恢复块内因果依赖;两阶段训练策略解决异构架构的训练难题。
- 实验覆盖通用、长上下文和智能体负载,接受长度达2-6,超越DSpark最高70%。
相关推荐

Workbuddy零基础入门:桌面AI智能体如何落地工作流
Workbuddy桌面AI智能体零基础教程解读:从安装、积分领取到文件管理与自动化工作流搭建,对比CodeX的适用场景与成本差异,帮助职场人完成从AI提问者到AI管理者的思维转变。

OpenAI智能体新栈:计算机操作、决策API与超速工作流
OpenAI Dev Day发布智能体新栈:Computer Use操作速度超越普通人,Decisions API基于Luna实现极低延迟分类,Agents API开放同源计算机操作能力,GPT-6.1 Sol成本仅为Astra七分之一。本文梳理核心更新、实测数据与开发者落地要点。

梁文峰开源推理框架DeepInfo,硬刚美国禁令
DeepSeek在开源模型后再开源推理框架DeepInfo,包含GPU/CPU交叉流水线、小模型预判大模型复核、华为昇腾与英伟达芯片全面适配等技术,直面美国联邦禁令。本文解析其对AI产业落地的意义与开源策略。