Best local LLMs for the Apple M2 (16 GB)

Each list assumes the context that task needs, so a model that fits for chat may rank lower for long documents.

General chat at 8K context

  1. 76Great quality (A) · 76 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 87/100 (quality, fit, speed and memory use) sets the ranking. K2 Horizon 7B Q4_K_M · 11.7 tok/s · Runs well
  2. 59Good quality (B) · 59 of 100: how capable the model is at Q6_K, whatever it runs on. Match score 86/100 (quality, fit, speed and memory use) sets the ranking. Ling 3.0 Tiny (8B-A1.3B) Q6_K · 46.9 tok/s · Runs great
  3. 74Great quality (A) · 74 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 86/100 (quality, fit, speed and memory use) sets the ranking. SenseNova Loop 9B Preview Q4_K_M · 10.9 tok/s · Runs well
  4. 73Great quality (A) · 73 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 85/100 (quality, fit, speed and memory use) sets the ranking. Ornith 1.5 9B Q4_K_M · 11.0 tok/s · Runs well
  5. 66Good quality (B) · 66 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 85/100 (quality, fit, speed and memory use) sets the ranking. Nemotron 3.5 Bolt E4B Q4_K_M · 23.5 tok/s · Runs well

Coding at 32K context

  1. 66Good quality (B) · 66 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 88/100 (quality, fit, speed and memory use) sets the ranking. Mellum2.1 Thinking (12B-A2.5B) Q4_K_M · 37.0 tok/s · Runs well (tight fit)
  2. 74Great quality (A) · 74 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 86/100 (quality, fit, speed and memory use) sets the ranking. MiMo V2.6 Distill Qwen 9B Q4_K_M · 11.2 tok/s · Runs well
  3. 74Great quality (A) · 74 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 85/100 (quality, fit, speed and memory use) sets the ranking. SenseNova Loop 9B Preview Q4_K_M · 10.9 tok/s · Runs well (tight fit)
  4. 64Good quality (B) · 64 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 85/100 (quality, fit, speed and memory use) sets the ranking. Nanbeige4.2 3B Q4_K_M · 25.3 tok/s · Runs well (tight fit)
  5. 64Good quality (B) · 64 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 83/100 (quality, fit, speed and memory use) sets the ranking. Nemotron Labs Dory 1.0 4B Q4_K_M · 26.6 tok/s · Runs well

Reasoning at 32K context

  1. 66Good quality (B) · 66 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 88/100 (quality, fit, speed and memory use) sets the ranking. Mellum2.1 Thinking (12B-A2.5B) Q4_K_M · 37.0 tok/s · Runs well (tight fit)
  2. 74Great quality (A) · 74 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 86/100 (quality, fit, speed and memory use) sets the ranking. MiMo V2.6 Distill Qwen 9B Q4_K_M · 11.2 tok/s · Runs well
  3. 72Great quality (A) · 72 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 85/100 (quality, fit, speed and memory use) sets the ranking. Qwen3.5 9B Q4_K_M · 11.0 tok/s · Runs well
  4. 74Great quality (A) · 74 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 85/100 (quality, fit, speed and memory use) sets the ranking. SenseNova Loop 9B Preview Q4_K_M · 10.9 tok/s · Runs well (tight fit)
  5. 64Good quality (B) · 64 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 85/100 (quality, fit, speed and memory use) sets the ranking. Nanbeige4.2 3B Q4_K_M · 25.3 tok/s · Runs well (tight fit)

Documents (RAG) at 32K context

  1. 66Good quality (B) · 66 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 86/100 (quality, fit, speed and memory use) sets the ranking. Nemotron 3.5 Bolt E4B Q4_K_M · 23.5 tok/s · Runs well
  2. 73Great quality (A) · 73 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 85/100 (quality, fit, speed and memory use) sets the ranking. Ornith 1.5 9B Q4_K_M · 11.0 tok/s · Runs well
  3. 64Good quality (B) · 64 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 85/100 (quality, fit, speed and memory use) sets the ranking. Gemma 4 E4B Q4_K_M · 23.5 tok/s · Runs well
  4. 72Great quality (A) · 72 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 85/100 (quality, fit, speed and memory use) sets the ranking. Qwen3.5 9B Q4_K_M · 11.0 tok/s · Runs well
  5. 74Great quality (A) · 74 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 85/100 (quality, fit, speed and memory use) sets the ranking. SenseNova Loop 9B Preview Q4_K_M · 10.9 tok/s · Runs well (tight fit)

Agents & tools at 64K context

  1. 66Good quality (B) · 66 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 88/100 (quality, fit, speed and memory use) sets the ranking. Mellum2.1 Thinking (12B-A2.5B) Q4_K_M · 37.0 tok/s · Runs well (tight fit)
  2. 66Good quality (B) · 66 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 86/100 (quality, fit, speed and memory use) sets the ranking. Nemotron 3.5 Bolt E4B Q4_K_M · 23.5 tok/s · Runs well
  3. 74Great quality (A) · 74 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 85/100 (quality, fit, speed and memory use) sets the ranking. MiMo V2.6 Distill Qwen 9B Q4_K_M · 11.2 tok/s · Runs well (tight fit)
  4. 62Good quality (B) · 62 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 83/100 (quality, fit, speed and memory use) sets the ranking. Spark-X2.6 4B Q4_K_M · 25.7 tok/s · Runs well
  5. 57Good quality (B) · 57 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 83/100 (quality, fit, speed and memory use) sets the ranking. MiniCPM5 2B Q4_K_M · 41.9 tok/s · Runs great

Reverse engineering at 32K context

  1. 66Good quality (B) · 66 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 83/100 (quality, fit, speed and memory use) sets the ranking. Mellum2.1 Thinking (12B-A2.5B) Q4_K_M · 37.0 tok/s · Runs well (tight fit)
  2. 59Good quality (B) · 59 of 100: how capable the model is at Q6_K, whatever it runs on. Match score 81/100 (quality, fit, speed and memory use) sets the ranking. Ling 3.0 Tiny (8B-A1.3B) Q6_K · 46.9 tok/s · Runs great
  3. 74Great quality (A) · 74 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 81/100 (quality, fit, speed and memory use) sets the ranking. MiMo V2.6 Distill Qwen 9B Q4_K_M · 11.2 tok/s · Runs well
  4. 66Good quality (B) · 66 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 81/100 (quality, fit, speed and memory use) sets the ranking. Nemotron 3.5 Bolt E4B Q4_K_M · 23.5 tok/s · Runs well
  5. 73Great quality (A) · 73 of 100: how capable the model is at Q4_K_M, whatever it runs on. Match score 80/100 (quality, fit, speed and memory use) sets the ranking. Ornith 1.5 9B Q4_K_M · 11.0 tok/s · Runs well

Estimates come from published hardware specs and our open formulas, not from running the model on your machine. Real speed varies with runtime, drivers and settings. Numbers marked “Measured” come from a linked benchmark.

Was this page helpful?