Moonshot AI · released 2026-07-16
Kimi K3
What Kimi K3’s own documents say it is built from — every method with the sentence that describes it.
Curator’s noteRe-crawled 2026-07-27: the promised open-weights drop landed, so the first-party set below replaces what was announcement coverage only. 2.8T total / 104B activated (16 of 896 routed experts via Stable LatentMoE), 1M context, native vision, built on Kimi Delta Attention + Attention Residuals; weights under the Modified-MIT 'Kimi K3 License' (MaaS attribution clause). The pre-release note here estimated ~50B active — the technical report says 104B, so prefer the report. Both watch URLs resolved: github.com/MoonshotAI/Kimi-K3 and huggingface.co/moonshotai/Kimi-K3 now exist.
Against the consensus recipe
Its documents state 8 of the 15 methods the field agrees on.
The recipe from the overview: the methods the most labs adopt, per stage. A missing one is something the documents do not say, not something the model lacks.
Data curation
- Agentic data synthesis pipelinenot in its documents
Training objective
- Multi-Token Predictionnot in its documents
- KL alignment lossnot in its documents
Model architecture
- Mixture of Expertscore
- Hybrid Attentioncore
- Multi-Token Predictionnot in its documents
Optimization
- Muonused
- Expert Parallelismused
- Cosine decaydefault
Post-training
- Group Relative Policy Optimizationnot in its documents
- Supervised fine-tuningused
- Multi-Teacher On-Policy Distillationcore
Inference & serving
- Configurable reasoning effortdefault
- Speculative decodingnot in its documents
- FP8 KV-cache quantizationnot in its documents
Checked in its code
Its code shows 8 of the 19 architecture features checked — 4 of them are not stated in its documents.
Documents say what a lab chose to describe; the modeling code says what the checkpoint runs. Each feature below was put to a code verifier, and only the config values and source lines it cited that were found in the files are shown, linked to the line.
Read from the model repository’s own code (modeling_kimi_k3.py, configuration_kimi_k3.py, modeling_kimi_linear.py) and config.json at revision f831ab6681, by anthropic/claude-sonnet-5 on 2026-09-25.
| Feature | Code | Its documents | Evidence |
|---|---|---|---|
| Grouped-query attention | not in its code | not stated | The MLA attention module sets num_key_value_heads equal to num_attention_heads (both 96), so there is no query-group sharing of fewer KV heads, and attention is MLA rather than GQA anyway. text_config.num_attention_heads = 96text_config.num_key_value_heads = 96 |
| Multi-head latent attention code only | in its code | not stated | KimiMLAAttention down-projects hidden states into a shared kv_lora_rank latent (with a decoupled RoPE key dimension qk_rope_head_dim) and up-projects per head via kv_b_proj, DeepSeek-V2/V3 style. text_config.kv_lora_rank = 512text_config.qk_rope_head_dim = 64text_config.q_lora_rank = 1536 |
| Sliding-window attention | not in its code | not stated | No sliding_window config key or windowed masking code exists; the only attention pattern switch is between full (MLA) attention layers and linear KDA layers. |
| Interleaved sliding-window and global attention | not in its code | not stated | There is no interleaving of sliding-window and global attention layers; the fixed interleaving present is between full-attention (MLA) and linear-attention (KDA) layers, not local-window vs global attention. |
| Indexer-selected sparse attention (DeepSeek Sparse Attention) | not in its code | not stated | No indexer-based top-k token selection mechanism (index_topk, index_n_heads, etc.) appears anywhere in the config or code. |
| Linear-attention or state-space layers alongside full attention | in its code | core | The text_config's linear_attn_config defines kda_layers (linear-attention KDA layers) interleaved with full_attn_layers (full MLA softmax attention layers) across the 93 hidden layers. text_config.linear_attn_config.kda_layers = [1, 2, 3, 5, 6, 7, 9, 10, 11, 13, 14, 15, 17, 18, 19, 21, 22, 23, 25, 26, 27,…text_config.linear_attn_config.full_attn_layers = [4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64, 68, 72, 76, 80… |
| Gated DeltaNet layers | in its code | used | KimiDeltaAttention implements Kimi Delta Attention (a Gated DeltaNet variant) with a delta-rule recurrent update, decay gate (A_log/dt_bias), and short convolutions on q/k/v, applied to the kda_layers. text_config.linear_attn_config.num_heads = 96text_config.linear_attn_config.short_conv_kernel_size = 4 |
| Mamba-2 layers | not in its code | not stated | No Mamba-2/SSD selective state-space block (mamba_num_heads, ssm_state_size) exists in the code or config; the linear-attention layers use KDA (delta-rule), not Mamba-2. |
| Learnable attention sink | not in its code | not stated | No per-head learned sink logit is added to the attention softmax denominator anywhere in the eager or MLA attention implementations. |
| Gated attention output code only | in its code | not stated | In KimiMLAAttention, when mla_use_output_gate is true, a sigmoid gate computed from hidden_states (g_proj) multiplies the attention output before the final projection. text_config.mla_use_output_gate = true |
| QK normalization | not in its code | not stated | KimiMLAAttention has no query/key RMSNorm or LayerNorm applied before the attention dot product (only kv_a_layernorm and q_a_layernorm normalize the compressed latents, not per-head q/k before attention). |
| Partial RoPE code only | in its code | not stated | MLA queries/keys are split into a nope portion (qk_nope_head_dim=128) and a rope portion (qk_rope_head_dim=64), with only the rope portion carrying positional info via the decoupled key, and mla_use_nope confirms this partial scheme is active. text_config.qk_nope_head_dim = 128text_config.qk_rope_head_dim = 64text_config.mla_use_nope = true |
| YaRN RoPE scaling | code unclear | not stated | The config exposes a rope_scaling attribute in KimiLinearConfig defaulting to None and it is not present as a key in the given text_config, and no rotary_emb / RoPE application code is shown (self.rotary_emb is set to None and never used), so YaRN scaling cannot be confirmed as active. |
| Layers without positional encoding (NoPE) documents disagree | not in its code | core | All full-attention (MLA) layers use mla_use_nope=True uniformly, meaning nope is applied to every softmax-attention layer's designated portion rather than some layers having positional encoding and others not; there is no layer-varying NoPE pattern. text_config.mla_use_nope = true |
| Mixture of experts | in its code | core | KimiSparseMoeBlock routes tokens among num_experts=896 expert MLPs choosing num_experts_per_token=16 via a learned KimiMoEGate router, applied to layers past first_k_dense_replace. text_config.num_experts = 896text_config.num_experts_per_token = 16text_config.first_k_dense_replace = 1 |
| Shared expert code only | in its code | not stated | KimiSparseMoeBlock builds a shared_experts KimiMLP sized by num_shared_experts=2 that is added to every token's output alongside the routed experts. text_config.num_shared_experts = 2 |
| Auxiliary-loss-free load balancing (selection bias) | in its code | core | KimiMoEGate adds a learned e_score_correction_bias to the routing scores solely for top-k expert selection (topk_method=noaux_tc), matching DeepSeek-V3's aux-loss-free bias mechanism. text_config.topk_method = "noaux_tc" |
| Multi-token prediction layers | not in its code | not stated | num_nextn_predict_layers is set to 0 in this config, so no multi-token-prediction modules are built even though the config field exists. text_config.num_nextn_predict_layers = 0 |
| SwiGLU feed-forward | not in its code | not stated | hidden_act is set to "situ" and the MLP/expert modules use the custom SituAndMul activation (beta*tanh(gate/beta)*sigmoid(gate)*up), not a SiLU-gated SwiGLU. text_config.hidden_act = "situ" |
model architecture 40
token mixer 10
softmax attention 1
multi-head latent attention 1
linear attention & state space 7
hybrid layer stacking 1
channel mixer 17
mixture of experts 15
expert load balancing 6
latent mixture of experts 3
positional encoding 1
normalization & residual 4
multimodal architecture 7
context capacity 1
optimization 33
filed at the root 1
learning-rate schedule 2
training precision 2
quantization-aware training 3
training stability 3
training parallelism 12
training runtime 7
data curation 12
data sourcing 1
data filtering 2
synthetic data 7
data mixture & curriculum 1
tokenization 1
post-training 17
filed at the root 1
supervised fine-tuning 1
reinforcement learning algorithm 2
reward modelling 3
preference optimization 1
policy distillation 2
rollout & RL infrastructure 3
inference & serving 54
decoding strategy 2
reasoning control 8
KV cache management 9
inference quantization 3
serving parallelism 2
inference scheduling 6
inference kernel 9
context management 2
agentic scaffolding 13
software implementation 7
kernel & quantization library 3
agent product 1
infrastructure service 3
evaluation 10
filed at the root 6
human & real-world evaluation 1
other 2
filed at the root 2
unfiled 8
Further reading
Picked by hand, not extracted: where to read more, not evidence for anything on this page.
- Kimi K3 architecture card — LLM Architecture Gallery explainer sebastianraschka.com
Sources
The curated document list for this model. "not fetched" means the URL is recorded but its text was not read in the current run.
| Document | Kind | Publisher | Status |
|---|---|---|---|
| kimi.com/blog/kimi-k3 | official blog | Moonshot AI | read |
| github.com/MoonshotAI/Kimi-K3/blob/main/k3_tech_report.pdf | technical report | Kimi Team | read |
| huggingface.co/moonshotai/Kimi-K3 | model card | Moonshot AI | read |
| github.com/MoonshotAI/Kimi-K3 | code repo | Moonshot AI | read |
| interconnects.ai/p/kimi-k3-the-open-weights-escalation | third party analysis | Interconnects (Nathan Lambert) | read |
| simonwillison.net/2026/Jul/16/kimi-k3 | third party analysis | Simon Willison | read |
| venturebeat.com/technology/chinas-moonshot-ai-releases-kimi-k3-the-larg… | news | VentureBeat | not fetched |
| tomshardware.com/tech-industry/artificial-intelligence/moonshot-release… | news | Tom's Hardware | read |
| cnbc.com/2026/07/17/moonshot-ai-kimi-k3-model-openai-anthropic-china.ht… | news | CNBC | read |
| huggingface.co/blog/ResterChed/kimi-k3-model-overview-mxfp4-quantizatio… | third party analysis | Hugging Face community blog | read |
| openrouter.ai/moonshotai/kimi-k3 | vendor docs | OpenRouter | read |