Skip to content

Install local LLM on new MacBook Pro M5 Max 128GB #71

Description

@wphillipmoore

Install Local LLM on New MacBook Pro

Context

A new MacBook Pro 16" M5 Max (fully maxed configuration) with 128GB unified memory is arriving in approximately two weeks (~2026-04-24). This is the top-of-the-line configuration with every performance option selected — 18-core CPU, 40-core GPU, 128GB unified memory, 614 GB/s memory bandwidth.

This machine is capable of running 70B parameter models at high quantization levels (Q6/Q8) with an estimated 10-16 tok/s throughput, and 14B-30B models at 30-75 tok/s. This will be our primary local LLM platform.

This issue covers the initial setup of a local LLM environment on that hardware for development testing and iteration.

Hardware specs (confirmed)

  • Apple M5 Max (18-core CPU, 40-core GPU)
  • 128GB unified memory
  • 614 GB/s memory bandwidth
  • Thunderbolt 5 ports

Tasks

  • Install Ollama (brew install ollama)
  • Pull initial model(s) — evaluate options and select based on research below
  • Verify OpenAI-compatible API is accessible at localhost:11434/v1/
  • Evaluate LM Studio as an alternative (MLX backend, 20-40% faster on Apple Silicon)
  • Benchmark selected models: tokens/sec, memory usage, quality of structured JSON output
  • Document findings: which models work well, recommended defaults, known limitations

Model selection research (to be expanded)

Initial candidates to evaluate for our use case (structured JSON output from research prompts):

Model Size Expected fit Notes
Llama 3.1 70B ~40GB at Q4, ~55GB at Q6 Comfortable General purpose, well-tested
Qwen 2.5 72B Similar to Llama 70B Comfortable Strong at structured output
DeepSeek V2.5 ~16GB at Q4 (MoE, 21B active) Easy Fast, MoE architecture
Mistral Large Varies TBD Evaluate availability in GGUF/MLX
Smaller models (7B-14B) Trivial Trivial For fast iteration when quality is irrelevant

Model selection should prioritize: (1) reliable structured JSON output, (2) reasonable instruction following, (3) speed for iteration. Output quality is secondary — this is for pipeline testing, not publication.

Integration with Diogenes pipeline

Once the provider-agnostic abstraction (#69) is implemented:

  • Configure LiteLLM to route to local Ollama
  • Run existing research pipeline end-to-end against local model
  • Document what breaks and what works
  • Establish a --profile local configuration for rapid iteration

Depends on

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions