微信扫一扫,关注公众号

  • 科技行者

  • 算力行者

见证连接与计算的「力量」

首页 阿里巴巴Qwen团队揭秘:如何把一个800亿参数的AI大模型"瘦身"到原来的四分之一却几乎不掉智商?

阿里巴巴Qwen团队揭秘:如何把一个800亿参数的AI大模型"瘦身"到原来的四分之一却几乎不掉智商?

2026-05-15 13:15
分享至:
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-
2026-05-15 13:15 科技行者

这项由阿里巴巴Qwen团队与阿布扎比人工智能大学(MBZUAI)、阿卜杜拉国王科技大学(KAUST)联合完成的研究,于2026年5月发布在预印本平台arXiv上,论文编号为arXiv:2605.08738v1。有兴趣深入了解的读者可以通过该编号查询完整论文。

当我们谈到当今最强大的AI语言模型时,有一个无法回避的现实:这些模型的运行代价极其高昂。以Qwen3-Next-80A3B这个模型为例,光是把它加载到内存里就需要超过156GB的显存,相当于两块专业级显卡全部塞满。普通企业或个人开发者根本用不起。那么,有没有办法让这个"大块头"减减肥,同时又不损失太多"智慧"呢?

这正是这篇论文试图回答的核心问题。研究团队提出了一套名为SlimQwen的系统性方案,把Qwen3-Next-80A3B这个庞然大物压缩成了只有原来约四分之一大小的23A2B模型,同时在一大堆测试题上保持了相当有竞争力的表现。整个过程就像是一次精心设计的减肥计划,不是简单地"饿肚子",而是通过科学的方法,去掉多余的"脂肪"同时保留关键的"肌肉"。

为了让读者理解这篇论文讲了什么,不妨把整个过程比作一家大厨房训练学徒厨师的过程。大模型是那位经验丰富、无所不知的主厨,压缩后的小模型则是要接替主厨工作的学徒。问题是:怎么让学徒在尽量短的时间内、用尽量少的资源,学到主厨最精华的厨艺?接下来就顺着这个思路,一步一步拆解研究团队的发现。

一、先搞清楚:大模型里的"专家团队"是什么?

要理解这篇研究,首先得知道这些大模型用的是一种叫做"混合专家"(Mixture-of-Experts,MoE)的结构。普通的AI模型在处理每一个问题时,会用到全部的"神经元",就像雇了100个员工,每次接一个订单所有人都要动起来,非常耗资源。而MoE结构聪明得多——它把模型内部划分成了很多"专家小组",每次处理问题时,只调用其中最合适的几个专家,其他人待命就好。这就像一家大公司里有财务、法务、技术、市场等专业部门,来了一个法律咨询的客户,就只叫法务部的人出来接待,其他部门不用动。

Qwen3-Next-80A3B这个模型里,每个"处理单元"(MoE模块)包含了512个这样的"专家",但每次处理一个词语时,只激活其中的10个。整个模型有48层这样的处理单元,还混合了两种不同的"注意力机制"(可以理解为两种不同的信息提炼方式)。总参数量高达800亿,但实际每次工作时激活的参数只有约38亿,所以叫"80A3B"——80B总参数,3B激活参数。

压缩的目标,是把这个庞然大物变成一个23B总参数、2B激活参数的精简版本。

二、减肥的三把手术刀:深度、宽度、专家数量

研究团队采用了三个维度的"手术"来精简模型,就像给一栋大楼做改造:减少楼层(深度剪枝)、缩小每层的房间面积(宽度剪枝)、减少每层的工作人员数量(专家剪枝/合并)。

在楼层削减方面,团队选择了最直接的做法:直接去掉最后几层。原来的48层削减到36层,去掉了12层(其中3层全注意力、9层线性注意力)。你可能觉得这很粗暴,但研究发现,相比另一种"先测量每两层之间的相似度,再去掉最相似的中间层"的方法,直接去掉最后几层的效果反而更好。背后的原因在于:中间层的信息流如果被硬生生截断,会打乱整个信息传递链路;而最后几层更像是在做"最终整理",去掉它们对核心能力的伤害相对较小,后续通过继续训练也更容易恢复。

在缩小房间面积方面,团队把每一层的"隐藏维度"(可以理解为神经元之间传递信息的通道宽度)从2048压缩到了1536。这一步需要一些技巧:不能随机删减通道,而要先"诊断"哪些通道最不重要。团队用一批样本数据跑一遍模型,统计每个通道被激活的平均强度,保留那些最活跃的通道,删掉那些"摸鱼"的通道。

专家数量方面,每个MoE模块的512个专家被压缩成256个,激活数量从10个减少到8个。关于如何选择保留哪些专家、如何处理被删掉的专家,这正是论文中最有原创性的贡献之一,后面会专门讲到。

三、一个关键问题:从零开始训练,还是在"瘦身版"上接着练?

这里有一个非常基础但重要的问题:当我们确定了目标的小模型结构之后,是直接从随机初始化的参数重新训练一遍,还是把大模型剪裁之后直接在现有参数基础上继续训练?

这就好比培养一个学徒厨师,有两种方式:一是从头招募一个零基础的新人,从洗菜切菜开始教;二是把主厨自己的一些厨艺和经验直接"灌输"给学徒,然后再做补充训练。

研究团队用实验给出了清晰的答案:在相同的训练token数量(1200亿个词语)下,从剪枝后的参数出发继续训练的模型,在平均得分上达到了73.45分;而从随机参数从零训练的模型只有61.66分,差距高达11.79分。换句话说,剪枝初始化带来的优势是显而易见的。更令人印象深刻的是,这个压缩了3.4倍的模型,仍然能恢复到原始大模型82.68分的86.5%,而从零开始训练的模型只能恢复到74.6%。

从训练过程的损失曲线(可以理解为学习进度表)来看,剪枝初始化的模型从一开始就起点更高,收敛也更快,而随机初始化的模型一直在"追赶",始终没能赶上。这说明大模型里那些精心训练出来的参数权重,即使经过裁剪,依然携带了大量有价值的"先验知识",相当于学徒一开始就继承了主厨多年积累的食谱和经验。

四、512个专家缩减到256个:谁走谁留,有没有高招?

接下来说说最有趣的部分:当要把每层的512个专家压缩到256个时,怎么决定哪些专家保留、哪些合并?研究团队比较了多种方案。

第一类方案是直接"末位淘汰":统计每个专家被调用的频率,或者统计带权重的调用频率(调用次数乘以路由分数),找出使用率最低的那批专家直接删掉,剩下使用率高的原样保留。

第二类方案是"融合合并":不直接删除专家,而是把几个相似的专家合并成一个,合并方式是按照重要性分数做加权平均,有点像把两位厨师的拿手菜谱合二为一。

第三类方案来自一个叫做REAP的方法,它在统计调用频率的同时,还考虑了专家实际输出激活值的大小,更全面地衡量专家的"真实贡献"。

一个非常出乎意料的发现是:在经历了4000亿个词语的大规模继续预训练之后,所有这些方案之间的性能差异几乎消失了。没有哪种方案能在所有测试上都压倒其他方案,有的方案在某项测试上领先,却在另一项测试上落后。

这个发现背后的逻辑其实很好理解:一次性的粗粒度剪枝,不管用什么标准选专家,都很难做到"完美"。但只要大方向没错、初始化质量过得去,经过足够长时间的继续训练,模型就有能力自己修复这些粗糙的裁剪带来的误差。就像请了不同背景的厨师学徒,只要给足够长时间的实践训练,最终做出的菜肴质量会趋于相似。

正是基于这个观察,团队提出了一个简单但有效的新策略,叫做"部分保留合并策略"。这个策略的思路是:在目标保留的256个专家里,先挑出最重要的前128个专家(占目标数量的一半),这些"精英专家"原封不动地保留下来,不做任何改动。然后再从剩余的专家中选出另外128个作为"合并基础",把其他被裁掉的专家,根据相似度分别合并进这128个基础专家里,合并时按重要性分数做加权平均。

这个策略解决了一个两难困境:如果全部保留"精英专家"不做合并,那些被删掉的"普通专家"所携带的信息就完全丢失了;如果全部通过合并构造目标专家,那每个原始专家的独特"个性"就会被稀释,形成同质化的问题,导致模型的多样性降低。保留一半、合并一半,在保护精华知识和整合次要知识之间取得了平衡。实验结果也验证了这个策略:相比单纯保留精英专家不做合并,部分保留合并策略在MMLU、MMLU-Pro、GSM8K等主要测试上都有一致的提升。

五、学徒学艺的"秘籍":如何设计最有效的训练目标?

确定了模型结构之后,下一个问题是:在继续预训练阶段,用什么样的训练目标最有效?

最基础的训练方式叫做"语言模型损失"(LM Loss),就是让模型根据上文预测下一个词,预测错了就被纠正。这就像学徒边看菜谱边练习,自己摸索。

更进阶的方式叫做"知识蒸馏"(Knowledge Distillation,KD),简称NTP KD(下一个词预测蒸馏)。这里不再只是告诉学徒"这道菜的答案是加盐",而是让主厨直接告诉学徒:"加盐的概率是70%,加糖的概率是20%,加醋的概率是5%……"学徒不仅知道正确答案,还能感受到主厨对各种选择的"偏好分布",学到更细腻的判断力。

研究发现,把这两种方式结合起来效果最好:纯蒸馏(只看主厨的偏好分布,不看标准答案)虽然很好,但加入标准答案的LM Loss之后,在知识密集型测试如MMLU上表现更好。研究团队的解释是:纯蒸馏可能让模型过于依赖主厨的"口味偏好",而标准答案的约束能帮助模型更好地记住确定性知识。在实际训练中,研究团队让蒸馏损失的权重从1.0线性衰减到0.75,就是说训练初期更多听主厨的,越到后期越多靠自己学。

在这个基础上,研究团队又提出了一个全新的创意:多词预测蒸馏(MTP KD)。普通的训练只让模型预测"下一个词",而多词预测则让模型同时预测"后面2个、3个、4个词",使用的是附加在主模型旁边的"多词预测模块"(MTP Module)。每个MTP模块负责预测额外更远的未来词语。蒸馏的时候,这些MTP模块也被要求学习主厨模型对未来多个词的概率分布,而不只是地面标注答案。

这个设计有两重收益:一是让模型"看得更远",在训练时就形成对更长上下文的感知,提升推理和生成质量;二是显著提升了"推测解码"(Speculative Decoding)的效率。推测解码是一种加速推理的技术——用一个小模型快速生成候选词序列,再用大模型验证,如果小模型猜对了多个词,就等于大模型一次处理了多个词,速度大幅提升。MTP模块天然就是很好的"草稿生成器"。

实验数据显示,加入MTP KD之后,在HumanEval代码测试上,一次性生成5个词都被接受的概率从4.09%暴增到8.24%,相当于翻了一倍;在GSM8K数学测试上,从2.37%增加到了10.37%,增长了超过4倍。这意味着模型在推测解码场景下能更高效地批量生成文本,实际使用时的吞吐量显著提升。在经过指令微调(SFT)之后,MTP KD的效果同样持续,在RepoQA代码理解、MTBench对话评测、SpecBench推测解码专项测试上都有持续提升。

六、急不得的哲学:一步到位好还是循序渐进好?

到目前为止,前面所有讨论的都是"一步到位"的压缩方案——直接把80A3B的大模型一次性剪成23A2B,然后在这个剪好的结构上继续训练。研究团队把这叫做"一阶段压缩"。

但他们进一步想:能不能更温和一些,先从80A3B剪到一个中间大小,训练一段时间,再从中间大小剪到最终的23A2B,继续训练完成?这就是"渐进式剪枝"的思路。

可以用学习厨艺来类比:从一个五星主厨跨越到初级学徒,中间的落差太大,一步到位会让学徒无所适从。但如果先让学徒在一家中级餐厅工作一段时间,积累了基础能力,再过渡到初级岗位,就会顺畅得多。

研究团队设计了三种渐进方案,总训练量固定在4000亿个词语(第一阶段400亿,第二阶段3600亿)。三种方案的差别在于第一阶段先压缩哪个维度:

"深度优先"方案:先减少楼层(先去掉一部分层数),第二阶段再同时完成剩余层数削减和宽度压缩。"宽度优先"方案:先缩小房间(先减少隐藏维度),第二阶段再完成剩余宽度压缩和深度削减。"联合"方案:第一阶段同时削减一半的层数和一半的宽度,第二阶段完成剩余部分。

结果清晰地表明:三种渐进方案全部优于一阶段直接压缩的方案。一阶段方案在MMLU上得75.86分,而深度优先渐进方案达到了77.39分,宽度优先方案77.14分,联合方案76.30分。MMLU-Redux测试的提升更为明显,从75.41分提升到了78.01分(深度优先)和77.07分(宽度优先)。

在三种渐进方案中,深度优先的整体表现最均衡,研究团队将这个方案定为SlimQwen的正式版本。不过需要指出的是,各方案各有所长:宽度优先在BBH推理测试上以75.22分领先,深度优先在MMLU、MMLU-Redux和CMMLU上更占优势。

研究团队还测试了更细粒度的三阶段方案(先20B tokens,再20B tokens,再360B tokens),但发现性能与两阶段方案相比并没有显著提升,说明两阶段的渐进压缩已经足够,再细分带来的边际效益趋近于零。

七、最终成绩单:压缩四倍后的SlimQwen表现如何?

把所有这些技术叠加在一起——深度优先渐进式压缩加上知识蒸馏和MTP蒸馏——最终的SlimQwen-23A2B在各项测试上的表现令人满意。在内存占用方面,SlimQwen只需要43.3GB显存,而原始模型需要156.56GB,节省了超过72%。在推理速度方面,使用HuggingFace框架时,解码吞吐量从每秒4.05个词提升到6.55个词;使用更专业的vLLM推理框架时,吞吐量从每秒142.58个词提升到210.87个词。前缀处理速度在vLLM下从0.08秒降至0.06秒。最重要的是,由于体积足够小,SlimQwen可以在单张80GB显卡上独立运行,不再需要多卡并行,部署成本大幅降低。

在知识类测试MMLU上,SlimQwen达到了77.39分,中文知识测试CMMLU达到83.01分,代码能力EvalPlus达到69.08分,数学能力GSM-8K达到85.82分,对比原始大模型的82.68分平均水平,确实有所降低,但考虑到模型缩小了四倍,这个成绩已经相当有竞争力。

这项研究的意义,不只是发布了一个具体的小模型,更在于它系统性地回答了"如何高效压缩MoE大模型"这个工程问题,给出了可复现的操作指南:用剪枝初始化而非随机初始化,用部分保留合并而非纯粹的精英保留,用蒸馏加LM Loss的混合目标,加上MTP蒸馏提升长程预测能力,再配合渐进式压缩策略而非一步到位。

说到底,这项研究做的事情,是在"更高效使用AI"这个大方向上迈出了扎实的一步。大模型的能力固然重要,但如果运行一个模型需要消耗整栋数据中心的资源,那它对大多数人来说就只是个遥不可及的存在。让强大的AI以更低的代价运行,是推动AI真正普惠化的必要条件。

这个研究还留下了一些开放性的问题值得思考:部分保留合并策略中"保留一半"的选择是基于直觉和实验验证的,但理论上最优的比例是多少?在不同规模的模型上,这个比例会变化吗?渐进式压缩的每个阶段应该分配多少训练token?当模型规模继续扩大到万亿参数量级时,这些结论还能成立吗?这些都是后续研究可以深入探索的方向。

有兴趣深入了解完整技术细节的读者,可以通过arXiv论文编号2605.08738查阅原文,英文版本包含了详尽的算法伪代码、完整实验结果和更多消融实验分析。

Q&A

Q1:混合专家模型(MoE)压缩和普通AI模型压缩有什么不同?

A:混合专家模型除了常规的减少层数、缩小宽度两个压缩维度之外,还多了一个独特的"专家数量"维度。普通模型里所有神经元每次都要工作,而MoE模型里只有少数"专家"会被激活。这意味着压缩时不仅要考虑删哪些层、缩多少宽度,还要决定512个专家里保留哪些、删掉哪些、怎么合并,技术难度更高,也有更多可以探索的策略空间。

Q2:SlimQwen的部分保留合并策略为什么保留一半而不是其他比例?

A:研究团队解释,这是一个兼顾两种风险的平衡选择。如果保留太少的精英专家不做合并,大量被删掉的专家所携带的知识就彻底丢失了;如果全部通过合并构造目标专家,原始每个专家的独特专业化特征会被稀释,导致合并后的专家彼此过于相似,降低模型多样性。保留一半是一个直觉上对称且在实验中效果稳健的设计,论文也承认更精确的最优比例还有待进一步研究。

Q3:多词预测蒸馏(MTP KD)为什么能提升推测解码的速度?

A:推测解码的核心逻辑是用一个小模型快速"猜"出后面几个词,再让大模型一次性验证这些猜测是否正确。如果小模型猜对了3个词,大模型一次处理就相当于生成了3个词,效率翻倍。多词预测模块天然就是为预测未来多个词而设计的,经过MTP蒸馏之后,这些模块的预测和大模型的偏好高度对齐,猜对的概率大幅提升,所以推测解码的接受率显著提高,实际生成速度也就随之提升。

分享至
0赞

好文章,需要你的鼓励

推荐文章
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-