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 大致是开放权重追上前沿的原因