Yes — with 89.9 GB to spare
Ornith 1.5 9B at Q4_K_M fits your M3 Max · 128 GB entirely in unified memory at 8K context, at an estimated 42 tokens per second. There is room for its full 256K window.
Fully in unified memory
8K context
Q4_K_M · 5.3 GB
MIT
Released 19 Aug 2026
New this week
The small Ornith: a coding-agent reasoning build on the Qwen3.5 9B architecture. Same VRAM as its base, thinks before every answer.
The VRAM budget
weights 5.3 GB
Weights 5.3 GB
KV cache @ 8K 0.25 GB
Runtime overhead 0.6 GB
Free 89.9 GB of 96.0 GB
Quantisation ladder
| Quant | Weights | Total @ 8K | Max context | Tok/s | Quality | Fit |
|---|---|---|---|---|---|---|
| F16 | 17.5 GB | 18.4 GB | 256K | 13 | Reference | Long context |
| Q8_0 | 9.3 GB | 10.2 GB | 256K | 24 | −0.1% ppl | Long context |
| Q6_K | 7.2 GB | 8.0 GB | 256K | 31 | −0.4% ppl | Long context |
| Q5_K_M | 6.2 GB | 7.1 GB | 256K | 36 | −0.8% ppl | Long context |
| Q4_K_M | 5.3 GB | 6.1 GB | 256K | 42 | −1.9% ppl | Recommended |
| Q3_K_M | 4.3 GB | 5.1 GB | 256K | 52 | −5.4% ppl | Long context |
| Q2_K | 3.7 GB | 4.5 GB | 256K | 61 | −15% ppl | Long context |
Quality is the published perplexity delta against f16 weights. Max context assumes an f16 KV cache; q8_0 roughly doubles it. Only 8 of its 32 blocks keep a per-token KV cache; the rest are linear-attention, Mamba or convolution blocks with a fixed-size state.
How to run it
$ pip install mlx-lm $ mlx_lm.generate --model mlx-community/Ornith-1.5-9B-4bit \ --max-tokens 512 --prompt "Hello"
Apple's own array framework. The fastest path on Apple Silicon. More on MLX.
01Download is 5.3 GB. Keep it on an SSD — a first load off a spinning disk takes minutes.
02macOS caps what the GPU may wire down at about 96.0 GB of 128 GB. Raising it with iogpu.wired_limit_mb is possible, and risky.
03There is room to go to the model's full 256K context on this card.