Known-issues sheets for local language models Rev 0.1.0 · reviewed every 7 days

Model datasheet · gpt-oss

gpt-oss-120b

The big sibling of gpt-oss-20b, and the same bargain at four times the size: shipped natively in MXFP4, so there is no quant ladder to choose from — one 63GB file is the model. Reasoning and tool use are excellent; world knowledge is not. It was built to look things up.

Vendor
OpenAI
Architecture
MoE · 117B total / ~5.1B active
Context
131,072 tokens
License
Apache-2.0
Released
2025-08-05
Vision
No

→ GGUF (llama.cpp / LM Studio / Ollama) → MLX (Apple Silicon)

Architecture, from its own config.json

36 layers · 18 sliding window · 18 full attention

64 attention heads over 8 KV heads (GQA 8:1), head dim 64 · mixture of experts, 5.1B of 117B active per token across 4 experts · vocabulary 201,088

Where the memory goes: weights by band above, plus a KV cache of 315MB at 8K · 1.2GB at 32K · 4.5GB at 128K, plus the runtime's own working memory — dominated by the output projection over that vocabulary.

Inside one layer, from its own tensors

36 × layer

18 sliding-window layers, 18 full-attention layers — the same block either way. What differs is how far back the mask lets attention look, not what the layer is built from.

input_layernormattentionq_projkvsoftmax(q·kᵀ/√d) · v64 query heads over 8 key/valueheadso_projpost_attention_layernormmixture of expertsrouter picks 4 of 128 expertseach 2,880 wide: gate·up → down

The green line down the right of each half is the residual: it leaves the spine above the norm, skips the operation entirely and rejoins at the +. Where attention is drawn open, q, k and v are scaled to their real output widths — a model that shares key and value heads across many query heads shows one wide box beside two narrow ones.

Around the stack: an embedding of 201,088 × 2,880, a final norm, and a separate output projection.

On the norm names: despite what it is called, post_attention_layernorm is drawn after the residual add here, which is where this family applies it — it normalises the input to the feed-forward, not the output of attention. Models that carry a separate pre_feedforward_layernorm use it the other way, and are drawn that way.

Also in every block and not drawn, because their tensor names do not fix where they belong: sinks. Guessing an order is the one thing this diagram will not do.

§1 Characteristics by quantization band

Q4–Q5 — 4–5 bit

63.4GB weights · e.g. mxfp4 + KV: 315MB at 8K · 1.2GB at 32K · 4.5GB at 128K
Math & reasoning 9/10
data checked Aug 2026
Coding 7/10
data checked Aug 2026
  • vendor-model-card — SWE-bench Verified = 62.4 @ mxfp4 · vendor-reported · 2026-08-31

    Codeforces Elo 2463, Aider Polyglot 44.4. Only 1.7 points above the 20b despite 5.6x the parameters; the Aider figure is the more sober read of everyday editing.

Tool calling / agentic 8/10
data checked Aug 2026
  • vendor-model-card — Tau-Bench Retail = 67.8 @ mxfp4 · vendor-reported · 2026-08-31

    Against the 20b's 54.8. Tool use is the family's organizing principle — browsing, python and functions are first-class in the harmony format.

Factuality 3/10
data checked Aug 2026
  • vendor-model-card — SimpleQA = 16.8 @ mxfp4 · vendor-reported · 2026-08-31

    PersonQA hallucination rate 49.1% — OpenAI's own number. Better than the 20b's 6.7 / 53.2% and still poor in absolute terms. HealthBench 57.6.

Creative writing 3/10
data checked Oct 2026
  • eqbench-creative — EQ-Bench Creative Writing v3 rubric score (0-20) = 10.74 @ mxfp4 · aggregated · 2026-10-04

    Normalised Elo 961.0, 118th of 140, retrieved 2026-10-04. Below every Gemma 3 size (13.91-15.33) and GLM-4.7-Flash (13.68). OpenAI ships these weights natively in MXFP4, so the measurement anchors this band directly. Independent; rubric judged by Claude Sonnet 4. EQ-Bench's normalised Elo moves as models are added, so the rubric score is the figure stored. Data file behind https://eqbench.com/creative_writing.html; the date the row was added is not published.

  • eqbench-creative — EQ-Bench Creative Writing Longform score (0-100) = 35.8 @ mxfp4 · aggregated · 2026-10-04

    Longform: below all three Gemma 3 sizes except the 4B (34.4). Data file behind the Longform page on eqbench.com.

§2 Known issues & what fixes them

ISSUE-01 severe Q4–Q5 · factuality

Hallucinates confidently on world knowledge. SimpleQA 16.8 and a 49.1% PersonQA hallucination rate are OpenAI's own published figures — better than the 20b's, and still bad enough that this model should not be trusted as a source of facts. It is built to reason and call tools, not to remember.

Fix
RAG (retrieval) [strong]

Give it documents to read. Retrieval turns the weakness into a non-issue for document work.

Fix
MCP / external tools [strong]

Wire up search. The model is explicitly designed to look things up rather than recall them.

Evidence · 2 sources · community-consensus
ISSUE-02 mild Q4–Q5 · coding, math

There is no quant choice to make: the MoE weights were post-trained in MXFP4, so the 63GB native file is the model rather than a compression of it. Convenient — no band to agonise over — but the usual escape hatch is missing. If 63GB does not fit, there is no smaller official build, and requantizing an already-4-bit model is not the same operation as quantizing from bf16.

No fix
No known fix — choose a different model

Use gpt-oss-20b instead if 63GB is out of reach; same architecture, 12GB.

Evidence · 2 sources · community-consensus