Model pages · rapid-mlx 0.12.11

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 · reasoning  reasoning · OpenAI-style outputs · 16–32 GB Macs

One command

$ rapid-mlx serve gpt-oss-20b

Weights (11.3 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.

Measured on real hardware

MachineDecodeFirst tokenPeak memoryCold bootWeights
Mac mini M2 Pro · 32 GB47.9 tok/s0.57 s9.4 GB9.5 s11.3 GB
Mac Studio M3 Ultra · 256 GB 124 tok/s12.1 GB

Measured on rapid-mlx 0.12.10, 2026-08-11. Decode: median of 3 runs, temperature 0, 256-token saturating generation, engine-reported token counts, unique salt per request (no prefix-cache hits). TTFT: median of 3, short prompt. Boot: process spawn to first completed token. Peak RSS: 0.5 s sampling across the run. M3 Ultra row: from our 17-model benchmark post (same alias and quant).

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

Will it fit your Mac?

Peak resident memory measured 9.4 GB during a 256-token generation. The KV cache grows with context length, so treat that as a floor, not a ceiling. For the conservative install-default placement see the hardware tiers table; to compare against every model your RAM can hold, use the live picker.

In this 256-token run, peak resident memory came in below the on-disk weight size — with mixture-of-experts weights the runtime doesn't have to touch every expert right away. Don't budget by that number: for sustained use, follow our memory guide and plan for the full weight size plus context headroom. The measured RSS here is a floor, not a plan.

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.

Variants & alternatives

FAQ

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

Measured peak resident memory was 9.4 GB on rapid-mlx 0.12.10 during a 256-token generation (M2 Pro, 32 GB). The weights are 11.3 GB on disk. Longer contexts grow the KV cache beyond this, so leave headroom.

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

We measured 47.9 tokens/sec sustained decode and 0.57 s time-to-first-token on a Mac mini M2 Pro (32 GB), median of 3 runs at temperature 0, and 124 tokens/sec on an M3 Ultra in our published 17-model benchmark.

How do I run GPT-OSS 20B locally?

Install rapid-mlx (curl -fsSL https://rapidmlx.com/install.sh | bash, or brew install rapid-mlx), then: rapid-mlx serve gpt-oss-20b — the weights download on first run and you get an OpenAI-compatible endpoint at localhost:8000/v1 that works with Cursor, Claude Code, Aider, and any OpenAI client.

Where next