llm-architectures-explained

/models

Sarvam 105B

Sarvam AI · Sarvam · open weights

Facts and where they come from

Released2026-03config.jsonconfig.jsonHugging Face repository creation date (api.createdAt)
Licenceapache-2.0config.jsonconfig.jsonREADME metadata: license
Total parameters105Blabmodel cardmodel name sarvam-105b
Active parameters10.3Blabmodel cardREADME: 10.3B active parameters
Context length128K tokensconfig.jsonconfig.jsonmax_position_embeddings
Norm placementprecodemodelling codetransformers 5.18.0 / repo modelling code for sarvam_mla: input_layernorm before attention, post_attention_layernorm before the MLP
Norm typeRMSNormcodemodelling codetransformers 5.18.0 / repo modelling code for sarvam_mla: input_layernorm before attention, post_attention_layernorm before the MLP
QK-normyesconfig.jsonconfig.jsonuse_qk_norm
Positional encodingRoPE on 33.3% 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 sarvam_mla: input_layernorm before attention, post_attention_layernorm before the MLP

Architecture, drawn from the data

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

Sarvam 105B: layer stack and blockslayers (32)mixer / FFNlayer 0: MLA: 64 heads · KV latent 512 + RoPE 64layer 0: Gated MLP: 16384layer 1: MLA: 64 heads · KV latent 512 + RoPE 64layer 1: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 2: MLA: 64 heads · KV latent 512 + RoPE 64layer 2: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 3: MLA: 64 heads · KV latent 512 + RoPE 64layer 3: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 4: MLA: 64 heads · KV latent 512 + RoPE 64layer 4: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 5: MLA: 64 heads · KV latent 512 + RoPE 64layer 5: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 6: MLA: 64 heads · KV latent 512 + RoPE 64layer 6: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 7: MLA: 64 heads · KV latent 512 + RoPE 64layer 7: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 8: MLA: 64 heads · KV latent 512 + RoPE 64layer 8: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 9: MLA: 64 heads · KV latent 512 + RoPE 64layer 9: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 10: MLA: 64 heads · KV latent 512 + RoPE 64layer 10: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 11: MLA: 64 heads · KV latent 512 + RoPE 64layer 11: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 12: MLA: 64 heads · KV latent 512 + RoPE 64layer 12: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 13: MLA: 64 heads · KV latent 512 + RoPE 64layer 13: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 14: MLA: 64 heads · KV latent 512 + RoPE 64layer 14: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 15: MLA: 64 heads · KV latent 512 + RoPE 64layer 15: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 16: MLA: 64 heads · KV latent 512 + RoPE 64layer 16: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 17: MLA: 64 heads · KV latent 512 + RoPE 64layer 17: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 18: MLA: 64 heads · KV latent 512 + RoPE 64layer 18: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 19: MLA: 64 heads · KV latent 512 + RoPE 64layer 19: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 20: MLA: 64 heads · KV latent 512 + RoPE 64layer 20: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 21: MLA: 64 heads · KV latent 512 + RoPE 64layer 21: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 22: MLA: 64 heads · KV latent 512 + RoPE 64layer 22: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 23: MLA: 64 heads · KV latent 512 + RoPE 64layer 23: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 24: MLA: 64 heads · KV latent 512 + RoPE 64layer 24: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 25: MLA: 64 heads · KV latent 512 + RoPE 64layer 25: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 26: MLA: 64 heads · KV latent 512 + RoPE 64layer 26: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 27: MLA: 64 heads · KV latent 512 + RoPE 64layer 27: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 28: MLA: 64 heads · KV latent 512 + RoPE 64layer 28: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 29: MLA: 64 heads · KV latent 512 + RoPE 64layer 29: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 30: MLA: 64 heads · KV latent 512 + RoPE 64layer 30: MoE: 128 experts, 8 active · expert 2048 · 1 sharedlayer 31: MLA: 64 heads · KV latent 512 + RoPE 64layer 31: MoE: 128 experts, 8 active · expert 2048 · 1 shared01631× 31normMLA: 64 heads · KV latent 512 + RoPE 64+normMoE: 128 experts, 8 active · expert 2048 · 1 shared+× 1normMLA: 64 heads · KV latent 512 + RoPE 64+normGated MLP: 16384+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)106B
Active per token (modelled)12.4B
Without embeddings and output head104B total, 10.3B active
Published weights (Hugging Face count)106B
KV cache per token, BF16 (layers that grow with context)36 KiB
KV cache + state at 128K tokens, BF164.5 GiB
Decode FLOPs per token at 4K context28.1 GFLOP
Prefill FLOPs for a 4K prompt95.1 TFLOP

KV cache against context

Sarvam 105B: KV cache bytes against context length101001,00010,000100,00098 KiB980 KiB9.5 MiB95 MiB950 MiBcontext (tokens)KV cache + state (BF16)Sarvam 105B

Compare with other models →

Every architecture field

FieldValueSource
d_model4,096config.jsonconfig.jsonhidden_size
vocab262,144config.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_ranknullcodemodelling codeq_lora_rank: null (full-rank query)
mixers.mla.kv_lora_rank512config.jsonconfig.jsonkv_lora_rank
mixers.mla.qk_nope128config.jsonconfig.jsonqk_nope_head_dim
mixers.mla.qk_rope64config.jsonconfig.jsonqk_rope_head_dim
mixers.mla.v_head_dim128config.jsonconfig.jsonv_head_dim
ffns.dense.typedensecodemodelling codeMLP block
ffns.dense.d_ff16,384config.jsonconfig.jsonintermediate_size
ffns.dense.gatedtruecodemodelling codeMLP: gated (SwiGLU/GeGLU)
ffns.moe.typemoecodemodelling codeMoE block
ffns.moe.experts128config.jsonconfig.jsonnum_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.jsonnum_shared_experts
ffns.moe.d_shared2,048config.jsonconfig.jsonmoe_intermediate_size
layout1× mla/dense · 31× mla/moeconfig.jsonconfig.jsonnum_hidden_layers, first_k_dense_replace

Sources

Listed in the LLM Architecture Gallery checklist as “Sarvam (105B)” (name only; see about).