Domino: 在推测解码中将因果建模与自回归起草解耦
推测解码通过并行起草多个令牌并由目标模型验证来加速 LLM 推理,但其实际加速受限于起草质量与起草成本之间的权衡:自回归起草器建模令牌间的因果依赖但引入顺序开销,并行起草器降低起草成本但削弱了块内依赖建模。 本文提出 Domino 框架,将因果依赖建模与昂贵的自回归起草执行解耦。Domino 首先使用并行骨干生成整个块的初步起草分布,然后应用轻量 Domino head 用前缀依赖的因果信息进行精炼。为稳定 teacher-forced 因果编码,进一步引入基于基点的训练课程(base-anchored training curriculum),先强化并行骨干,再逐步将优化转向因果纠正的最终分布。 在 Qwen3 模型上的实验表明,Domino 在 Transformers backend 下实现高达 \(5.49\times\) 端到端加速,在 SGLang serving 下实现高达 \(5.8\times\) 吞吐量加速。
论文精读
TL;DR Domino 通过并行草稿主干与轻量因果修正头,解耦推测解码的因果建模与自回归草稿生成,以低成本实现高质量并行草稿,在 Qwen3 上取得最高 5.49 倍端到端加速。
问题
问题背景
大语言模型的推理速度已成为实际部署的核心瓶颈,推测解码 (speculative decoding) 通过先快速草拟多个 token 再并行验证来大幅提升吞吐,但该范式的实际加速高度依赖草案质量与草案成本的平衡。
现有方法的局限性
当前的主流草案生成策略存在两类极端:
- 自回归草案 (如 Medusa、Eagle):按位置顺序生成每个 draft token,能够建模块内 token 间的因果依赖,从而获得高接受率;但顺序执行带来不可忽略的延迟,草案阶段开销甚至可能抵消验证加速。
- 并行草案 (如 Jacobi 解码 或基于独立预测的 PLD 变体):一次性生成整个 token 块,几乎零额外延迟,但完全忽略块内 token 的顺序依赖,导致草案分布与目标模型差距大,验证时大量 token 被丢弃,有效加速比急剧衰减。
二者陷入“高质量高成本、低成本低质量”的固有矛盾,成为推测解码进一步突破的硬约束。
为什么这个问题核心且紧迫
LLM 服务化场景中,端到端延迟和系统吞吐直接决定用户体验与运营成本。推测解码若能稳定实现 3× 以上加速,将极大降低大模型的部署门槛。然而,草案生成步骤的矛盾严重制约其上限:重新引入顺序计算会吃掉加速红利,而放弃因果建模又导致草案流于徒劳。因此,找到解耦因果依赖建模与昂贵自回归执行的方法,成为学界和工程界共同追逐的目标。目前 SGLang、vLLM 等主流推理框架已内置多种草案策略,但均未彻底解决该权衡,亟需新的架构思路。
行业类比
这类似于模型推理中 KV 缓存 的演进:早期全量重计算消耗巨大,设计缓存后又面临“内存占用 vs. 命中率”的博弈;推测解码的草案块恰如预生成的 KV 近似,必须在极低成本下维持高验证命中率,才可能转化为实际吞吐收益。
核心洞察
- Domino 的核心创新在于将因果依赖建模从昂贵的自回归起草执行中解耦,通过并行草案骨干快速生成初步分布,再以轻量级 Domino 头注入前缀依赖的因果信息进行修正。这与现有自回归草案方法(如 Medusa、Eagle)直接建模序列依赖但受限于顺序开销不同,也与并行草案方法(如 REST、BiTA)牺牲块内依赖建模以换取低成本的做法相异,Domino 以极小的额外计算量弥合了并行草案在因果建模上的缺失,实现了高质量草案与低起草延迟的统一。
- Domino 引入的 base-anchored 训练课程有效解决了 teacher-forcing 因果编码中的优化不稳定问题。该方法先稳固并行骨干的训练,再逐步将优化重心转向因果修正后的最终分布,避免了过早引入因果头导致骨干退化或因果信号与并行分布冲突。相比以往方法依赖启发式蒸馏或直接联合训练,这一课程策略让并行草案与因果细化的协同优化更加平滑,大幅提升了最终草案质量,为复杂 draft-target 对齐提供了新的训练范式。
方法
输入与整体流程
Domino 接收前缀 token 序列作为输入,目标是高效生成一个草稿 token 块。它首先通过并行草稿骨干(Parallel Draft Backbone)一次性为整个块预测初步的 token 分布,随后由轻量级 Domino 头(Domino Head)利用前缀的因果信息对分布进行精炼,输出最终草稿分布。整个流程如图,实现了因果建模与自回归执行的解耦:昂贵的前缀因果编码被隔离在 Domino 头中,而块内 token 生成保持并行。
关键模块
- 并行草稿骨干:通常是一个共享的 Transformer 解码层堆叠,但将自注意力 mask 改为允许同时看到所有草稿位置(非因果),从而并行生成整个块的 logits。这消除了逐 token 的自回归开销,但也牺牲了草稿 token 间的因果依赖建模。
- Domino 头:由两部分构成:
- 因果编码器(Causal Encoder):接收前缀作为条件,通过单向注意力编码历史信息,输出一个上下文向量。
- 低秩校正头(Low-Rank Correction Head):将上下文向量与骨干的并行 logits 融合,通过轻量的低秩矩阵相乘(类似 LoRA)逐位置修正分布,引入块内 token 间的因果顺序信息。该设计使得校正仅增加极少的计算量。
训练策略:基础锚定课程(Base-Anchored Curriculum)
直接端到端训练 Domino 会导致教师强制因果编码(Teacher-Forced Causal Encoding)不稳定,因为骨干可能未学会基本的 token 预测。因此采用两阶段课程:
- 阶段一:冻结因果头,只训练骨干,损失函数聚焦于并行预测的准确性,为目标模型分布提供稳固的基础锚点。
- 阶段二:逐步解冻因果头,并线性增加因果校正分布的损失权重,平滑地引导模型从独立并行预测过渡到因果校正预测。
运行时实现
推理时,并行骨干生成草稿 logits,Domino 头仅需一次前向即可修正全部位置的分布,然后按标准投机解码流程进行验证。由于 Domino 头极轻,整体起草耗时接近并行骨干本身,远低于自回归草稿器。
与同类方法的差异
自回归草稿器(如 Medusa、Eagle)通过小型模型顺序生成草稿,保留了因果链但起草开销高;纯并行草稿器(如 PLD)起草快但丢弃了块内依赖,导致接受率低。Domino 首次将因果建模从起草路径中剥离为独立、可复用的轻量头,以近乎并行的成本实现接近自回归的草稿质量,在低并发场景下 5.49× 的端到端加速验证了该解耦范式的有效性。
实验
实验设计
Domino 在 Qwen3 模型上进行评估,测试场景覆盖 低并发 与 高并发 两种推理负载。实验对比了 自回归草稿器 (如 Lookahead、Medusa) 和 并行草稿器 (如 Eagle、PLD) 两类基线。训练采用 teacher-forced causal encoding 与 base-anchored curriculum 逐步强化因果建模。推理时使用轻量级 Domino head 对并行骨干输出的草稿分布进行因果修正。
关键发现
Domino 在 Transformers 后端实现 最高 5.49× 端到端加速,在 SGLang 服务框架下达到 最高 5.8× 吞吐量加速,同时保持 极低的额外推理开销(Domino head 仅引入几百万参数)。消融实验表明:
- 并行骨干 + 因果修正的组合优于纯并行或纯自回归草稿。
- Base-anchored 训练策略可稳定 teacher-forced 编码,避免初期优化震荡。
- 训练数据量增加对加速有正面影响,但小样本也能取得明显收益。
与基线的深度对比
传统自回归草稿器因顺序依赖而草稿成本高,并行草稿器则因弱化 token 间依赖导致草稿质量低。Domino 通过 解耦因果建模与草稿执行 同时克服了两者缺陷:并行骨干快速生成初始草稿,Domino head 利用前缀相关信息修正分布,在不显著增加延迟的前提下提升接受率。相比纯并行方案(如 PLD),Domino 在相近草稿成本下获得更高质量;相比纯自回归方案(如 Medusa),其草稿生成速度更快。在高并发场景,Domino 的吞吐优势进一步放大,因为其并行草稿骨干天然适配批处理。这种设计为推测解码的工程落地提供了新的 Pareto 前沿——用极低的模型复杂度换取了显著的加速,并易于集成到现有推理引擎中。
行业影响
落地场景
推测解码 加速框架 Domino 对延迟敏感型 LLM 应用有直接收益,例如:
- 对话式 AI (客服机器人、语音助手) 需要低首 token 延迟与高吞吐,以维持自然交互。
- 实时代码补全 (IDE 插件) 要求毫秒级响应,否则打断开发者心流。
- 内容审核与风控 模型中,高并发请求需快速并行验证多个 token 块。
- 批量推理场景 (如离线生成营销文案、数据集构建) 中,吞吐提升能直接降低单位成本。
Domino 将因果依赖建模与自回归执行解耦,通过并行草稿主干 + 轻量 Domino 头,在保证草稿质量的同时消除串行开销,使这些场景能在原有硬件上获得最高 5.49× 端到端加速。
商业价值
- 降本: 同等吞吐量下,所需 GPU 数量成反比下降。对于部署数十到数百 T4/A100 的服务商,可直接缩减算力租赁或硬件采购成本。
- 增收: 低延迟提升用户体验,减少对话机器人中途退出率,提高付费转化;对按 token 计费的 API 产品,更快的响应速度能承载更多并发请求,增加收入。
- 体验提升: 在实时交互场景中,响应延迟从秒级降至亚秒级,显著改善用户留存与满意度。
与现有产品/工作流的接口
Domino 已提供基于 Transformers 和 SGLang 的推理后端,可直接集成进现有服务框架:
- 将目标 LLM 与 Domino 草稿模块部署为联合推理 pipeline,通过标准 API 接收请求,草稿 token 在 GPU 上做并行验证,输出概率一致的生成结果。
- 训练上,使用基础锚定课程逐步注入因果先验,避免 teacher-forcing 带来的训练不稳定,可与现有 LoRA/PEFT 工作流结合,快速适配新模型。
- 在高并发场景下,Domino 可与动态批处理、连续批处理调度器协同,充分利用计算资源。
具体落地用例
全球电商平台的智能客服: 在 Black Friday 等大促期间,客服并发激增。通过 Domino 加速 Qwen3-7B 工作负载,单卡吞吐量提升 5×+,可支撑更多国家/时区的用户实时问答,减少排队延迟与超时放弃,直接降低人工干预率。
SaaS 代码工具 Copilot 类产品: 每完成代码补全的端到端延迟需控制在 300ms 内。采用 Domino 作为草稿模块,能在不牺牲补全准确率的情况下,将 7B~14B 模型的解码延迟压缩至原先的 1/5,支持更复杂的长上下文建议,提升开发者效率。
局限
- **评估模型单一**:实验仅在 **Qwen3** 系列模型上进行,未在 **Llama**、**Mistral** 等其他主流架构上验证。并行骨干与因果修正头的设计可能依赖于特定注意力机制或隐藏维度,跨模型泛化性存疑。若实际部署中需切换目标模型,**Domino** 的有效性缺乏经验支撑。
- **额外训练与工程成本**:**Domino** 引入轻量级修正头和 **base-anchored** 两阶段训练课程。虽然头本身参数较少,但训练需要同时优化骨干和头,调参空间增大。此外,课程学习中从冻结骨干到联合训练的转换策略对超参数敏感,不恰当的调度可能导致训练不稳定或收敛缓慢,增加复现与生产落地时的工程负担。
- **低接受率场景下的收益衰减**:当草稿质量较差、目标模型接受率极低时,**Domino** 的因果修正可能无力回天,因为并行骨干产生的初始分布与目标分布差异过大。此时,修正头的额外计算不仅未能提升吞吐,反而成为开销。与纯自回归草稿(如 **Eagle**)相比,**Domino** 在这种退化情况下可能无法保持加速优势,论文未充分讨论这一边界条件与应对策略。