How to Run Local AI Models on Your Mac (Ollama, MLX, Dottie)
Running local AI models on your Mac means prompts and files never leave the machine. No API key required for the open-weight path, no subscription for inference, no cloud log of your documents. Apple Silicon (M1 and newer) with unified memory is what made this practical for everyday work.
This guide covers three layers: Ollama (easiest runner), MLX (Apple-optimized), and Dottie (local models plus native Mac automation). Chat-only runners answer; an agent can act.
TL;DR
| Layer | Best for | Friction |
|---|---|---|
| Ollama | First local chat, CLI, OpenAI-compatible API | One install |
| MLX | Max speed / model variety on Apple Silicon | Python tooling |
| Dottie | Local model + files, apps, voice, 134 tools | App + model pick |
Why run AI locally on Mac
- Privacy — prompts, PDFs, and folder names stay on disk
- Offline — planes, locked-down networks, no outage from a provider
- Cost — open weights: zero per-token fees
- No rate limits — bound by RAM and thermals, not a plan
- Latency — no round trip for small jobs
Tradeoff: local models are smaller than frontier cloud models. For everyday draft, summarize, code assist, and tool routing they are often enough. For hard multi-file reasoning, keep a cloud path.
Option 1: Ollama (easiest)
Ollama is the simplest way to run local models on Mac. Official docs prefer the Mac app: mount Ollama.dmg, drag to Applications. Requires macOS 14 Sonoma or newer. Apple Silicon gets GPU; Intel is CPU only. Homebrew still works if you want CLI-only.
Install
Preferred:
- Download Ollama for Mac
- Drag
Ollama.appto Applications - Launch it. It will offer to put
ollamaon your PATH (/usr/local/bin)
CLI fallback:
brew install ollama
Run a model
ollama run gemma4
gemma4 is a current small default in the Ollama library. A 3B-class alternative is ollama run llama3.2. First run downloads weights; later starts are near-instant. The app also chats. Ollama serves an OpenAI-compatible API at http://localhost:11434.
Popular sizes for Apple Silicon
| Model class | Approx size | Good for | RAM comfort |
|---|---|---|---|
| 3B-class | ~2 GB | Quick drafts, light tools | 8 GB |
| 7B–8B-class | ~4–5 GB | Daily chat + code | 16 GB |
| 70B-class (quantized) | tens of GB | Near-cloud quality | 64 GB+ |
Rule of thumb: plan on roughly 2× the on-disk model size free in unified memory. Prefer 4-bit quantizations unless you have headroom.
Useful commands
ollama list
ollama pull mistral
ollama serve
Option 2: MLX (Apple-optimized)
MLX is Apple’s array framework for Apple Silicon. Models built for MLX often use Metal and unified memory more efficiently than generic runners.
Install
pip install mlx-lm
Generate
mlx_lm.generate --model mlx-community/Llama-3.2-3B-Instruct-4bit --prompt "Summarize this email:"
Thousands of converted weights live under mlx-community on Hugging Face (3,800+ listed models in that org’s catalog).
Ollama vs MLX
| Ollama | MLX | |
|---|---|---|
| Setup | One binary / brew | Python environment |
| Speed on Apple Silicon | Good | Often better (Metal path) |
| Model library | Official catalog + pulls | Hugging Face mlx-community |
| API server | Built-in | DIY or community servers |
| Best for | Beginners, scripting, app integrations | Performance and specific weights |
Start with Ollama. Move to MLX when you need a specific weight or every millisecond on an M-series chip. Runtime product comparison (GUIs included): Ollama vs LM Studio.
Option 3: Dottie (local models + Mac automation)
Chat runners stop at text. Dottie uses a local (or cloud) model to drive macOS through 134 tools: files, apps, Terminal, Mail, calendar, OCR, clipboard, and more.
Setup
- Download from the landing page (demo + requirements)
- Install Ollama if you want the open-weight path (
brew install ollama) - Open Dottie → Settings → pick a local model
- Grant only the permissions you need (off by default)
- Talk or type — the model selects tools
What local + tools unlocks
- “Summarize the PDF on my Desktop” — read on disk, no upload
- “Find screenshots older than 30 days and trash them” — Finder actions
- “What’s on my screen?” — local OCR
- “Draft a reply to this email” — Mail context stays local on the local path
Which local size to start with
| Mac | Start here | Why |
|---|---|---|
| M1/M2, 8 GB | 3B-class | Fits with browser open |
| M1/M2 Pro, 16 GB | 7B–8B-class | Balance of speed and quality |
| 32 GB+ | Larger quants | Room for bigger context + apps |
| M3/M4 | 7B–8B first | Fast; scale up if RAM allows |
Three model paths in one app
| Path | When | Notes |
|---|---|---|
| Local (MLX / Ollama) | Privacy, offline, free inference | Default for sensitive folders |
| BYOK | You already pay a cloud provider | Your key; switch mid-session |
| Dottie Pro ($20/mo) | Want managed cloud without keys | Same email as desktop register |
Product overview: What is Dottie Desktop. Agent vs chat framing: AI agent for Mac.
Performance tips on Apple Silicon
- Close RAM hogs before big models (Chrome/Safari tab farms, Docker, Xcode).
- Prefer 4-bit / 8-bit quants unless quality forces larger.
- Watch Activity Monitor → Memory. Heavy swap means the model is too big.
- Keep Ollama warm so you skip cold-start delays.
- Thermals matter on thin laptops; large models throttle under sustained load.
Cloud vs local: when to use each
| Use case | Local | Cloud |
|---|---|---|
| Client / health / legal docs | Prefer | Avoid if possible |
| Quick drafts and edits | Yes | Yes |
| Hard multi-step reasoning | Limited | Stronger |
| Code assist (small/medium) | Yes (7B+) | Yes |
| Offline / travel | Yes | No |
| Cost control | Free weights | Metered |
Best default for many Mac power users: local for private everyday work, cloud for the hard 10%. Dottie is built so that switch is a setting, not a second product.
Related posts
- Ollama vs LM Studio
- What is Dottie Desktop
- Best AI assistants for Mac
- Siri alternative: Siri vs Dottie
- Keyboard Maestro alternatives
Frequently Asked Questions
What is the minimum Mac for running local AI models?
An Apple Silicon Mac (M1 or newer) with 8 GB RAM can run small 3B-class models. For comfortable 7B–8B use, plan on 16 GB. Large 70B-class quants need 64 GB-class machines. Intel Macs can run some tools but are much slower without unified memory and are not supported by Dottie (Apple Silicon + macOS 15.4+).
Which is better on Mac: Ollama or LM Studio?
Ollama is better for the login daemon, scripting, and an OpenAI-compatible API. It now ships a Mac menubar app too (macOS 14+, MLX default on Apple Silicon). LM Studio is better if you want a studio GUI and a HuggingFace model browser. Throughput on the same GGUF file is usually a tie. Full comparison: Ollama vs LM Studio on Mac.
How much RAM do I need for local AI models?
Rough rule: about 2× the model file size free in unified memory. A ~4 GB model wants ~8 GB free. Quantized 4-bit models use far less than full precision with modest quality loss. Leave headroom for macOS and your apps.
Can I run Llama on an M1 MacBook?
Yes. 8 GB M1 machines run 3B-class models smoothly. 16 GB M1/M1 Pro machines handle 7B–8B-class models well. Very large models need Max/Ultra-class RAM.
Do local models work fully offline?
After weights are downloaded, yes: chat and many tool loops need no network. First pull of a model requires internet. Cloud models (BYOK or Pro) need a connection by definition.
How do I use a local model with Mac automation?
Install Ollama (or MLX), download Dottie, select the local model in Settings, and grant only the tools you need. The model plans; the tools act on files, apps, and system APIs. Chat-only apps will not move files for you.
Is local AI on Mac private enough for work files?
On a pure local path, prompts and file contents are not sent to a vendor. You still need ordinary device security (FileVault, updates, who has login access). If you switch to a cloud model, that traffic is governed by the provider terms you chose.