SpecPrefetch:面向稀疏MoE基础模型的参数高效专家预取
摘要
SpecPrefetch提出了一种面向稀疏MoE模型的参数高效专家预取框架,使用轻量级适配器预测下一层专家以进行异步传输,同时保留原生路由语义。在Snapdragon 8 Elite设备上,它实现了高达20%的解码吞吐量提升,展示了在内存受限部署中的实用优势。
查看缓存全文
缓存时间: 2026/07/29 09:52
# SpecPrefetch:面向稀疏MoE基础模型的参数高效专家预取 来源:https://arxiv.org/html/2607.24787 Jinwei Kong1,2,\*Runqi Meng2,\*Fanyi Wang1Wentao Qiu1,3 Haotian Hu1Yongjian Zhou4Zhenhua Ge1,† 1StepOs2上海科技大学3厦门大学4重庆大学 [email protected]@ustc.edu *同等贡献。†通讯作者。 ###### 摘要 稀疏专家混合(MoE)模型通过条件专家激活扩展了基础模型的能力,但其完整的专家池在有限的加速器内存下仍然难以部署。尽管专家卸载通过将不活跃的专家移至主机内存或存储来缓解内存压力,但它引入了依赖路由的传输瓶颈:所需的专家只有在原生 top-K 路由之后才能确定,这导致推理过程中路由、专家加载和专家执行串行化。为了解决这一瓶颈,我们提出了 SpecPrefetch,一种用于卸载式 MoE 推理的参数高效预取框架。SpecPrefetch 使用共享的轻量级适配器仅预测下一层专家候选以进行异步传输,而冻结的原生路由器仍然决定最终执行的专家。通过将传输预测与执行路由分离,SpecPrefetch 减少了暴露的专家加载延迟,同时不改变预训练的路由语义,因此预测错误仅影响传输效率而非模型输出。此外,一个具有窗口感知的调度器在缓存和带宽约束下优先处理可行的传输。在 Qwen3-VL-30B-A3B 和 DeepSeek-VL2-Tiny 上,SpecPrefetch 在 10 个模型-基准设置中的 9 个中实现了最佳平均专家召回率,且可训练参数显著少于学习型预测器基线。在 Snapdragon 8 Elite 设备上,SpecPrefetch 进一步将解码吞吐量提高了高达20%20\\%相比计算优化的卸载运行时,展示了在存储受限的 MoE 部署中的实际优势。代码和模型权重可在 https://github.com/wei390/SpecPrefetch 获取。 SpecPrefetch:面向稀疏MoE基础模型的参数高效专家预取 Jinwei Kong1,2,\*Runqi Meng2,\*Fanyi Wang1Wentao Qiu1,3Haotian Hu1Yongjian Zhou4Zhenhua Ge1,†1StepOs2上海科技大学3厦门大学4重庆大学 [email protected]@ustc.edu *同等贡献。†通讯作者。 ## 1 引言 近年来,大型语言模型(LLMs)和视觉语言模型(VLMs)的进展得益于模型容量、训练数据和计算量的扩展。然而,密集扩展日益加剧了推理成本、内存容量和服务吞吐量的压力。专家混合(MoE)架构提供了一种有吸引力的替代方案,通过扩大总参数容量,同时仅为每个 token 激活一小部分专家。现代 MoE 模型通过纯路由专家池或共享加路由专家设计来组织专家计算(Qwen Team,2025 (https://arxiv.org/html/2607.24787#bib.bib23);Jiang 等人,2024 (https://arxiv.org/html/2607.24787#bib.bib34);Dai 等人,2024 (https://arxiv.org/html/2607.24787#bib.bib35))。尽管架构存在差异,两种设计都暴露了相同的部署瓶颈。稀疏激活减少了每个 token 的计算量,但完整的专家池在推理过程中仍然必须存储或可访问。随着基础模型从云端数据中心转移到商用 GPU 和边缘平台,在有限内存和本地计算条件下,这种存储-计算差距成为一个关键瓶颈。 专家卸载为内存受限部署下的 MoE 模型密集专家占用提供了自然的应对方案。并非将所有专家常驻在加速器上,卸载将不活跃的专家置于 CPU 内存或主机端存储中,并按需将选中的专家传输到活跃设备。然而,专家需求并非静态可知。在每个 MoE 层中,top-k 专家仅在前置隐藏状态被计算并由路由器评估后才确定。因此,专家传输只能在路由决策可用后发起,这导致隐藏状态计算、路由、主机到设备传输和专家执行沿着推理关键路径串行化。因此,核心挑战不仅在于降低传输成本,还在于足够早地揭示专家需求,以使传输与正在进行的计算重叠。 参考图注图1:卸载式 MoE 推理中专家传输策略的比较。如图1 (https://arxiv.org/html/2607.24787#S1.F1) 所示,现有方法从三个角度减轻暴露的专家传输延迟,但它们的设计选择引入了不同的局限性。传输成本降低方法,如量化和压缩,减少了专家移动的通信量(Yan 等人,2025 (https://arxiv.org/html/2607.24787#bib.bib24))。然而,它们并未改变专家需求可用的时机:所需专家仍然仅在原生 top-K 路由之后才能被识别,因此专家传输在路由之后仍然串行化,并可能仍处于专家执行前的关键路径上。以 FATE 为代表的无训练预取方法利用跨层路由规律性来预测专家需求,无需参数更新(Fang 等人,2025b (https://arxiv.org/html/2607.24787#bib.bib25))。虽然轻量且可移植,但其预测准确性依赖于稳定的路由相关性,而这一点在跨模型架构、任务和模态时可能并不一致。基于训练的方法使用辅助预测器、参数高效调优、草稿模块或预门控机制来估计专家激活(Hwang 等人,2024 (https://arxiv.org/html/2607.24787#bib.bib26);Chen 等人,2025 (https://arxiv.org/html/2607.24787#bib.bib27);Leviathan 等人,2023 (https://arxiv.org/html/2607.24787#bib.bib28);Li 等人,2024 (https://arxiv.org/html/2607.24787#bib.bib29))。尽管这些方法可以提高专家召回率,但将预测与路由或执行耦合可能会干扰原始专家激活模式并可能影响模型行为。因此,一个有效的预取解决方案应能提前预测下一层专家需求以进行传输调度,保持参数高效,同时保留原生路由用于最终的专家选择。 为了解决这些局限性,我们提出了 SpecPrefetch,一种用于卸载式 MoE 推理的参数高效预取框架。SpecPrefetch 将预取公式化为下一层专家预测:给定第ll层的表示,一个共享的轻量级适配器预测第l\+1l+1 层的紧凑候选集。这些候选仅用于异步主机到设备传输,而第l\+1l+1 层的原生路由器仍然选择最终执行的 top-K 专家。通过解耦传输预测与执行路由,SpecPrefetch 提高了专家可用性,同时不改变预训练的路由语义。在运行时,一个具有窗口感知的调度器通过考虑预测置信度、缓存驻留状态和传输完成时间,将预测候选转化为可行的传输决策。我们通过离线专家预测实验和真实设备移动端评估来验证 SpecPrefetch。在 Qwen 和 DeepSeek 风格的 MoE 架构上,SpecPrefetch 以较低的可训练开销提高了下一层专家覆盖率;在移动设备上,它进一步将预测收益转化为存储受限卸载推理中的实际延迟降低。 综上所述,我们做出以下贡献: - •我们识别出*学习型仅传输预取*作为卸载式 MoE 推理的一个独特设计点。 - •我们开发了 SpecPrefetch,一个轻量级基于适配器的框架,用于预测下一层专家并在运行时约束下调度可行的异步传输。 - •我们通过离线预测实验和真实设备移动端评估验证了 SpecPrefetch,展示了更高的专家覆盖率、低可训练开销以及实际的延迟降低。 ## 2 相关工作 ### 2.1 稀疏 MoE 基础模型 专家混合(MoE)通过条件计算扩展了基础模型。在稀疏 MoE 层中,路由器仅为每个 token 激活一小部分专家,增加了总参数容量,同时限制了激活的计算量(Shazeer 等人,2017 (https://arxiv.org/html/2607.24787#bib.bib30))。早期的系统如 GShard、Switch Transformer 和 GLaM 表明,稀疏路由以可控的计算成本提高了模型容量和语言建模性能,同时引入了路由稳定性、负载平衡、通信和专家专业化方面的挑战(Lepikhin 等人,2021 (https://arxiv.org/html/2607.24787#bib.bib31);Fedus 等人,2022 (https://arxiv.org/html/2607.24787#bib.bib32);Du 等人,2022 (https://arxiv.org/html/2607.24787#bib.bib33))。 最近的 MoE 模型进一步多样化专家架构。Mixtral 使用纯路由专家池(Jiang 等人,2024 (https://arxiv.org/html/2607.24787#bib.bib34)),DeepSeekMoE 分离了共享和路由专家(Dai 等人,2024 (https://arxiv.org/html/2607.24787#bib.bib35)),而稀疏升级(sparse upcycling)从密集检查点初始化 MoE 模型以降低训练成本(Komatsuzaki 等人,2023 (https://arxiv.org/html/2607.24787#bib.bib36))。这些设计在专家容量如何构建、共享和路由方面有所不同,这直接影响卸载和专家预取。 ### 2.2 卸载式 MoE 推理与专家预取 专家卸载通过将不活跃的专家保存在 CPU 内存或主机端存储中,使得大型稀疏 MoE 模型能够在有限加速器内存下运行。现有系统通过专家缓存、放置、异步传输和异构内存管理来降低 GPU 内存压力(Shen 等人,2022 (https://arxiv.org/html/2607.24787#bib.bib37);Xue 等人,2024 (https://arxiv.org/html/2607.24787#bib.bib38);He 等人,2024 (https://arxiv.org/html/2607.24787#bib.bib39);Yu 等人,2025a (https://arxiv.org/html/2607.24787#bib.bib40);Fang 等人,2025a (https://arxiv.org/html/2607.24787#bib.bib41))。一类工作减少专家移动成本或频率:基于缓存的方法将频繁或最近使用的专家保留在加速器上(Xue 等人,2024 (https://arxiv.org/html/2607.24787#bib.bib38);Kamahori 等人,2024 (https://arxiv.org/html/2607.24787#bib.bib42);Du 等人,2024 (https://arxiv.org/html/2607.24787#bib.bib43)),而量化、压缩、专家拆分和细粒度放置则减少传输量或提高缓存灵活性(Yan 等人,2025 (https://arxiv.org/html/2607.24787#bib.bib24);Tang 等人,2024 (https://arxiv.org/html/2607.24787#bib.bib44);Yu 等人,2025b (https://arxiv.org/html/2607.24787#bib.bib45))。这些方法提高了内存效率,但主要是在需求已知后优化专家移动。 另一类工作通过调度和预取使专家移动与计算重叠。ExpertFlow、Klotski、LayerScope 及相关系统使用预测性调度、token 重新批处理、异步 I/O、流水线执行和专家感知内存组织来改善 MoE 服务(He 等人,2024 (https://arxiv.org/html/2607.24787#bib.bib39);Fang 等人,2025a (https://arxiv.org/html/2607.24787#bib.bib41);Yu 等人,2025a (https://arxiv.org/html/2607.24787#bib.bib40);Abhimanyu Bambhaniya,2024 (https://arxiv.org/html/2607.24787#bib.bib46);Sun and Li,2025 (https://arxiv.org/html/2607.24787#bib.bib47))。FATE 进一步利用相邻层门控信息进行边缘推理中的无训练专家预取(Fang 等人,2025b (https://arxiv.org/html/2607.24787#bib.bib25))。这些方法展示了预取的价值,但无训练预测依赖于稳定的跨层路由规律性,且许多调度系统侧重于通过批处理或 token 流重组织提升吞吐量的服务。 基于训练的方法使用学习到的路由器、辅助预测器、预门控机制或参数高效自适应来估计专家激活(Hwang 等人,2024 (https://arxiv.org/html/2607.24787#bib.bib26);Chen 等人,2025 (https://arxiv.org/html/2607.24787#bib.bib27);Gavhane 等人,2025 (https://arxiv.org/html/2607.24787#bib.bib48);Zhu 等人,2025 (https://arxiv.org/html/2607.24787#bib.bib49))。推测生成方法通过草稿-验证执行创建额外的调度窗口(Leviathan 等人,2023 (https://arxiv.org/html/2607.24787#bib.bib28);Li 等人,2024 (https://arxiv.org/html/2607.24787#bib.bib29);Wang 等人,2025 (https://arxiv.org/html/2607.24787#bib.bib50))。相比之下,SpecPrefetch 针对标准的卸载式 MoE 执行:它仅预测下一层候选专家以进行传输准备,而原生路由器仍然选择最终执行的 top-K 专家。因此,SpecPrefetch 改变了专家移动的时间,而非执行哪些专家。 ## 3 方法 SpecPrefetch 是一个用于卸载式 MoE 推理的参数高效预取框架,它从第ll层可用的路由器输入预测第l\+1l+1 层的专家需求。如图2 (https://arxiv.org/html/2607.24787#S3.F2) 所示,预测候选仅用于异步传输准备,而原生路由器在执行过程中仍然选择最终的 top-K 专家,因此 SpecPrefetch 隐藏了暴露的传输延迟,同时不改变预训练 MoE 模型的路由语义。遵循这一设计,第3.1节 (https://arxiv.org/html/2607.24787#S3.SS1) 首先将保持路由器的下一层专家预取问题形式化为一个仅传输预测问题;第3.2节 (https://arxiv.org/html/2607.24787#S3.SS2) 随后介绍一个轻量级下一层门控校准模块,用于从第ll层可用的表示估计第l\+1l+1 层的专家优先级;第3.3节 (https://arxiv.org/html/2607.24787#S3.SS3) 最后描述一个具有窗口感知的运行时调度器,该调度器将预测的优先级转换为在缓存、队列和带宽约束下可行的异步传输。 参考图注图2:原生 MoE 执行与 SpecPrefetch 的概览。(a) 原生 MoE 路由仅在执行过程中选择专家。(b) SpecPrefetch 预测下一层候选以进行异步传输,而原生路由器确定最终执行的专家。
相似文章
更少专家,更快解码:面向混合专家模型的成本感知推测解码
本文提出EcoSpec,一种针对混合专家模型的成本感知推测解码框架,在草稿选择阶段考虑了专家激活成本。通过在无需修改目标模型验证规则的情况下减少专家足迹,该方法在DeepSeek-V3.1、Qwen3-235B-A22B和GPT-OSS-120B等大规模MoE模型上实现了高达1.62倍的加速。
MobileMoE:扩展端侧混合专家模型
MobileMoE 引入了高效的端侧混合专家语言模型,参数规模低于十亿,在性能和效率上均优于密集基线模型和现有的 MoE 模型。这些模型在开源数据集上训练,并在商用智能手机上展现出显著的加速效果。
FlexMoE: 面向MoE语言模型的一体通用嵌套式专家内剪枝
FlexMoE提出了一种面向MoE语言模型的一体通用嵌套式专家内部剪枝方法,能够在单次训练中生成多个可部署的子网络,且性能损失极小。
多层级MoE缓存
讨论MoE模型的多层级缓存策略,通过将频繁激活的专家保留在GPU上来提升推理速度,参考了PowerInfer和llama.cpp分支等现有实现。
MawForge:面向本地混合专家推理的内存受限专家物化
MawForge 提出了一种内存受限的方法,用于在受限的统一内存机器上服务大型混合专家(MoE)语言模型,通过将完整模型存储在磁盘上,并按需将专家张量物化到有限缓存中。在 MacBook Pro M5 Pro 上的实验表明,能够在 24GB 内存范围内有效服务 34GB 和 25GB 的模型,并分析了缓存大小权衡和推测解码结果。