archdb

LLM architectures and pretraining recipes, with sources.

Olmo-3-1125-32B

Ai2 · base checkpoint

Open in the comparison table Hugging Face ↗ Paper ↗

KV calculations use one sequence at 131,072 tokens and 16-bit cache elements. They include bounded sliding-window caches. This is retained cache payload, not peak prefill memory. The comparison table also offers sourced mixed-precision layouts, including quantization scales.

Release

Released

2025-11-20

Source: blog · Olmo 3 announcement; header date
November 20, 2025

Date the weights (or, if earlier, the technical report) were first made public, YYYY-MM-DD, as dated by the publisher. A Hugging Face repository creation date is used only when no dated publisher page exists, with a note.

License

apache-2.0

Source: model-card · README.md; front matter
license: apache-2.0

License of the released weights as declared by the publisher (model card metadata or license file), e.g. apache-2.0, mit, or the name of a custom license.

Input modalities

text

Inferred from the source; see the explanation below.

Source: model-card · README.md; Model Description
Model type: a Transformer style autoregressive language model.

Language model with no vision or audio components (Olmo3ForCausalLM).

Input modalities of the released checkpoint as the publisher states them, from: text, image, video, audio, joined with ' + ' in that order ("text", "text + image + video").

Parameters

Total params

32B parameters

Source: paper · p.1 abstract
We introduce Olmo 3, a family of state-of-the-art, fully-open language models at the 7B and 32B

Size designation; no exact parameter count is reported.

Total parameter count as reported by the publisher. See params.note for whether embeddings, MTP heads or vision towers are included.

Active params

32B parameters

Source: paper · p.1 abstract
We introduce Olmo 3, a family of state-of-the-art, fully-open language models at the 7B and 32B

Dense model; all parameters active.

Parameters used per token in the forward pass, as reported by the publisher.

Active non-embedding (stated)

Not disclosed

Active parameters excluding the input embedding and the output head (unembedding). Stated by the publisher, or computed from params.active by subtracting vocab × d_model for each of the embedding and output head that params.active is stated to include (basis inferred, note with the arithmetic). Not disclosed when the scope of params.active is not stated.

Counted total params

32.23B parameters

Calculated: embedding + output head + all experts + other weights, allenai/Olmo-3-1125-32B@c2b61da safetensors headers; reproduces stated total (backbone) and active (with embedding and output head)

Parameters of the text backbone counted from the released checkpoint's safetensors headers (embedding, output head, all experts and other weights; excluding MTP modules, vision/audio towers and n-gram lookup tables). Shown only when the counts reproduce the publisher's stated total and active parameters within 5% under some scope.

Counted embedding + head

1.027B parameters

Calculated: input embedding + output head, allenai/Olmo-3-1125-32B@c2b61da safetensors headers

Input embedding plus output head (once if tied), counted from the checkpoint.

Non-emb. params (counted)

31.21B parameters

Calculated: dense + routed backbone weights; excludes input embedding, output head, lookup tables, MTP and other modalities, allenai/Olmo-3-1125-32B@c2b61da safetensors headers; reproduces stated total (backbone) and active (with embedding and output head)

Language backbone weights excluding input embeddings, output head, lookup/Engram tables, MTP modules and vision/audio towers. Equals params.counted_total minus params.counted_embedding. Same validation as params.counted_total.

Largest layer (counted)

487.6M parameters

Calculated: max(sum of dense and routed weights sharing a full layers.<index> tensor path), all experts included, allenai/Olmo-3-1125-32B@c2b61da safetensors headers

Largest group of language-backbone weights sharing a full layers.<index> tensor path, including every routed expert. Excludes lookup/Engram tables, embeddings, output head, MTP and other modalities. Hybrid checkpoints may store mixers and FFNs as separate layers. All-gather volume also depends on wrapping, sharding and dtype.

Active non-emb. (counted)

31.21B parameters

Calculated: all weights except embedding and output head, allenai/Olmo-3-1125-32B@c2b61da safetensors headers; reproduces stated total (backbone) and active (with embedding and output head)

Active parameters per token excluding the input embedding and output head, counted from the checkpoint as all non-expert weights plus routed-expert weights × top_k / experts. Same validation as params.counted_total.

Shape

Layers

64

Source: config · /num_hidden_layers

Number of transformer blocks in the main backbone (attention or token mixer plus FFN), excluding MTP modules.

d_model

5,120

Source: config · /hidden_size

Residual stream width.

Vocab

100,278

Source: config · /vocab_size

Training script pads the embedding to a multiple of 128 (100,352 rows); the released checkpoint is trimmed to 100,278.

Embedding table rows (vocab_size in config, may include padding).

Tied embeddings

No

Source: config · /tie_word_embeddings

Input embedding and output head share weights.

Tokenizer

OLMo 2 tokenizer, derived from OpenAI cl100k

Source: paper · p.10 §3.2 Tokenizer
We process data for each stage using the same tokenizer as OLMo 2, which is derived from OpenAI

Tokenizer type and lineage as described by the publisher (e.g. byte-level BPE shared with an earlier model).

d_model / layers

80

Calculated: d_model / layers

Width-to-depth ratio, d_model divided by the number of blocks.

Attention

Token mixers

GQA, SWA

Source: paper · p.9 §3.2; Table 33 caption p.85
the 32B model uses grouped-query attention (Ainslie et al., 2023) for increased efficiency.

Token-mixing layer types in the backbone, e.g. GQA, MLA, SWA, Gated DeltaNet, Mamba-2, DSA (DeepSeek sparse attention).

Layer layout

3 SWA : 1 global (last layer global)

Inferred from the source; see the explanation below.

Source: config · config.json; /layer_types
"layer_types": [ "sliding_attention", "sliding_attention", "sliding_attention", "full_attention", "sliding_attention", "sliding_attention", "sliding_attention", "full_attention", "sliding_attention", "sliding_attention", "sliding_attention", "full_attention", "sliding_attention", "sliding_attention", "sliding_attention", "full_attention", "sliding_attention", "sliding_attention", "sliding_attention", "full_attention", "sliding_attention", "sliding_attention", "sliding_attention", "full_attention", "sliding_attention", "sliding_attention", "sliding_attention", "full_attention", "sliding_attention", "sliding_attention", "sliding_attention", "full_attention", "sliding_attention", "sliding_attention", "sliding_attention", "full_attention", "sliding_attention", "sliding_attention", "sliding_attention", "full_attention", "sliding_attention", "sliding_attention", "sliding_attention", "full_attention", "sliding_attention", "sliding_attention", "sliding_attention", "full_attention", "sliding_attention", "sliding_attention", "sliding_attention", "full_attention", "sliding_attention", "sliding_attention", "sliding_attention", "full_attention", "sliding_attention", "sliding_attention", "sliding_attention", "full_attention", "sliding_attention", "sliding_attention", "sliding_attention", "full_attention" ]

Ordered 64-layer backbone from /layer_types; auxiliary modules are excluded.

Token-mixer order, summarized as a pattern or layer positions. The fact's optional sequence lists each mixer in order; a ratio alone does not establish the order. Auxiliary prediction modules and standalone FFNs are excluded.

Global-attention layers

16

Source: config · /layer_types | count full_attention

Layers whose KV cache grows with full context (dense or sparse global attention, MLA). Excludes sliding-window and linear/recurrent layers.

SWA : global

3

Calculated: attn.local_layers / attn.global_layers

attn.local_layers divided by attn.global_layers, the sliding-window to global interleave ratio (5 for '5 SWA : 1 global').

Sliding-window layers

48

Source: config · /layer_types | count sliding_attention

Layers with a fixed attention window.

Query heads

40

Source: config · /num_attention_heads

Query heads in the global-attention layers.

KV heads

8

Source: config · /num_key_value_heads

Key/value heads in the global-attention layers. Not applicable to MLA, whose cache is a shared latent.

Heads × head dim

5,120

Calculated: heads × head_dim

attn.heads × attn.head_dim, the query projection width of global layers.

Q heads / KV head

5

Calculated: heads / kv_heads

attn.heads divided by attn.kv_heads in global layers.

QK head dim

128

Inferred from the source; see the explanation below.

Source: code · modeling_olmo3.py line 146; Olmo3Attention.__init__
self.head_dim = getattr(config, "head_dim", config.hidden_size // config.num_attention_heads)

config.json has no head_dim, so hidden_size 5120 / 40 heads = 128.

Query/key dimension per head in global-attention layers (for MLA, nope + rope dims).

Window

4.096K tokens

Source: config · /sliding_window

Sliding-window size of the local layers.

SWA KV heads

8

Source: config · /num_key_value_heads

KV heads in sliding-window layers (stated even when equal to attn.kv_heads).

SWA query heads

40

Source: config · /num_attention_heads

Olmo3Attention reads the same num_attention_heads, num_key_value_heads and head_dim for both layer types; only sliding_window and the rotary embedding differ.

Query heads in sliding-window layers (stated even when equal to attn.heads).

SWA QK head dim

128

Inferred from the source; see the explanation below.

Source: code · modeling_olmo3.py; Olmo3Attention.__init__
self.head_dim = getattr(config, "head_dim", config.hidden_size // config.num_attention_heads)

Same Olmo3Attention class for both layer types; hidden_size 5120 / 40 heads = 128.

Query/key head dimension in sliding-window layers. Value head dimensions may differ; see attn.local_v_head_dim.

Positional encoding

RoPE

Source: paper · p.85 Table 33; §3.6.4
RoPE scaling YaRN on full attn. layers

Positional scheme in global layers: RoPE, partial RoPE, NoPE, or mixed per layer type.

RoPE base

500,000

Source: config · /rope_theta

RoPE base frequency of the global layers at release.

SWA RoPE base

500,000

Source: config · /rope_theta

Sliding layers use Olmo3RotaryEmbedding(config, rope_type="default"), i.e. rope_theta without YaRN.

RoPE base frequency of the sliding-window layers (stated even when equal to attn.rope_theta).

QK norm

Yes

Source: code · modeling_olmo3.py lines 164–184; Olmo3Attention
self.q_norm = Olmo3RMSNorm(config.num_attention_heads * self.head_dim, config.rms_norm_eps)

RMSNorm over the full Q and K projections (all heads jointly), not per head; paper Table 33 lists QK-Norm.

Queries and keys are normalized per head before the dot product.

QKV bias

No

Source: config · /attention_bias

Query/key/value projections have bias terms.

Feed-forward

Activation

SwiGLU

Source: paper · p.85 Table 33
Activation SwiGLU

Config hidden_act silu; Olmo3MLP computes down_proj(act_fn(gate_proj(x)) * up_proj(x)).

FFN activation (SwiGLU, GeGLU, ...).

Dense FFN dim

27,648

Source: config · /intermediate_size

Intermediate width of the dense FFN layers that are actually executed.

FFN bias

No

Source: code · modeling_olmo3.py; Olmo3MLP.__init__
self.gate_proj = nn.Linear(self.hidden_size, self.intermediate_size, bias=False)

FFN projections have bias terms.

Dense FFN / d_model

5.4

Calculated: ffn.dim / d_model

ffn.dim divided by shape.d_model.

Multi-token prediction

MTP depth

0

Source: code · OLMo-3-1025-32B-pretrain.py; build_config
model_config = TransformerConfig.olmo3_32B(

Official pretraining config builds a plain decoder with next-token loss; OLMo-core at this commit has no MTP module.

Additional future tokens predicted during pretraining (0 when the model was trained without MTP).

Normalization and stability

Norm

RMSNorm

Source: paper · p.85 Table 33
Layer norm RMSNorm

Normalization layer type in the blocks.

Norm placement

post (on sublayer outputs, inside the residual branch)

Source: paper · p.85 Table 33
Layer norm applied to Outputs

OLMo 2-style reordered norm: residual + norm(sublayer(x)); see Olmo3DecoderLayer.

Pre-norm, post-norm, or sandwich (pre and post).

Norm epsilon

1e-06

Source: config · /rms_norm_eps

Epsilon of the block normalization layers.

Context length

Pretraining context

8.192K tokens

Source: paper · p.9 §3.2 Architecture
We train with a context window of 8192 tokens (increased from 4096 tokens for OLMo 2) during pretraining and midtraining stages.

Sequence length of the main pretraining stage.

Trained context

65.54K tokens

Source: paper · p.30 §3.6
the methodology we used to scale Olmo 3’s context window from 8,192 to 65,536 tokens.

Longest sequence length trained on after context extension.

Advertised context

65.54K tokens

Source: paper · p.5 §2.1
Olmo 3 is our first model with long-context capabilities, supporting up to 65K context after extension.

Config max_position_embeddings 65536.

Longest context the publisher says the model supports, possibly beyond trained length via RoPE scaling.

Extension method

YaRN on full-attention layers only (SWA RoPE unchanged); 8K → 65K over 100B tokens after midtraining, 34% long / 66% midtraining data, best-fit packing, intra-document masking

Source: paper · p.30 §3.6
During long-context extension, we apply YaRN (Peng et al., 2023) to full attention layers, and do not adjust positional embeddings on sliding-window attention layers

Released config rope_scaling: rope_type yarn, factor 8, original_max_position_embeddings 8192, attention_factor 1.2079441541679836, beta_fast 32, beta_slow 1.

How context was extended (stages, RoPE base change, YaRN factor).

Pretraining recipe

Pretraining tokens

5.7T tokens

Inferred from the source; see the explanation below.

Source: paper · p.85 Table 35
Total training tokens 5.5T 100B (twice) 100B

5.5T pretraining + 100B midtraining (two seeds, averaged) + 100B long-context along the released model's lineage; Table 13 lists 6.2T for 32B Stage 3.

Tokens seen in pretraining including annealing and context extension, as reported.

Optimizer

AdamW (OLMo-core SkipStepAdamW)

Source: code · OLMo-3-1025-32B-pretrain.py; build_config
optim=SkipStepAdamWConfig(

Optimizer used for the bulk of parameters.

Peak LR

0.0006

Source: code · OLMo-3-1025-32B-pretrain.py; module constants
LR = 6e-4

Paper Table 35: 6.0 × 10^-4.

Peak learning rate of the main pretraining stage.

Final LR

6.21e-05

Source: paper · p.10 Figure 4 caption
Due to the truncation, the real final learning rate is 6.210 × 10

End of stage-1 pretraining (exponent −5 is a superscript in the PDF). Midtraining and long-context stages each decay linearly from 2.071e-4 to 0 (Table 35).

Learning rate at the end of the decay.

LR schedule

2000-step warmup; cosine over one epoch (5.93T) targeting 10% of peak, truncated at 5.5T; midtraining and long-context: linear decay 2.071e-4 → 0

Source: paper · p.10 Figure 4; p.85 Table 35
The learning rate schedule is a cosine schedule over one epoch (5.93T tokens), truncated at 5.5T tokens.

Learning-rate schedule shape with phase boundaries.

Warmup

2000 steps

Source: paper · p.10 Figure 4 caption
Warm-up is 2000 steps, and the peak learning rate is 6 × 10

Long-context stage has its own 200-step warmup; midtraining none (Table 35).

Warmup length in steps or tokens.

Batch size

1,024 × 8,192 (8.39M tokens) pretraining; 512 × 8,192 (4.19M tokens) midtraining; 128 × 65,536 (8.39M tokens) long-context

Source: paper · p.85 Table 35
Batch size (# tokens) 8,388,608 4,194,304 8,388,608

Global batch size, including any batch-size ramp: sequences × sequence length (token total), or the token total alone when only that is stated.

Batch (tokens)

8.389M tokens

Source: paper · p.85 Table 35, Olmo 3 Base 32B pretraining column
Batch size (# tokens) 8,388,608 4,194,304 8,388,608

1,024 instances × 8,192 tokens; no ramp.

Global batch size in tokens during the main pretraining stage, after any ramp (sequences × sequence length when stated in sequences, marked inferred).

Weight decay

0.1

Source: code · OLMo-3-1025-32B-pretrain.py; build_config
weight_decay=0.1,

Embeddings excluded (weight_decay=0.0 override; paper Table 33: no weight decay on embeddings).

Decoupled weight decay coefficient.

Adam betas

(0.9, 0.95)

Source: code · OLMo-3-1025-32B-pretrain.py; build_config
betas=(0.9, 0.95),

(beta1, beta2) of the Adam-family optimizer or its AdamW fallback.

Grad clip

1

Source: code · OLMo-3-1025-32B-pretrain.py; build_config
max_grad_norm=1.0,

Global gradient-norm clipping threshold.

Training precision

BF16

Source: paper · p.9 §3.2 Training
using bfloat16 precision throughout.

Pretraining script sets Float8Config(enabled=False); FSDP params bf16, reductions fp32.

Matmul precision of pretraining (BF16, FP8 recipe, NVFP4 recipe) with the scaling granularity where disclosed. Never inferred from the released checkpoint dtype.

Stability measures

z-loss 1e-5; QK-norm; no weight decay on embeddings

Source: code · OLMo-3-1025-32B-pretrain.py; build_config
z_loss_multiplier=1e-5,

Paper Table 33 lists the same z-loss weight, QK-Norm and no embedding weight decay.

Interventions used during pretraining to keep it stable (QK-clip, z-loss, logit caps, spike handling), with coefficients.

Document masking

intra-document masking during long-context extension

Source: paper · p.35 §3.6.3
During long-context extension, we apply intra-document masking to ensure that each training sequence attends only to tokens originating from the same underlying document

Not stated for pretraining or midtraining.

Whether attention crosses document boundaries within a packed sequence.

Data mix

Dolma 3 Mix, 5.93T: Common Crawl 76.1%, olmOCR science PDFs 13.6%, Stack-Edu code 6.89%, FineMath 3+ 2.56%, arXiv 0.86%, Wikipedia/Wikibooks 0.04%; upsampled from a 9.31T pool

Source: paper · p.14 §3.4, Table 4
Common Crawl Web pages 8.14T 9.67B 4.51T (76.1%)

The 32B run stopped at 5.5T of this one-epoch mix.

Pretraining data composition as disclosed (domain shares, synthetic fraction, repetition).

Data cutoff

December 2024

Source: paper · p.15 §3.4.1 Text extraction
We start with 104 dumps from the CommonCrawl corpus, with a cutoff date of December 31, 2024.

olmOCR science PDFs also cut off December 2024; smaller sources earlier.

Pretraining data cutoff date.

Hardware

H100 80GB; pretraining 512 GPUs for ~9.5 days then 1024 for ~35 days; midtraining 2 × 512; long-context 1024

Source: paper · p.7 §2 runtime breakdown; p.85 Table 34
The initial pretraining phase on 5.5T tokens took about 9.5 days on 512 GPUs, followed by an additional 35 days on 1024 GPUs.

Table 34: 8× NVIDIA H100 (80GB HBM3) nodes; durations include crash resumptions.

Accelerators used for pretraining, count and duration where stated.

Accelerators

1,024 H100

Source: paper · p.7 §2 runtime breakdown
The initial pretraining phase on 5.5T tokens took about 9.5 days on 512 GPUs, followed by an additional 35 days on 1024 GPUs.

First ~9.5 days on 512 GPUs; Table 34 (p.85) gives 8× NVIDIA H100 (80GB HBM3) nodes.

Accelerator count and type for the main pretraining run, as the count with thousands separators and the chip's short name ("2,048 H800", "2,048 GH200"). A stated range or bound stays as stated ("2,048–4,096 GH200").

Parallelism

HSDP (DP-shard 64 · DP-rep 16)

Source: paper · p.85 Table 34; Olmo 3 Base 32B, Pretraining column
Olmo 3 Base 32B Pretraining Midtraining Long-context ext DP-rep 16 8 16 DP-shard 64 64 8

Parallelism layout of the main pretraining run as stated, as degree-annotated terms in the order TP, PP, VPP, EP, CP, DP ("PP16 · EP64 · ZeRO-1 DP"); a term without a stated degree has none ("FSDP").

Checkpoint averaging

midtraining: weights of two 100B runs with different data-order seeds averaged; long-context: checkpoints at steps 10,000, 11,000, 11,921 averaged

Source: paper · p.35 §3.6.3 Model souping; p.85 Table 35
we merge the last three checkpoints from the end of the extension run (at steps 10,000, 11,000, and 11,921) to produce our final long-context Olmo 3 Base 32B.

EMA or checkpoint merging applied to produce the released base weights.

Stages
  • pretraining

    Tokens
    5500000000000
    Seq len
    8192
    Lr
    0.0006
    Batch tokens
    8388608
    Source: paper · p.3 §2; p.30–35 §3.5–3.6; p.85 Table 35
    The initial pretraining phase on 5.5T tokens took about 9.5 days on 512 GPUs, followed by an additional 35 days on 1024 GPUs.

    Dolma 3 Mix; cosine to 5.93T truncated at 5.5T.

  • midtraining

    Tokens
    100000000000
    Seq len
    8192
    Lr
    0.0002071
    Batch tokens
    4194304
    Source: paper · p.3 §2; p.30–35 §3.5–3.6; p.85 Table 35
    Midtraining consisted of two parallel runs on 512 GPUs each, covering 100B tokens per run

    Dolma 3 Dolmino Mix; no warmup, linear decay to 0; two runs with different data-order seeds, weights averaged.

  • long-context

    Tokens
    100000000000
    Seq len
    65536
    Lr
    0.0002071
    Batch tokens
    8388608
    Steps
    11921
    Source: paper · p.3 §2; p.30–35 §3.5–3.6; p.85 Table 35
    Long-context extension was executed as a single run on 1024 GPUs

    Dolma 3 Longmino Mix; 200-step warmup, linear decay to 0; final model averages checkpoints at steps 10,000, 11,000, 11,921.

Source: paper · p.3 §2; p.30–35 §3.5–3.6; p.85 Table 35

Ordered pretraining stages. Each item: name, tokens, seq_len, lr, batch_tokens, batch_sequences, steps, note, quote, and source when it differs from the fact's source.

Scaling & HP transfer

Scaling ladder

Data ablations up to 1B params at 100B tokens; mix swarms of 30M models at 3B tokens (5× Chinchilla)

Source: paper · p.11 §3.3; p.18 §3.4 swarm construction
up to our largest experiment scale of 1B parameters at 100B tokens

Smaller models trained to choose the architecture or recipe (sizes, token budgets), as disclosed.

Tokens / param

178.125

Calculated: train.tokens / params.total

train.tokens divided by params.total.

Tokens / active param (non-embedding)

182.653

Calculated: train.tokens / params.counted_active_non_embedding

train.tokens divided by params.counted_active_non_embedding, or by the stated params.active_non_embedding when there is no validated checkpoint count.

AdamW timescale τ

0.0245281

Calculated: train.batch_tokens / (train.lr_peak × train.weight_decay × train.tokens)

B / (η λ D) with B = train.batch_tokens, η = train.lr_peak, λ = train.weight_decay and D = train.tokens: the AdamW EMA timescale as a fraction of training (Bergsma et al. 2025, Power Lines, arXiv 2505.13738). Computed only when the optimizer is AdamW; uses the peak LR.

KV cache

KV bytes / token

71,680 bytes

Calculated: kv.bytes_at_context / 131072 tokens; uniform BF16, payload only; quantization overhead excluded. Global KV: 16 × (2048 × 16/8) B/entry; SWA KV: 48 × (2048 × 16/8) B/entry

Retained KV cache divided by context length, including bounded SWA caches and indexer keys. Exports use uniform BF16 at 131,072 tokens. The website can select uniform payload precision (no quantization overhead) or sourced component formats (including scales and documented padding). This is cache payload, not peak prefill memory or persistent prefix storage.

Global KV bytes / token

65,536 bytes

Calculated: 65536 B / 1 tokens (Global KV); uniform BF16, payload only; quantization overhead excluded. Global KV: 16 × (2048 × 16/8) B/entry; SWA KV: 48 × (2048 × 16/8) B/entry

Long-context global KV bytes per token, including indexer keys; excludes bounded SWA caches. Compression rates and cross-layer cache reuse are included. Exports use uniform BF16; the website's storage selector also applies here. This is the field to compare with global-KV figures in reports, using the matching storage recipe.

KV bytes / token / B active

2,240 bytes

Calculated: kv.bytes_per_token (131072 tokens) / (params.active / 1e9); uniform BF16, payload only; quantization overhead excluded. Global KV: 16 × (2048 × 16/8) B/entry; SWA KV: 48 × (2048 × 16/8) B/entry

kv.bytes_per_token divided by active parameters in billions (131,072 tokens in exports).

KV at context / B active

293,601,280 bytes

Calculated: kv.bytes_at_context (131072 tokens) / (params.active / 1e9); uniform BF16, payload only; quantization overhead excluded. Global KV: 16 × (2048 × 16/8) B/entry; SWA KV: 48 × (2048 × 16/8) B/entry

kv.bytes_at_context divided by active parameters in billions (131,072 tokens in exports).

KV at context

9,395,240,960 bytes

Calculated: 65536 B × 131072 (Global KV) + 196608 B × min(131072, 4096) (SWA KV); uniform BF16, payload only; quantization overhead excluded. Global KV: 16 × (2048 × 16/8) B/entry; SWA KV: 48 × (2048 × 16/8) B/entry

Retained KV cache for one sequence at the selected context, including SWA windows and indexer keys. Exports use uniform BF16 at 131,072 tokens. Excludes recurrent state, compressor tail state, draft/MTP caches, temporary prefill tensors, allocator metadata and persistent prefix snapshots. Does not estimate peak prefill or total serving memory.

Evaluations

AA Intelligence Index

6

Source: leaderboard · Artificial Analysis model page /models/olmo-3-32b-think, Wayback snapshot 2026-10-19
Olmo 3 32B Think scores 6 on the Artificial Analysis Intelligence Index

Score of Olmo-3-32B-Think, post-trained from this base. Variant: Olmo 3 32B Think. Index v4.3.2.

Artificial Analysis Intelligence Index v4.3.2 of the post-trained model, from a dated Wayback snapshot of its Artificial Analysis page. The note names the variant (reasoning setting).

All models · Link to this model