跳到内容

术语★★★★★9 分钟阅读

「Mixture of Experts」(MoE)到底是什么

为什么「巨大」的模型反而比小的便宜跑 — 以及 DeepSeek、Mixtral、Llama 4 为什么都押在这个架构。

登入以收藏

DeepSeek V3 在 2024 年底推出时带着 6710 亿参数,新闻标题都聚焦在大小上。真正令人印象深刻的是 DeepSeek 能用一个 70B dense 模型的零头成本跑这个东西。秘诀是 Mixture of Experts。到 2026 年,MoE 已经是前沿开放权重模型的主流架构 — 而且封闭模型也越来越这样。这篇讲内部发生什么。

Dense 基准

标准的 dense transformer(像原版 Llama 或 GPT-3)是一叠层。每处理一个 token,模型会跑遍每一层的每一个参数。如果你的模型有 70B 参数,每一个输入或输出 token 都做 70B 规模的计算。

这很浪费。语言和推理的不同部分大概会受惠于不同的专门电路,但 dense 模型对每件事都用全部。像每个问题都咨询全部 70B 个「员工」,即使只有少数几个擅长那个问题。

MoE 改变了什么

MoE 模型把每个 transformer 层里的 feed-forward 网络换成一组「专家」(通常 8、16、64 或 128 个)加一个小型「router」网络。对每个 token,router 挑出 top-K 个专家(通常 2 个),只有那几个处理这个 token。其余的对这个 token 来说是休眠的。

这意味 MoE 模型有两个重要的参数数量:

  • 总参数(头条数字,例如 DeepSeek V3 的 671B)。这些参数全部存在内存。
  • 每 token 激活的参数(例如 DeepSeek V3 的 37B)。这才是任一给定 token 真正在做的计算。

模型容量是 671B,但每 token 只做大约 37B 的计算。所以跑起来比 671B dense 快很多便宜很多 — 推理成本接近 37B dense。但因为不同 token 用不同专家,模型整体受惠于全部 671B 的学习容量。

像有一个 100 位专家员工的大公司,但每个客户问题只 route 到最相关的 2 位。容量是总专业度;每个问题的成本只是那 2 位。

为什么这个架构突然到处都是

MoE 从 1990 年代就存在,但要到 2021-2022 年(Switch Transformer、Google 的 GShard)才在规模上实际可行,2024 年成为主流。为什么现在到处都是:

  • **规模化下,推理成本比训练成本更重要。**如果一个模型要服务数十亿次,每次推理省 50% 比训练省值钱得多。
  • **VRAM 便宜;算力贵。**GPU 内存比算力吞吐量扩张得快。MoE 用「内存里更多参数」换「每 token 更少算力」,这个交易是对的方向。
  • **质量可扩展。**经验上,N 个总参数、K 个激活的 MoE 表现常常接近 N 大小的 dense,而成本像 K 大小的 dense。算是免费午餐(类似)。

2025-2026 年值得注意的 MoE 模型:

  • DeepSeek V3(671B 总 / 37B 激活) — 开放权重,目前以价格论最强。
  • DeepSeek R1 — 推理模型,也是 MoE。
  • Mixtral 8x7B 和 8x22B — Mistral 的 MoE 系列,小一点,自架者很容易上手。
  • Llama 4(Scout 109B / Maverick 400B) — Meta 第一个 MoE 旗舰。
  • Qwen 3 MoE 变体 — 阿里巴巴的开放权重 MoE。
  • GPT-5 / Claude / Gemini — 内部几乎肯定是 MoE,虽然实验室没完全披露架构。

MoE 用起来跟 dense 有什么差别

对 99% 的用户来说 MoE 是隐形的 — 一样的聊天界面、一样的 API。但有下游效应:

同等质量下推理成本较低,所以 DeepSeek V3 能订这么侵略性的价(类似任务常常是 GPT-5 的 1/10)。

**自架更难。**671B 参数的 MoE 要塞进 VRAM,很贵(通常多 GPU H100 配置)。「跑起来便宜」这部分只在你付得起 VRAM 之后才生效。Mixtral 8x7B 对爱好者是甜蜜点,大约 95GB 总量但推理成本合理。

第一个 token 的延迟可能稍高,因为 routing 有 overhead。一旦开始产生,吞吐量很好。

**量化更难。**不同专家可能有不同分布,所以单纯的 4-bit 量化有时候对 MoE 比对 dense 伤得多。社群已开发 MoE 专门的量化技术。

**微调更复杂。**你要决定是更新全部专家、只更新某些、还是只更新 router。多数消费级微调框架(axolotl、unsloth)现在处理得来,但花了一段时间。

常见误解

**「671B MoE 跟 671B dense 一样强。」**不对。它的表现介于它激活大小的 dense 和总大小的 dense 之间。经验上 MoE 质量扩展得不错但不是跟总参数 1:1。

**「MoE 跟 ensemble 一样。」**不对。ensemble 跑 N 个独立模型再结合输出。MoE 是单一模型,不同部分对每个 token 激活。Router 跟专家是端到端联合训练的。

**「每个专家擅长特定主题。」**大致不对。专家不会清楚地专业化成「数学专家」/「程序专家」/「法文专家」 — 它们专业化在 router 学会分派的更抽象的 pattern 上。有时候专家分派有可解释性,但不是总有。

**「MoE 只是假装参数多。」**对也不对。不是「假」,因为那些参数确实对模型质量有贡献。但用参数数量比较 671B MoE 和 671B dense 是误导 — 用质量基准比才对。

对用户什么时候有差

2026 年挑模型的时候,MoE 解释了为什么最强的某些开源选项(DeepSeek V3、Llama 4 Maverick、Qwen 3 235B)同时也是每 token 最便宜的。对自架,MoE 把瓶颈从算力转到 VRAM — 规划时要考虑这点。

如果你不训练、不自架,MoE 不改变你怎么用 API 开发。你还是基于质量 / 成本权衡挑模型;底层架构是实现细节。

什么时候不要过度想

做应用开发时,把「是不是 MoE」当好奇心,不是决策因素。对的问题是「这个模型在我的任务上表现好不好、成本我能不能负担」,不是「架构是不是 MoE」。某些特定场景最强的模型是 dense(Mistral Small 3、Qwen 32B Instruct),某些是 MoE。

下一步

  • 量化解释 — 对自架者来说,跟 MoE 有有趣的互动
  • 怎么挑自架技术栈 — 本地跑 MoE 的实际情况
  • 开源 vs 前沿 LLM — MoE 大致是开放权重追上前沿的原因

最后更新: 2026-04-29

We use cookies

Anonymous analytics help us improve the site. You can opt out anytime. Learn more