Docs
What your Mac can run
How Bedrova's fit-check decides what loads, the unified-memory budget, and the models each RAM tier handles.
The model you can run is set by your Mac’s unified memory, not its model year. This page explains how Bedrova decides what fits, so the recommendations make sense before you download anything. The live, interactive version is on the compatibility page.
The budget
Apple Silicon shares one pool of memory between CPU and GPU. Bedrova treats it as a single budget and keeps headroom for macOS, the app, and anything else you have open. As a rule of thumb it counts about 75% of unified memory as usable for models, and warns once a load would push past that.
A model’s cost is more than its file size: weights, plus KV cache that grows with context length, plus working set during generation. Search workers, Core ML perception packages, and GGUF contexts also reserve memory while active. The fit-check estimates the peak, not the download size.
The three outcomes
Before every load and download, the fit-check returns one of:
- Fits — comfortably within the usable budget. Load it.
- Tight — it loads, but leaves little room for a second model or a long context. Expect pressure if you also run, say, an embedding model for RAG.
- Too big — it would exceed memory. Bedrova refuses rather than crashing, and suggests a smaller quant or a lighter model.
That last point is the whole design: Bedrova would rather decline a load than take the app down. See Memory & loading for guardrail modes if you want to override the warning on purpose.
Roughly what each tier runs
Estimated peak unified memory for common picks. Your numbers shift with context length and what else is loaded.
| Model | Type | Peak (approx.) | Recommended RAM |
|---|---|---|---|
| Qwen3.5 7B (4-bit) | Chat | ~7 GB | 16 GB |
| Llama 3.x 8B (4-bit) | Chat | ~8 GB | 16 GB |
| Gemma 3 12B (4-bit) | Chat | ~11 GB | 24 GB |
| Qwen3.5 32B (4-bit) | Chat | ~22 GB | 48 GB |
| Llama 70B (4-bit) | Chat | ~42 GB | 64 GB |
| DeepSeek V4 Flash (Q4) | Frontier | ~92 GB | 128 GB |
| DeepSeek V4 Flash (Q9) | Frontier | ~167 GB | 256 GB |
| Nomic Embed | Embeddings | ~1 GB | 8 GB |
| Small image-search worker | Search | varies by index | 16 GB |
| Core ML classifier | Perception | usually small | 8 GB |
| 7B GGUF text model (4-bit) | Text · GGUF | ~5-8 GB | 16 GB |
| Whisper large v3 | Voice · STT | ~3 GB | 8 GB |
| FLUX.1 schnell | Image | ~12 GB | 24 GB |
| Qwen2.5-VL 7B | Vision | ~8 GB | 16 GB |
These figures track the catalog behind the compatibility page; both are generated from the same model data so they stay in sync.
Running several at once
Parallel execution shares the one budget. If you pin a chat model and also run embeddings for document chat, rebuild a visual search index, or keep a perception model warm, all of those counts come out of the same pool. The memory monitor shows the combined total live, and the fit-check accounts for what’s already loaded before approving the next model. Quants exist for exactly this trade-off — a 4-bit model leaves room a higher-precision one wouldn’t.
See also
- Concepts — where the budget idea comes from.
- Memory & loading — JIT, TTL, eviction, and guardrail modes.
- Models & downloads — picking a quant when you download.