← 最新论文
💬 NLP

DominoTree: Conditional Tree-Structured Drafting with Domino for Speculative Decoding

DominoTree 引入了一种无需训练的、基于最佳优先策略的树状结构投机解码方法,该方法利用了 Domino 的条件性非因子化修正,在各种基准测试和温度设置下,相比于 DFlash、DDTree 以及原始 Domino 解码器等现有方法,实现了更优的接受长度和吞吐量。

原作者: Saw S. Lin (Zhiqi Zhang), Jyh-Shing Roger Jang

发布于 2026-07-10
📖 1 分钟阅读☕ 轻松阅读

原作者: Saw S. Lin (Zhiqi Zhang), Jyh-Shing Roger Jang

原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明

想象一下你正在尝试猜测故事中的下一个词。这种“聪明”的做法是想出一个词,检查它是否正确,然后再想下一个,以此类推。这是当今大多数 AI 模型进行对话的方式,但因为它必须一个接一个地检查每个词,所以速度很慢。

**投机采样(Speculative Decoding)**是一种加速这种过程的技巧。与其一次只猜一个词,不如让一个“草稿”模型快速同时猜出一大块词(一个块)。然后,由“大老板”模型一次性检查它们。如果老板同意,太棒了!你可以跳过缓慢的思考过程并向前推进。如果老板不同意,你必须重新开始。

这篇论文介绍了一种名为 DominoTree 的新方法。以下是它的工作原理、它有何不同以及作者们的发现。

问题:“单路径”陷阱

想象一下,草稿模型是一个正带领一群人穿过迷宫的导游。

  • 旧方法 (DFlash): 导游指向一整面门墙并说:“随便选哪扇门!”但导游在指向下一扇门之前,并不知道你选了哪扇门。这就像是在不知道自己刚刚说了什么词的情况下,试图猜出一个完整的句子。这种方式很快,但猜想并不聪明。
  • “Domino” 方法: 导游得到了一个小助手(一个 GRU),这个助手能记住你具体打开了哪些门。现在,在指向下一扇门时,导游会说:“既然你打开了 A 门,那么你可能应该选择 B 门。”这使得猜想变得更加聪明。
  • 症结所在: 原有的 Domino 方法仍然受限于行走在一条单一路径上。尽管导游变得更聪明了,但他们永远只展示一条路径。如果你选错了门,就必须重新开始。

解决方案:“DominoTree”

作者们问道:“如果我们能让导游同时展示多条路径,但仍然使用那个聪明的助手来记住我们正处于哪条路径上,会怎样呢?”

他们构建了 DominoTree,它就像一个能在地图上画出整个路径树的导游。

  1. 智能助手: 对于树的每一个分支,导游都会使用“智能助手”根据目前为止所走的特定路径来调整猜想。
  2. 过滤器: 检查迷宫中的每一扇门太慢了。因此,导游在每一步只查看前 64 个最有可能的门(这被称为“候选限制”)。这保证了计算过程依然快速。
  3. 速度提升: 为了在不拖慢计算机速度的情况下实现这一点,他们构建了一个特殊的“GPU 原生”引擎。可以把它想象成一个预先规划好的轨道系统。计算机不再需要为每一步都停下来问“下一步是什么?”(这很慢),而是将整个轨道预先铺设在显卡上。火车只需飞速疾驰即可。

他们的发现(数据)

作者们在 Qwen3-4B(以及一个更大的模型 Qwen3-8B)上进行了测试,涵盖了数学、编程和聊天等八个不同的任务。

  • 速度: 在较小的模型上,DominoTree 使 AI 的速度比标准的缓慢对话方式快了高达 6.6 倍
  • 接受度: “智能助手”非常出色,在表现最好时,平均每轮被大老板模型接受了 10.7 个 token(词)。这意味着 AI 可以一次性吐出超过 10 个词而不会出错。
  • 对比: DominoTree 在速度上比原始的“Domino”方法(仅行走一条路径)快了约 9–10%。它也击败了其他没有使用“智能助手”来针对路径进行调整的树形方法(如 DDTree)。

他们排除了哪些情况(“禁区”)

论文非常明确地说明了哪些做法是行不通的,或者不属于解决方案的一部分:

  1. 没有“魔法”训练: DominoTree 是无需训练的 (training-free)。他们并没有教模型任何新知识。他们只是利用现有的“Domino”权重,在其之上构建了一个更好的树状结构。如果你认为这需要一次大规模的新训练,那就错了;它并不需要。
  2. “自适应预算”行不通: 作者们尝试了一个高级的想法,叫做 CondAdaptive。其核心思想是让 AI 在运行过程中决定树的大小(更大的树 = 更多的猜想,但也更慢)。他们尝试使用一个公式,在效率最高的时候精准停止树的生长。
    • 结果: 它失败了。由于“智能助手”对自己的路径非常有信心,这个公式会不断地认为:“噢,我们需要更多的树!”直到每次都达到最大限制。因此,他们排除了自适应的想法,坚持使用固定的树规模(16 个节点)。
  3. 并非解决了代码问题的“终极方案”: 虽然 DominoTree 在数学和聊天任务中胜出,但在编程任务(如 LiveCodeBench)中,它输给了旧的 “DDTree” 方法。论文明确指出,对于代码,旧方法仍然更好。

他们有多确定?

作者对他们的数字非常有信心,因为他们直接在真实硬件(RTX 5080 和 A6000 显卡)上进行了测量。

  • 他们证明了他们的“GPU 原生”构建器与一个较慢的 Python 版本是位一致的 (bit-identical)。这意味着提速不是一种幻觉,而是完全相同的逻辑运行得更快。
  • 他们使用了名为“配对自助法 (paired-bootstrap)”的统计方法,证明了他们相对于其他方法的领先是真实且一致的,而不仅仅是运气好。例如,他们有 95% 的把握确定,在所有测试的温度下,DominoTree 都比原始的 Domino 方法更快。

核心结论

DominoTree 是一种通过让 AI 同时猜测多条路径,并使用“记忆助手”来确保这些猜想足够聪明的巧妙方式。它就像一个导游,既能为你展示一片森林般的各种选择,又能准确知道你正走在其中的哪条路径上,从而不会给你错误的指引。

它不是解决一切问题的万灵药(处理代码仍然很棘手),也不需要重新训练 AI,但在数学和聊天领域,它是一个经过实测、证明有效的速度提升,将一个缓慢、谨慎的步行者变成了一名短跑选手。

您所在领域的论文太多了?

获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。

试用 Digest →