DeepSeek MoE: What It Is and Why It Powers V4-Pro and V4.1-Flash

If you have read about DeepSeek V3, R1 or V4 and seen phrases like “671B total / 37B active” without quite understanding what they mean, you are in the right place. DeepSeek MoE is the mixture-of-experts architecture that lets DeepSeek build very large models that only spend a fraction of their parameters on any given token. It started as a January 2024 research paper, became the backbone of V2, V3, R1 and V3.2, and the V4-generation models behind DeepSeek’s API today are MoE models too.
This guide walks through what DeepSeek MoE actually is, the two ideas that make it work, the lineage from the original DeepSeekMoE 16B to today’s V4-Pro and V4.1-Flash, and how to use these models.
What is DeepSeek MoE?

DeepSeek MoE (DeepSeekMoE in the paper) is a mixture-of-experts architecture introduced in a paper by Damai Dai and colleagues at DeepSeek, posted to arXiv on 11 January 2024. The paper’s starting point is that mixture-of-experts is a promising way to manage computational costs when scaling up model parameters, but conventional MoE architectures like GShard, which activate the top-K out of N experts, struggle to ensure that each expert acquires non-overlapping and focused knowledge. DeepSeek’s answer combines two ideas, fine-grained expert segmentation and shared expert isolation, to push each expert toward a narrower, less redundant slice of knowledge.
The architecture matters because DeepSeek’s flagship language models since V2 have all been MoE models. DeepSeek’s API today serves two of them: deepseek-flash (DeepSeek-V4.1-Flash-1017) and deepseek-v4-pro (DeepSeek-V4-Pro-0813), both open-weight under MIT. Earlier MoE releases include V2, V3, R1, V3.1, V3.2 and the original DeepSeekMoE 16B research model.
How DeepSeek MoE works: two ideas
Fine-grained expert segmentation
In a conventional MoE layer, the feed-forward network is split into a small number of large experts and a router picks the top few; GShard uses top-2 routing, and Mixtral 8x7B’s published config has 8 experts with 2 active per token. DeepSeek segments the experts into a finer grain by splitting the FFN intermediate hidden dimension while keeping the number of parameters constant. To keep the computational cost constant, it also activates more of these fine-grained experts, which allows a more flexible combination and lets diverse knowledge be decomposed more finely and learned more precisely by different experts.
The practical effect: instead of choosing 2 of 8 experts, V2’s MoE layer chooses 6 of 160. According to V2’s published config, each MoE layer has 2 shared experts and 160 routed experts with an intermediate hidden dimension of 1,536 each, and 6 routed experts are activated per token. More, smaller experts give the router a finer instrument, while the FLOPs and parameter count stay the same.
Shared expert isolation
The second trick is to carve out a small number of experts that are always active for every token. In the paper’s words, DeepSeek isolates Ks experts as shared ones, aiming at capturing common knowledge and mitigating redundancy in routed experts. The intuition: common knowledge such as basic syntax does not need to be re-learned by every routed expert. Park that knowledge in a shared expert, and the routed experts can specialise harder on what is left.
Both choices are designed to push each routed expert toward a narrower slice of the data distribution. DeepSeek’s own ablations show fine-grained expert segmentation and shared expert isolation both contribute to stronger overall performance.

Architecture and lineage
DeepSeek MoE has shipped in several generations of model. The table tracks total parameters, activated parameters and context length as each model’s own card or paper states them. Activated-parameter counts drive per-token compute at inference; total counts are what you have to store and load.
| Model | Released | Total params | Active params | Context |
|---|---|---|---|---|
| DeepSeekMoE 16B | 2024-01 | 16.4B | 2.8B | 4K |
| DeepSeek V2 | 2024-05 | 236B | 21B | 128K |
| DeepSeek V3 | 2024-12 | 671B | 37B | 128K |
| DeepSeek R1 | 2025-01 | 671B | 37B | 128K |
| DeepSeek V3.2 | 2025-12 | Same MoE layout as V3 in its config (256 routed + 1 shared experts, 8 active) | 128K | |
| DeepSeek V4-Flash (April 2026 preview) | 2026-04-24 | 284B | 13B | 1M |
| DeepSeek V4-Pro (April 2026 preview) | 2026-04-24 | 1.6T | 49B | 1M |
| DeepSeek-V4-Pro-0813 | 2026-08-13 | Built on the V4-Pro (Preview) structure plus a DSpark module; no separate count published | 1M | |
| DeepSeek-V4.1-Flash (September build) | 2026-09-10 | 552B backbone | 8B prefill / 16B decode | 1M |
deepseek-flash today, is described as a minor update to V4.1-Flash; DeepSeek has not published a separate size for it.The later generations pair the MoE backbone with new attention designs. The April 2026 V4 preview card describes a hybrid attention mechanism combining Compressed Sparse Attention (CSA) and Heavily Compressed Attention (HCA) and reports that, at a 1M-token context, V4-Pro (Preview) needed only 27% of the single-token inference FLOPs and 10% of the KV cache of V3.2. The V4.1-Flash card (September 2026) describes CSA2 and an MoE layer with 1 shared expert and 384 routed experts, 6 of them activated per token. Both current API models offer a 1M-token context window.
Benchmarks
For the historical DeepSeekMoE paper, the headline result is efficiency parity with larger dense models: DeepSeekMoE 16B achieves comparable performance with DeepSeek 7B and LLaMA2 7B with only about 40% of the computations. A preliminary 145B variant in the same paper performed comparably with the dense DeepSeek 67B using only 28.5% (maybe even 18.2%) of the computations.
For the V4 generation, the numbers below come from DeepSeek’s April 2026 V4 preview model card. They are DeepSeek-reported and belong to the preview models, not to the V4-Pro-0813 or V4.1-Flash-1017 releases served today.
| Benchmark | V4-Pro-Base (Preview) | V4-Pro (Preview), max reasoning | Notes |
|---|---|---|---|
| MMLU | 90.1 | — | Base, 5-shot, DeepSeek-reported |
| HumanEval | 76.8 | — | Base, 0-shot, DeepSeek-reported |
| GSM8K | 92.6 | — | Base, 8-shot, DeepSeek-reported |
| SWE-Bench Verified | — | 80.6 | Resolved, DeepSeek-reported |
| Terminal-Bench 2.0 | — | 67.9 | DeepSeek-reported |
For more benchmark coverage, see DeepSeek benchmarks 2026.
Strengths of the DeepSeek MoE approach
- Cheap inference per token. V3 activates 37B of its 671B parameters per token; the September V4.1-Flash build activates 8B (prefill) or 16B (decode) of a 552B backbone. Per-token compute tracks the active count, not the total.
- Specialisation. Fine-grained segmentation gives the router more, smaller experts to compose; ablations in the original paper show this helps.
- Reduced redundancy. Shared experts hold common knowledge so routed experts can specialise.
- Open weights. Every recent DeepSeek release (V4.1-Flash-1017, V4-Pro-0813, V4.1-Flash, V3.2, V3.1, R1) publishes both code and model weights under MIT. Some older releases (V3 base, Coder-V2, VL2, and DeepSeekMoE 16B itself) split code (MIT) from weights (separate DeepSeek Model License); check the specific model’s Hugging Face repo if licensing matters to you.
- Long context. Combined with DeepSeek’s sparse-attention designs, both current API models support a 1M-token context with up to 384K output tokens.
Weaknesses and trade-offs
MoE is not free. The architecture comes with real engineering costs that show up the moment you try to host it yourself.
- Memory floor. You still have to store every parameter in fast memory, even if only a fraction is active per token. On 26 October 2026 the current Hugging Face files total about 893 GB for DeepSeek-V4-Pro-0813 and about 510 GB for DeepSeek-V4.1-Flash-1017, before KV cache and activations.
- Routing complexity. Load-balancing experts across devices, avoiding routing collapse and managing expert-parallel communication add engineering work that dense models do not have.
- Self-reported benchmarks. The headline numbers for every generation are DeepSeek’s own; treat them as the lab’s figures, not independent results.
How to access DeepSeek MoE models
Three surfaces are available today:
- Web chat and mobile app. According to DeepSeek’s 13 August 2026 announcement, V4 Pro is available on the app and web through “Expert Mode”, and the 17 October 2026 Change Log says the official web and app models were updated to DeepSeek-V4.1-Flash-1017.
- Hugging Face. DeepSeek-V4-Pro-0813 and DeepSeek-V4.1-Flash-1017 are published under MIT. The original DeepSeekMoE 16B Base and Chat checkpoints (about 32.8 GB each) are also there; DeepSeek says they can be deployed on a single 40 GB GPU without quantisation, and their weights fall under the DeepSeek Model License, which permits commercial use.
- API. Chat requests go to
POST /chat/completions, the OpenAI-compatible endpoint athttps://api.deepseek.com, withdeepseek-flashordeepseek-v4-proas the model. An Anthropic-compatible endpoint is available athttps://api.deepseek.com/anthropic.
Minimal Python example
To study the architecture at a manageable scale, the DeepSeekMoE 16B chat model runs with Hugging Face Transformers. This is the chat example from DeepSeek’s DeepSeek-MoE README:
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM, GenerationConfig
model_name = "deepseek-ai/deepseek-moe-16b-chat"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name, torch_dtype=torch.bfloat16, device_map="auto")
model.generation_config = GenerationConfig.from_pretrained(model_name)
model.generation_config.pad_token_id = model.generation_config.eos_token_id
messages = [
{"role": "user", "content": "Who are you?"}
]
input_tensor = tokenizer.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt")
outputs = model.generate(input_tensor.to(model.device), max_new_tokens=100)
result = tokenizer.decode(outputs[0][input_tensor.shape[1]:], skip_special_tokens=True)
print(result)
For the hosted models, thinking mode is a request parameter on either current model, not a separate model ID, and it is on by default; responses then return reasoning_content alongside the final content. The API is stateless, so you must resend the conversation history with each request. For a step-by-step setup, see the DeepSeek API getting started guide.
Pricing snapshot
DeepSeekMoE 16B and the other open-weight checkpoints are free to download; the API prices the two current models separately. As of October 2026, per 1M tokens: deepseek-flash costs $0.30 for cache-miss input and $1.20 for output at peak, $0.15 and $0.60 off-peak (cache hits $0.006 / $0.003); deepseek-v4-pro costs $1.32 and $3.96 at peak, $0.66 and $1.98 off-peak (cache hits $0.044 / $0.022). Peak hours are 01:00–04:00 and 06:00–10:00 UTC, Monday to Friday, excluding Chinese public holidays. Verify on the DeepSeek API pricing page before committing budget, and run your own numbers with the DeepSeek pricing calculator.
Best use cases
- Coding agents and tool-calling pipelines. DeepSeek reports 87.9 on Terminal Bench 2.1 and 62.7 on DeepSWE for V4-Pro-0813 (13 August 2026 model card); see DeepSeek for coding and DeepSeek for developers.
- Long-document analysis. The 1M-token context window on both current API models suits whole-codebase or contract-set analysis.
- High-volume chat.
deepseek-flashoutput at $1.20 per million tokens at peak ($0.60 off-peak) fits customer-support and content-generation workloads where per-call cost dominates. - Research on MoE itself. The original DeepSeekMoE 16B is still a useful study artefact: small enough to run on one 40 GB GPU and designed to expose the architecture cleanly.
Comparable alternatives
Other open MoE models worth weighing against DeepSeek’s include Mixtral, Qwen’s MoE checkpoints and Kimi K2.6 (1T total / 32B activated, per Moonshot’s model card). Closed models from OpenAI, Anthropic and Google do not publish comparable architecture details. For head-to-head reading, see DeepSeek vs Mistral and DeepSeek vs Qwen, or browse the wider DeepSeek models hub for context on the rest of the lineup.
Verdict

DeepSeek MoE is the architectural through-line from V2 to today’s V4-Pro and V4.1-Flash. The two ideas, fine-grained expert segmentation and shared expert isolation, are simple on paper and well validated in the original ablations. DeepSeek has since scaled MoE to the 1.6T-parameter April 2026 V4-Pro preview and to 1M-token contexts. The catch is hardware: self-hosting the current models takes hundreds of gigabytes of fast memory, so most readers will meet DeepSeek MoE through the API or the chat app rather than at the weights level.
Frequently asked questions
What does MoE mean in DeepSeek?
MoE stands for mixture-of-experts. In DeepSeek’s models, most transformer feed-forward layers are replaced by many small expert networks plus a router that picks a few per token, alongside shared experts that always run. Only the chosen experts run, so DeepSeek-V3, with 671B total parameters, activates 37B per token. The architecture is described in the DeepSeekMoE research paper.
How is DeepSeek MoE different from Mixtral?
Mixtral 8x7B’s published config uses eight experts and picks two per token. DeepSeek MoE splits the same FFN budget into many more, smaller experts and adds shared experts that are always active; DeepSeekMoE 16B, for example, routes each token to 2 shared experts and 6 of 64 routed experts. The result is finer-grained specialisation at the same compute cost. For a wider comparison, see DeepSeek vs Mistral.
Are DeepSeek’s MoE weights open source?
The recent ones, yes. V4.1-Flash-1017, V4-Pro-0813, V4.1-Flash, V3.2, V3.1 and R1 publish both code and weights under MIT. Some older releases (V3 base, Coder-V2, VL2 and DeepSeekMoE 16B) keep code under MIT but put weights under a separate DeepSeek Model License. Check the specific Hugging Face repo if licensing matters; our open-source guide covers the per-model breakdown.
Can you run DeepSeek V4 MoE models locally?
Only with serious hardware. On 26 October 2026 the Hugging Face files total about 510 GB for DeepSeek-V4.1-Flash-1017 and about 893 GB for DeepSeek-V4-Pro-0813, and you need fast memory for all of it plus the KV cache. To study the architecture itself, DeepSeekMoE 16B fits on a single 40 GB GPU without quantisation, per DeepSeek. The install DeepSeek locally tutorial walks through the practical options.
Does DeepSeek MoE work with the OpenAI SDK?
Yes. The API matches OpenAI’s Chat Completions wire format, so the official OpenAI Python or Node SDK works against DeepSeek by changing only base_url to https://api.deepseek.com and supplying your DeepSeek API key. Requests still hit POST /chat/completions. See DeepSeek OpenAI SDK compatibility for full details.
Sources & Methodology
Primary sources
- OfficialDeepSeek API documentationEndpoints, request/response shape, model IDsLast checked: October 26, 2026
- Model cardDeepSeek on Hugging FaceWeights, license, usage notes per modelLast checked: October 26, 2026
- Model cardHugging Face: deepseek-ai/deepseek-moe-16b-base model cardReference 16B MoE research checkpoint and licenceLast checked: October 26, 2026
- RepositoryDeepSeek-MoE GitHub repository16.4B parameters, 2T tokens, ~40% compute, single 40 GB GPU, 4,096 sequence length, chat exampleLast checked: October 26, 2026
- Model cardHugging Face: deepseek-ai/DeepSeek-V4-Pro (April 2026 preview) model cardPreview sizes (1.6T/49B, 284B/13B), CSA/HCA, 27% FLOPs / 10% KV cache, preview benchmarksLast checked: October 26, 2026
- Model cardHugging Face: deepseek-ai/DeepSeek-V4-Pro-0813 model cardBuilt on the preview structure plus DSpark; Terminal Bench 2.1 / DeepSWE / HLE numbersLast checked: October 26, 2026
- Model cardHugging Face: deepseek-ai/DeepSeek-V4.1-Flash model card552B backbone, 8B/16B activated, 1 shared + 384 routed experts (September 2026 build)Last checked: October 26, 2026
- OfficialDeepSeek Models & PricingCurrent API models and peak/off-peak prices (26 Oct 2026)Last checked: October 26, 2026
Technical references
- Technical reportDeepSeek-V3 technical report (arXiv:2412.19437)V3 architecture and training methodologyLast checked: October 26, 2026
- Technical reportDeepSeek-R1 paper (arXiv:2501.12948)R1 reasoning approach, distillation resultsLast checked: October 26, 2026
- BenchmarkSWE-Bench Verified leaderboardSoftware-engineering benchmark scoresLast checked: October 26, 2026
- BenchmarkHumanity's Last ExamHard knowledge-recall benchmarkLast checked: October 26, 2026
- Technical reportDeepSeekMoE paper (Dai et al., arXiv 2401.06066)Fine-grained expert segmentation, shared-expert isolation, 16B configuration, 145B resultsLast checked: October 26, 2026
- Technical reportDeepSeek-V2 technical report (arXiv 2405.04434)V2 MoE configuration (2 shared + 160 routed, 6 active)Last checked: October 26, 2026
Methodology
Architecture, parameter counts, context window, and license were checked against the official DeepSeek model card and the corresponding technical report. Benchmark figures are reproduced as they appear in vendor materials and are treated as directional indicators rather than guarantees of real-world performance.
Data confidence
High for official architecture and license; medium for vendor-reported benchmarks; low for projected future capabilities.
Editorial note
Vendor-reported figures are not always independently replicated. Benchmarks at the frontier change quickly; expect this article to need a refresh whenever DeepSeek, OpenAI, Anthropic, or Google ship a new model.
