你有没有想过,为什么 ChatGPT 回答问题的时候,总是一个字一个字地往外蹦?
这不是因为它想卖关子。大语言模型(LLM)的底层架构叫"自回归"(Autoregressive),天生就只能一个 token 接一个 token 地生成——每一步都必须等上一步完成,才能开始下一步。就像排队买奶茶,前面的人不点完单,你就没法点。
但最近,一种叫"扩散语言模型"(Diffusion LLM)的新架构开始挑战这个传统。它不走单行道,而是像画师一样,先铺一层模糊的底稿,再一轮一轮地细化,每轮可以同时修正多个位置。这意味着它天生就能并行生成,速度潜力远超自回归模型。
问题来了:扩散模型虽然能并行,但一个关键加速技术——投机解码(Speculative Decoding)——却跟它八字不合。
投机解码:自回归模型的"抄近路"
先解释一下投机解码是什么。想象你在考试做选择题:正常做法是逐题仔细算,但如果你有个学渣朋友先快速猜一遍答案,你再只检查他猜的那些题,发现对的就保留,错的就重算——这样整体速度就快多了。
在 AI 里,"学渣朋友"是一个小模型(draft model),它先快速生成一批候选 token;"你"是大模型(target model),一次性验证这些 token 是否正确。自回归模型做这件事很自然,因为它的因果掩码(causal mask)保证了每个 token 只能看到前面的内容,所以大模型一次前向传播就能给所有候选 token 打分。
但扩散模型做不到这一点。它的注意力是双向的,每个 token 能看到所有其他 token——包括还没确定的位置(用 [MASK] 标记)。这意味着每轮去噪时,"有效的上下文"都在变化,你没法像自回归模型那样,给候选 token 一个稳定的前缀上下文来做验证。
一句话:自回归模型有"时间因果性",扩散模型没有。投机解码需要时间因果性,所以扩散模型用不了。
SimSD:给扩散模型装上"时间滤镜"
SimSD(Simple Speculative Decoding in Diffusion Language Models)的核心思路极其简洁:既然扩散模型缺少时间因果性,那就人为给它造一个。
具体怎么做?三步走:
第一步:引入参考 token。 把小模型预测的候选 token 作为"参考上下文"(reference tokens),显式地加入输入序列。这些 token 不是当前去噪步骤要预测的目标,而是提供"小模型认为这里应该是什么"的信息。
第二步:设计时间注意力掩码。 这是关键。SimSD 设计了一个特殊的注意力掩码,规定:
- 参考token之间互相不可见(它们是独立的猜测,不能互相"串供")
- 当前步骤的 token 可以看到所有参考 token(利用小模型的先验知识)
- 参考 token 不能看到当前步骤的 token(保持时间因果性)
这就像给扩散模型戴了一副"时间滤镜"——参考 token 变成了只读的历史信息,当前步骤的 token 可以参考它们,但不会被未来的信息污染。
第三步:对齐位置编码。 参考token和当前token使用相同的位置编码,确保模型正确理解它们在序列中的位置关系。
有了这套机制,大模型就能在一次前向传播中,同时为所有候选 token 计算有效的 logits——跟自回归模型的投机解码一模一样。
不用训练,即插即用
SimSD 最让人惊喜的一点:完全不需要额外训练。
它只修改了注意力掩码的设计和复制少量隐藏状态,可以直接插入现有的扩散语言模型推理流程。而且它还能和其他加速技术叠加使用——KV Cache、块级解码(Blockwise Decoding),来者不拒。
这就像给一辆车换了更高效的变速箱,发动机不用动,其他改装也不冲突。
7.46 倍加速,质量不降反升
实验在 SDAR 系列扩散语言模型上进行,覆盖四个基准测试:GSM8K(数学推理)、MBPP(代码生成)、TriviaQA(问答)、MMLU(综合知识)。
结果相当亮眼:
- 解码吞吐量最高提升 7.46 倍,这是投机解码带来的直接加速
- 生成质量不降反升,平均准确率比基线还高了 1.7%
- 在 GSM8K 上,准确率从 72.0% 提升到 74.5%;在 MBPP 上从 68.5% 提升到 70.2%
质量反而提升的原因很有趣:小模型的候选 token 虽然不一定全对,但它们提供了合理的"先验",帮助大模型在去噪过程中更快收敛到正确答案。这就像考试时,朋友猜的答案虽然不一定对,但给了你一个思考的起点,反而比从零开始想更高效。
为什么这件事重要
扩散语言模型是当前 AI 领域最活跃的方向之一。Mercury、Dream 等商业模型已经证明了扩散架构在推理速度上的潜力。但如果没有投机解码这类"倍增器",扩散模型的速度优势在长文本生成场景下会被稀释。
SimSD 证明了一件事:扩散模型和自回归模型之间的技术鸿沟,不是不可逾越的。 通过巧妙地设计注意力掩码,我们可以在保持扩散模型并行优势的同时,复用自回归模型生态中已经成熟的加速方案。
这种"跨架构移植"的思路,可能比从零发明新方法更有价值。毕竟,站在巨人的肩膀上,总比重新造梯子快。
论文: SimSD: Simple Speculative Decoding in Diffusion Language Models
代码: github.com/airevo2/SimSD-release
作者: Junxia Cui, Haotian Ye, Runchu Tian 等(UC San Diego, UIUC, Google, UC Santa Barbara)
讨论回复
0 条回复还没有人回复,快来发表你的看法吧!
推荐
智谱 GLM-5 已上线
我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。