Model pages · rapid-mlx 0.16.0

gpt-oss-20b

Run GPT-OSS 20B on a Mac

OpenAI's open-weight reasoner, native to the Harmony dual-channel format — rapid-mlx separates its analysis channel from the final answer automatically, with grammar-constrained tool calling on by default. Strong reasoning for its footprint.

MoE · 20 B total · MXFP4-Q8 · reasoningreasoning · OpenAI-style outputs · 16–32 GB Macs

OpenAI 128K context Base model intelligence 15.2 AA

Measured decode
77.2tok/s
on Mac mini M4 Pro · 48 GB · rapid-mlx 0.15.4 · 2026-10-02
Weights
10 GB
Peak memory · Metal
15.7 GB

One command

rapid-mlx serve gpt-oss-20b

Weights (10 GB) download on first run; you get an OpenAI-compatible endpoint at http://localhost:8000/v1. No rapid-mlx yet? It's one line — curl -fsSL https://rapidmlx.com/install.sh | bash — or take the desktop app.

Point a client at it. OpenAI SDK: base_url="http://localhost:8000/v1", model="gpt-oss-20b". Claude Code: ANTHROPIC_BASE_URL=http://localhost:8000 (no /v1 suffix) — see the Claude Code guide.

Measured on real hardware

Headline machine · Mac mini M4 Pro · 48 GB

Decode
77.2tok/s
First token · 2K prompt
2.8 s
Peak memory · Metal
15.7 GB
Weights on disk
10 GB

All measured machines

MachineDecodeFirst tokenPeak memoryCold bootWeights
Mac mini M4 Pro · 48 GB rapid-mlx 0.15.4 · 2026-10-02 raw data77.2 tok/s2.8 s15.7 GB—10 GB

Each row cites its own run; numbers are never copied across machines. Mac mini M4 Pro · 48 GB: rapid-mlx 0.15.4, 2026-10-02 — raw data + method — 4 concurrent streams: 126.7 tok/s aggregate.

Community runs, one page per Mac: Apple M2 Pro · Apple M5 Max.

On the March 2026 M3 Ultra capability benchmark it scored 80% on tool calling. Full benchmark →

Will it fit your Mac?

Peak memory · Metal
15.7 GB
Weights on disk
10 GB

Measured 15.7 GB Metal peak (6.0 GB process RSS) on a 48 GB M4 Pro across the whole benchmark run — up to a ~16K-token prompt and four concurrent streams, including the engine's prefix cache, which defaults to 20% of RAM. A short chat needs less; long contexts grow the KV cache, so leave headroom.

Agents: In our end-to-end agent tests it reasons well but couldn't reliably drive Codex CLI's apply_patch edit format — for Codex, serve Qwen3.6 35B instead.

For the conservative install-default placement see the hardware tiers table; to compare against every model your RAM can hold, use the live picker.

Variants & profiles

  • gpt-oss-20b-mxfp4-q4 — The Q4 variant — smaller, slightly lossier
  • gpt-oss-120b — GPT-OSS 120B — the big sibling for 96 GB+ Macs

FAQ

How much memory does GPT-OSS 20B need on a Mac?

Measured 15.7 GB Metal peak (6.0 GB process RSS) on a 48 GB M4 Pro across the whole benchmark run — up to a ~16K-token prompt and four concurrent streams, including the engine's prefix cache, which defaults to 20% of RAM. A short chat needs less; long contexts grow the KV cache, so leave headroom.

How fast is GPT-OSS 20B on Apple Silicon?

We measured 77.2 tok/s on a Mac mini M4 Pro · 48 GB, rapid-mlx 0.15.4, 2026-10-02; peak memory 15.7 GB on that run. Every row on this page keeps its own chip, version and date — no number is copied across machines.

How do I run GPT-OSS 20B locally?

rapid-mlx serve gpt-oss-20b — the weights download on first run and you get an OpenAI-compatible endpoint at localhost:8000/v1 for Aider, Codex and any OpenAI client, plus the Anthropic API at localhost:8000 for Claude Code.

Where next