Soofi S
SOOFI Consortium · Soofi · open weights
Architecture taken from Nemotron 3 Nano 30B-A3B: README: Nemotron 3 Nano reference architecture, adopted without modification
- GQA
- Mamba (SSM)
- Hybrid
- RoPE
- Pre-norm
- MoE
- Shared expert
Facts and where they come from
| Released | 2026-07 | config.jsonconfig.jsonHugging Face repository creation date (api.createdAt) |
|---|---|---|
| Licence | other | config.jsonconfig.jsonREADME metadata: license |
| Total parameters | 31.6B | labmodel cardREADME: ~3.16x10^10 total (31.6B), with ~3.2B active |
| Active parameters | 3.2B | labmodel cardREADME: ~3.2B active |
| Context length | 256K tokens | config.jsonconfig.jsonmax_position_embeddings |
| Norm placement | pre | codemodelling codetransformers 5.18.0 nemotron_h: one norm before each mixer or MLP block |
| Norm type | RMSNorm | codemodelling codetransformers 5.18.0 nemotron_h: one norm before each mixer or MLP block |
| QK-norm | no | codemodelling codeno q/k normalisation in the attention block |
| Positional encoding | RoPE | config.jsonconfig.jsonpartial_rotary_factor |
| Parallel attention and MLP | no | codemodelling codetransformers 5.18.0 nemotron_h: one norm before each mixer or MLP block |
Architecture, drawn from the data
23× Mamba-2 + 6× GQA 32q/2kv. Each column is one layer: its token mixer above, its feed-forward block below. Paler columns reuse another layer’s keys and values.
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) | 31.6B |
|---|---|
| Active per token (modelled) | 3.58B |
| Without embeddings and output head | 30.9B total, 2.88B active |
| Published weights (Hugging Face count) | 31.6B |
| KV cache per token, BF16 (layers that grow with context) | 6 KiB |
| KV cache + state at 256K tokens, BF16 | 1.52 GiB |
| Decode FLOPs per token at 4K context | 6.93 GFLOP |
| Prefill FLOPs for a 4K prompt | 24.7 TFLOP |
KV cache against context
Every architecture field
| Field | Value | Source |
|---|---|---|
| d_model | 2,688 | config.jsonconfig.jsonhidden_size |
| vocab | 131,072 | config.jsonconfig.jsonvocab_size |
| tied_embeddings | false | config.jsonconfig.jsontie_word_embeddings |
| mixers.full.type | attn | codemodelling codeattention block |
| mixers.full.heads | 32 | config.jsonconfig.jsonnum_attention_heads |
| mixers.full.kv_heads | 2 | config.jsonconfig.jsonnum_key_value_heads |
| mixers.full.head_dim | 128 | config.jsonconfig.jsonhead_dim |
| mixers.mamba.type | mamba2 | codemodelling codeMamba-2 mixer |
| mixers.mamba.heads | 64 | config.jsonconfig.jsonmamba_num_heads |
| mixers.mamba.head_dim | 64 | config.jsonconfig.jsonmamba_head_dim |
| mixers.mamba.state | 128 | config.jsonconfig.jsonssm_state_size |
| mixers.mamba.groups | 8 | config.jsonconfig.jsonn_groups |
| mixers.mamba.conv_kernel | 4 | config.jsonconfig.jsonconv_kernel |
| ffns.moe.type | moe | codemodelling codeMoE block |
| ffns.moe.experts | 128 | config.jsonconfig.jsonn_routed_experts |
| ffns.moe.active | 6 | config.jsonconfig.jsonnum_experts_per_tok |
| ffns.moe.d_expert | 1,856 | config.jsonconfig.jsonmoe_intermediate_size |
| ffns.moe.gated | false | codemodelling codeexperts are two-matrix MLPs |
| ffns.moe.shared | 1 | config.jsonconfig.jsonn_shared_experts |
| ffns.moe.d_shared | 3,712 | config.jsonconfig.jsonmoe_shared_expert_intermediate_size |
| ffns.dense.type | dense | codemodelling codeMLP block |
| ffns.dense.d_ff | 1,856 | config.jsonconfig.jsonintermediate_size |
| ffns.dense.gated | false | codemodelling codeMLP: two matrices, no gate |
| layout | 1× mamba/none · 1× none/moe · 1× mamba/none · 1× none/moe · 1× mamba/none · 1× full/none · 1× none/moe · 1× mamba/none · 1× none/moe · 1× mamba/none · 1× none/moe · 1× mamba/none · 1× full/none · 1× none/moe · 1× mamba/none · 1× none/moe · 1× mamba/none · 1× none/moe · 1× mamba/none · 1× full/none · 1× none/moe · 1× mamba/none · 1× none/moe · 1× mamba/none · 1× none/moe · 1× mamba/none · 1× full/none · 1× none/moe · 1× mamba/none · 1× none/moe · 1× mamba/none · 1× none/moe · 1× mamba/none · 1× full/none · 1× none/moe · 1× mamba/none · 1× none/moe · 1× mamba/none · 1× none/moe · 1× mamba/none · 1× none/moe · 1× mamba/none · 1× full/none · 1× none/moe · 1× mamba/none · 1× none/moe · 1× mamba/none · 1× none/moe · 1× mamba/none · 1× none/moe · 1× mamba/none · 1× none/moe | config.jsonconfig.jsonhybrid_override_pattern |
| norms_per_layer | 1 | codemodelling codetransformers 5.18.0 nemotron_h: one pre-norm per block (each block is a mixer or an MLP) |
Sources
- config.json @ dfd04e8
- model card
- arXiv 2607.09424
- config.json @ bf77c31
- modelling code · transformers 5.18.0 modelling code, or the model repository's own modelling file at the pinned revision
Listed in the LLM Architecture Gallery checklist as “Soofi S (30B-A3B)” (name only; see about).