llm-architectures-explained

/models

GLM-5

Z.ai · GLM-5 · open weights

Facts and where they come from

Released2026-02config.jsonconfig.jsonHugging Face repository creation date (api.createdAt)
Licencemitconfig.jsonconfig.jsonREADME metadata: license
Total parameters744Blabmodel cardREADME: from 355B parameters (32B active) to 744B parameters (40B active)
Active parameters40Blabmodel cardREADME: 40B active
Context length198K tokensconfig.jsonconfig.jsonmax_position_embeddings
Norm placementprecodemodelling codetransformers 5.18.0 / repo modelling code for glm_moe_dsa: input_layernorm before attention, post_attention_layernorm before the MLP
Norm typeRMSNormcodemodelling codetransformers 5.18.0 / repo modelling code for glm_moe_dsa: input_layernorm before attention, post_attention_layernorm before the MLP
QK-normnocodemodelling codeno q/k normalisation in the attention block (MLA normalises its latent vectors, which is not QK-norm)
Positional encodingRoPE on 25% of each headconfig.jsonconfig.jsonqk_rope_head_dim / (qk_nope_head_dim + qk_rope_head_dim): decoupled RoPE
Parallel attention and MLPnocodemodelling codetransformers 5.18.0 / repo modelling code for glm_moe_dsa: input_layernorm before attention, post_attention_layernorm before the MLP

Architecture, drawn from the data

MLA 64h, latent 512, top-2048. Each column is one layer: its token mixer above, its feed-forward block below. Paler columns reuse another layer’s keys and values.

GLM-5: layer stack and blockslayers (78)mixer / FFNlayer 0: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 0: Gated MLP: 12288layer 1: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 1: Gated MLP: 12288layer 2: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 2: Gated MLP: 12288layer 3: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 3: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 4: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 4: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 5: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 5: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 6: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 6: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 7: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 7: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 8: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 8: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 9: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 9: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 10: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 10: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 11: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 11: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 12: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 12: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 13: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 13: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 14: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 14: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 15: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 15: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 16: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 16: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 17: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 17: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 18: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 18: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 19: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 19: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 20: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 20: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 21: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 21: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 22: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 22: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 23: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 23: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 24: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 24: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 25: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 25: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 26: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 26: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 27: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 27: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 28: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 28: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 29: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 29: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 30: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 30: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 31: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 31: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 32: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 32: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 33: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 33: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 34: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 34: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 35: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 35: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 36: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 36: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 37: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 37: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 38: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 38: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 39: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 39: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 40: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 40: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 41: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 41: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 42: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 42: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 43: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 43: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 44: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 44: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 45: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 45: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 46: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 46: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 47: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 47: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 48: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 48: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 49: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 49: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 50: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 50: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 51: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 51: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 52: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 52: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 53: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 53: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 54: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 54: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 55: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 55: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 56: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 56: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 57: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 57: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 58: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 58: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 59: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 59: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 60: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 60: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 61: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 61: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 62: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 62: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 63: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 63: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 64: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 64: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 65: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 65: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 66: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 66: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 67: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 67: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 68: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 68: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 69: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 69: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 70: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 70: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 71: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 71: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 72: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 72: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 73: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 73: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 74: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 74: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 75: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 75: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 76: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 76: MoE: 256 experts, 8 active · expert 2048 · 1 sharedlayer 77: MLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048layer 77: MoE: 256 experts, 8 active · expert 2048 · 1 shared03977× 75normMLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048+normMoE: 256 experts, 8 active · expert 2048 · 1 shared+× 3normMLA: 64 heads · KV latent 512 + RoPE 64 · Q latent 2048 · sparse top-2048+normGated MLP: 12288+MLAdense FFNMoE FFN

Modelled costs

From the cost model, batch size 1. Totals the lab states are in the table above; differences come from rounding, from what a lab counts, or from parts the model does not describe (listed on the about page).

Parameters (modelled)744B
Active per token (modelled)41.8B
Without embeddings and output head742B total, 39.9B active
Multi-token-prediction layers (extra)9.95B
Published weights (Hugging Face count)754B
KV cache per token, BF16 (layers that grow with context)107 KiB
KV cache + state at 198K tokens, BF1620.7 GiB
Decode FLOPs per token at 4K context94.8 GFLOP
Prefill FLOPs for a 4K prompt364 TFLOP

KV cache against context

GLM-5: KV cache bytes against context length101001,00010,000100,000980 KiB9.5 MiB95 MiB950 MiB9.3 GiBcontext (tokens)KV cache + state (BF16)GLM-5

Compare with other models →

Every architecture field

FieldValueSource
d_model6,144config.jsonconfig.jsonhidden_size
vocab154,880config.jsonconfig.jsonvocab_size
tied_embeddingsfalseconfig.jsonconfig.jsontie_word_embeddings
mixers.mla.typemlacodemodelling codemulti-head latent attention
mixers.mla.heads64config.jsonconfig.jsonnum_attention_heads
mixers.mla.q_lora_rank2,048config.jsonconfig.jsonq_lora_rank
mixers.mla.kv_lora_rank512config.jsonconfig.jsonkv_lora_rank
mixers.mla.qk_nope192config.jsonconfig.jsonqk_nope_head_dim
mixers.mla.qk_rope64config.jsonconfig.jsonqk_rope_head_dim
mixers.mla.v_head_dim256config.jsonconfig.jsonv_head_dim
mixers.mla.indexer.heads32config.jsonconfig.jsonindex_n_heads
mixers.mla.indexer.head_dim128config.jsonconfig.jsonindex_head_dim
mixers.mla.indexer.topk2,048config.jsonconfig.jsonindex_topk
ffns.dense.typedensecodemodelling codeMLP block
ffns.dense.d_ff12,288config.jsonconfig.jsonintermediate_size
ffns.dense.gatedtruecodemodelling codeMLP: gated (SwiGLU/GeGLU)
ffns.moe.typemoecodemodelling codeMoE block
ffns.moe.experts256config.jsonconfig.jsonn_routed_experts
ffns.moe.active8config.jsonconfig.jsonnum_experts_per_tok
ffns.moe.d_expert2,048config.jsonconfig.jsonmoe_intermediate_size
ffns.moe.gatedtruecodemodelling codeexperts are gated MLPs
ffns.moe.shared1config.jsonconfig.jsonn_shared_experts
ffns.moe.d_shared2,048config.jsonconfig.jsonmoe_intermediate_size
layout3× mla/dense · 75× mla/moeconfig.jsonconfig.jsonnum_hidden_layers, first_k_dense_replace
mtp_layers1config.jsonconfig.jsonnum_nextn_predict_layers

Sources

Listed in the LLM Architecture Gallery checklist as “GLM-5 (744B)” (name only; see about).