当前位置: 首页 » 资讯 » 科技头条 » 正文

俄勒冈大学与Adobe Research:AI回答问题的速度,能快近8倍吗?

IP属地 中国·北京 科技行者 时间:2026-05-20 18:29:15


这项由美国俄勒冈大学、Google DeepMind以及Adobe Research联合完成的研究,以预印本形式发布于2026年5月,论文编号为arXiv:2605.12825。研究的核心成果被命名为"Orthrus"——一个让大型语言模型在保持原有聪明程度的同时,生成文字的速度提升近8倍的新型框架。

当你和ChatGPT这类AI聊天时,有没有注意到它回答问题时那种一个字一个字往外"蹦"的感觉?这种看似奇怪的现象背后,隐藏着当前几乎所有顶尖AI系统都面临的一个根本性瓶颈。Orthrus的出现,正是为了打破这个瓶颈。

一、AI为什么只能一个字一个字地说话

以煮饺子来做一个贴切的类比。你把饺子一个一个地放进锅里,必须等前一个饺子熟了,确认没问题,才能放下一个——这就是目前主流AI(称为"自回归模型",Autoregressive Model)的工作方式。每生成一个字,它都必须把之前所有已经说过的内容全部"回忆"一遍,然后才能决定下一个字是什么。这种方式非常准确,但也非常慢,因为它天生只能一步一步地走,不能同时处理多个步骤。

从技术上看,这类模型的工作原理是把一段话的概率分解成一个链条:第一个词出现的概率,乘以在第一个词之后第二个词出现的概率,再乘以在前两个词之后第三个词出现的概率……以此类推。每生成一个新词,模型都需要在内存里把之前所有词对应的"键值缓存"(Key-Value Cache,可以理解为模型的"记忆本")全部读取一遍,这就造成了严重的内存带宽瓶颈,导致硬件大量时间都在等待数据传输,而非真正在做计算。

与之相对的,还有另一类叫做"扩散语言模型"(Diffusion Language Model)的AI,它的工作方式更像是蒸包子——把一整笼包子(一整段话)同时放进去蒸,所有位置并行处理,速度自然快得多。然而,这种方式有一个致命缺陷:它在同时预测多个词的时候,会假设这些词之间在一定程度上是相互独立的。这就好像一个厨师在同时决定包子里放什么馅的时候,没有考虑"如果前一个包子放的是猪肉,后一个最好配点白菜"这种前后关联。这种"顾此失彼"的问题,在遇到需要严密推理的数学题或编程题时会被急剧放大,导致AI的答案质量明显下降。有研究表明,业界最先进的扩散语言模型在数学竞赛题目上的准确率,比同等规模的传统自回归模型要低十多个百分点。

这就是AI领域长期存在的一个两难困境:要么慢但准,要么快但有失误。俄勒冈大学等机构的研究团队设计Orthrus,正是为了彻底打破这个"鱼与熊掌不可兼得"的局面。

二、Orthrus的核心思路:让两个"大脑"共用一个记忆本

Orthrus的名字来自希腊神话中那只双头犬——一个身体,两个脑袋各司其职。这个命名非常传神地描述了这套架构的核心理念。

研究团队观察到一个关键事实:自回归模型真正慢的地方,仅仅是在"生成"阶段,而非"理解"阶段。换句话说,当AI读懂你的问题(这个过程叫做"预填充",Prefilling)时,它是可以并行处理的;真正慢的,是它一个字一个字地输出答案的阶段。

基于此,Orthrus采取了一个精妙的策略:把原有的自回归模型完全"冻结",也就是让它保持原样,一个参数都不改动,只让它负责理解问题并建立那个高质量的"记忆本"(KV缓存)。然后,在这个冻结的模型旁边,额外安装一个轻量级的"扩散脑袋",专门负责快速、并行地生成答案——同时,这个扩散脑袋可以直接翻阅自回归脑袋建立的那个精准"记忆本"。

这种设计有一个天然的优美之处:因为两个"脑袋"共用同一个记忆本,而不是各自维护一份,所以整个系统没有任何额外的内存浪费。扩散脑袋直接站在自回归脑袋的肩膀上,用后者积累的高质量上下文理解,来驱动自己的并行生成。

在具体的数学形式上,扩散头的注意力计算可以表示为:它的查询向量(Qdiff)同时关注来自自回归路径的键和值(KAR、VAR),以及来自并行块自身的键和值(Kdiff、Vdiff),两部分拼接在一起进行统一计算。由于自回归部分的键值缓存是在预填充阶段就已经算好直接复用的,扩散视图不会引入任何额外的历史缓存内存开销。

三、训练:教会扩散脑袋模仿自回归脑袋的"口味"

光有这个双头结构还不够,还需要训练那个新加入的扩散脑袋,让它学会如何正确地并行预测。

训练过程有点像培训一个速记员。给定一段完整的文章,研究团队会在文章里随机选取一些"锚点"位置,然后以每个锚点为起始,构造一个长度为32个词的"预测块":保留第一个词(锚点词)作为可见的参照,把后面31个词全部替换成"[MASK]"占位符。接着,让扩散脑袋一次性预测这31个被遮住的词是什么。

这里有一个精心设计的注意力规则,用来防止"作弊"。在训练时,模型的注意力机制被划分为两种严格不同的视野:自回归路径使用标准的因果遮挡(每个位置只能看到它之前的内容),而扩散路径则遵循一套特殊规则——对于任意一个扩散查询位置,它只能关注该预测块锚点之前的自回归上下文(防止未来信息泄露),同时可以与同一个预测块内的其他位置相互关注(实现块内双向并行推理),但绝不能跨块查看其他预测块的内容。这套规则通过一个名为FlexAttention的工具实现,确保了训练过程中信息流向的严格正确。

训练的目标函数非常直接:让扩散脑袋在每个被遮挡的位置上,其预测的词概率分布,要尽可能接近冻结的自回归脑袋在该位置上的预测概率分布。这个过程在统计学上叫做"前向KL散度蒸馏"——本质上就是教扩散脑袋学习自回归脑袋对每个词的"偏好程度",而不仅仅是猜那个最终的正确答案。训练过程中,自回归骨干的参数始终保持完全冻结,梯度只流经新加入的扩散注意力模块。

整个训练过程惊人地轻量:只需要微调整个模型约16%的参数,在不到10亿条训练数据(约0.96B个词)上训练两轮,在8张H200显卡的单台服务器上不到24小时就能完成。相比之下,一些竞争对手的方法需要500亿甚至5800亿条数据,成本相差了几百倍。

四、推理:两个脑袋如何达成共识

训练好的Orthrus在实际回答问题时,按照一个精妙的"投票验证"循环工作。

第一步,扩散脑袋出手。它拿到当前已经生成的内容,加上32个[MASK]占位符,在一次并行前向计算中,一口气"猜"出未来32个词可能是什么,得到32个候选词。这一步只需要一次神经网络前向传播,所有32个预测同时完成。

第二步,自回归脑袋来验证。把扩散脑袋猜出的这32个词填入序列,让冻结的自回归脑袋用它的标准因果计算,检查每个位置上"按照我的判断,这里最应该出现的词是什么"。这一步同样只需要一次前向传播就能同时验证所有32个位置。

第三步,从左到右逐一比对,执行"共识机制"。对于第1个猜测的词,如果它和自回归脑袋的判断完全一致,就接受,继续看第2个;如果第2个也一致,接受,继续……一直到某个位置,扩散脑袋的猜测和自回归脑袋的判断出现了分歧。此时,停止接受扩散预测,用自回归脑袋在这个位置的判断作为最终的"纠正词",把这个纠正词之后的所有猜测全部丢弃,更新记忆本,开始下一轮循环。

这个机制的美妙之处在于,它在数学上保证了:Orthrus最终生成的序列,其概率分布与原始冻结的自回归模型完全一致,一个字都不会偏差。当扩散脑袋的猜测质量越高,接受的连续词越多,速度就越快;哪怕在最坏的情况下,每轮循环至少也能稳定接受1个词(因为纠正词本身就是一个有效词),绝对不会比原来的纯自回归更慢。对于有温度参数的随机采样场景,框架则采用严格的拒绝采样方法来对齐分布,同样保证无损。

五、实验结果:数字背后的真实表现

研究团队将Orthrus搭载在目前业界领先的Qwen3模型家族上,分别测试了1.7B、4B和8B三种规模,在数学推理、代码生成等多个极具挑战性的基准上进行了全面评测。

衡量效率的核心指标叫做"每次前向传播的有效词数"(Tokens Per Forward Pass,TPF)——简单说就是每做一次完整的神经网络计算,平均能确认多少个输出词。纯自回归模型的TPF上限是1(每次只能确认1个词),而Orthrus的理论下限是0.5(两次传播才确认1个词,也就是最差情况)。

实测结果令人印象深刻。在8B规模的模型上,Orthrus在各类任务上的平均TPF达到5.39,也就是平均每两次传播(一次扩散预测加一次自回归验证)就能确认约10.78个词,相当于纯自回归基线速度的5.36倍。在伪代码转真实代码(Pseudo2code)这类结构规律性强的任务上,加速比甚至达到了7.83倍,这也是论文标题中"近8倍"这一数字的来源。在数学竞赛题(AIME24)上,加速比为6.81倍。就连最具挑战性的编程竞赛基准LiveCodeBench-v5上,加速比也达到了6.68倍。

与此同时,研究团队将Orthrus-Qwen3-8B与多个竞争对手进行了正面比较。在准确率方面,Orthrus在GSM8K(小学数学)上达到96.0%,MATH-500(高中竞赛数学)上达到86.2%,AIME24上达到28.3%,AIME25上达到23.3%,HumanEval编程题上达到95.1%,MBPP编程题上达到93.4%。这些数字与Qwen3-8B原始自回归模型的表现完全一致——因为两者本质上使用了同一个自回归核心,Orthrus的共识机制在数学上保证了这一点。

相比之下,同样基于Qwen3架构的竞争对手SDAR-Qwen3-8B,在MATH-500上只有78.6%,AIME24上只有10.0%,与Orthrus的差距相当显著。另一个知名的Fast-dLLM-v2在MATH-500上只有61.5%,比自回归基线足足低了11个百分点以上。这印证了研究团队的核心论断:改造原有模型的权重,会不可避免地破坏其推理能力。

研究团队还将Orthrus与另一类加速方法"推测解码"(Speculative Decoding)进行了比较。推测解码的思路是用一个小模型先快速猜几个词,再让大模型一次性验证——本质上与Orthrus的思路相似,但关键区别在于推测解码需要维护两套独立的"记忆本",内存开销更大。以EAGLE-3和DFlash两个业界前沿的推测解码系统为对比,在MATH-500上,Orthrus的平均连续接受词数达到11.7,而DFlash为7.9,EAGLE-3仅为3.5。Orthrus的优势来源于:扩散脑袋和自回归脑袋共享同一个表示空间,两者对语言的"审美品味"高度一致,自然能预测得更准。

六、消融实验:每个设计细节都有它的道理

研究团队还做了一系列对照实验,来验证各个设计决策的合理性。

关于并行预测块的大小K,实验在K=4、8、16、32四种设置下进行了测试。由于扩散脑袋是把整个块同时放入计算,增大块大小并不会增加单次前向传播的延迟——实验证实不同K值下的前向传播耗时基本一致。而TPF随K增大单调上升:K=4时为1.85,K=8时为3.3,K=16时为5.01,K=32时为6.35。将K从4增大到32,在延迟几乎不变的情况下,吞吐量提升了3.6倍。因此,K=32被选为默认配置。

关于训练目标的选择,研究团队比较了两种方案:一是用"软标签"(KL散度蒸馏,让扩散脑袋学习自回归模型对每个词的完整概率分布);二是用"硬标签"(标准交叉熵,直接预测数据集中正确答案的词)。两种方案在MATH-500上的最终准确率完全相同(都是86.2%,因为共识机制保证了准确率),但推理速度有明显差异:软标签训练的TPF为6.35,硬标签训练的TPF只有5.86。原因是:用硬标签训练会让扩散脑袋过度拟合数据集的表面形式,而不是真正学会模仿自回归脑袋的"思维习惯",导致推理时被自回归脑袋否决的词更多,有效加速比下降。

关于是否需要多步迭代去噪,研究团队测试了借鉴Fast-dLLM-v2的两步预测策略(训练时只遮挡50%的词,推理时用两次传播逐步补全)。结果表明,两步策略的TPF仅为3.53,远低于Orthrus单步策略的6.35,减少了1.8倍。额外的推理步骤抵消了并行化带来的增益,单步预测是最优选择。

七、内存效率:几乎没有额外负担

除了速度,Orthrus在内存方面的表现同样出色。研究团队系统测量了不同序列长度(1K、2K、4K个词)下Orthrus与Qwen3-8B基线的内存占用差异。

在峰值GPU显存方面,Orthrus的额外开销极小,不到100MiB,相比基线的18-20GiB,增幅不到1%,几乎可以忽略不计。在KV缓存大小方面,由于两个视图共用同一个历史缓存,唯一的额外开销来自扩散块(32个并行位置)的临时状态,这是一个固定的常数,与序列长度无关。实测这个额外开销约为4.5MiB,无论序列有多长,这个数字始终不变。这在技术上被称为"O(1)缓存开销"——意味着哪怕处理非常长的对话,也不会因为用了Orthrus而产生额外的内存压力。

对比之下,传统推测解码方法需要为草稿模型单独维护一套完整的KV缓存,随着序列增长,这个额外开销会线性增加,在长文本生成场景下可能带来相当大的内存负担。

Orthrus的局限性同样值得提及。由于自回归骨干被完全冻结,Orthrus的生成能力上限就是其所搭载的基础模型的能力上限,无法超越基础模型。这意味着它本质上是一个推理加速框架,而非能力增强框架,基础模型存在的任何偏见、知识盲区或幻觉倾向,都会被原样继承。

说到底,Orthrus做到了一件在AI推理加速领域相当罕见的事:在数学上严格证明并实验上全面验证了"速度可以大幅提升,而准确率完全不降"。近8倍的速度提升,配合几乎为零的额外内存开销,以及仅需不到24小时就能完成的轻量训练,让这套方案具备了很强的实际部署价值。对于那些需要大规模运行AI服务的机构来说,同样的硬件资源可以服务近8倍数量的用户请求——这在经济上意味着显著的成本节约。

感兴趣的读者可以通过arXiv:2605.12825查阅这篇论文的完整内容,代码也已在GitHub上开源。

Q&A

Q1:Orthrus是如何保证生成结果和原始自回归模型完全一致的?

A:Orthrus通过一个"共识机制"来保证这一点。扩散脑袋先并行猜出多个词,然后自回归脑袋从左到右逐一验证,只接受与自回归判断完全一致的词,遇到分歧就停止并用自回归模型的判断纠正。这个过程在数学上等价于对自回归分布做精确采样,因此输出分布与原模型严格一致。

Q2:Orthrus训练需要多少资源,普通机构能负担得起吗?

A:Orthrus的训练成本相当低。只需要微调约16%的模型参数,使用不到10亿条数据,在8张H200显卡的单台服务器上不到24小时即可完成。相比之下,同类竞争方案往往需要500亿甚至5800亿条数据,成本相差数百倍,Orthrus的训练成本对大多数具备基本GPU资源的机构来说都是可接受的。

Q3:Orthrus和推测解码有什么本质区别?

A:两者都用"先猜后验"的思路加速生成,但核心区别在于架构集成方式。推测解码需要一个独立的草稿模型,要维护两套分离的KV缓存,内存随序列增长线性膨胀。Orthrus则把扩散头直接集成在原模型内部,两个视图共用同一套KV缓存,额外内存开销是固定的约4.5MiB,不随序列长度变化,在长文本生成场景下内存优势尤为明显。

免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其内容真实性、完整性不作任何保证或承诺。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。