Running Local LLMs on a 24GB Mac Mini: Model Selection & Speed Optimization Guide

Guide to choosing and optimizing 3B-8B local LLMs on a 24GB Mac Mini for Home Assistant use cases.
A 24GB Mac Mini can't run 14B models smoothly due to memory bandwidth limitations, not capacity. For real-time applications like Home Assistant, 3B-8B models (Llama 3.2, Qwen2.5 7B, Phi-3) offer the best balance of speed and capability. This guide covers quantization choices, context length optimization, and alternative frameworks like MLX for better Apple Silicon performance.
A Real Dilemma: Why Is Local AI So Slow?
Recently in Reddit's local AI community, a user raised a problem that many people encounter: he had just picked up a Mac Mini with 24GB of memory and wanted to use it to power local AI capabilities for Home Assistant smart home control and applications like Hermes. However, reality hit hard — when trying to run the qwen3:14b model, the response speed was "painfully slow" and completely impractical.
Home Assistant is one of the world's most popular open-source smart home platforms, supporting integration with thousands of devices and services. Starting in 2024, Home Assistant introduced native support for Conversation Agents and AI Pipelines, allowing users to control home devices through natural language. In its architecture, the LLM plays the role of intent recognition and action dispatch — converting users' natural language input into API calls for specific devices. This means the model doesn't need general-purpose long-text generation capabilities; instead, it needs precise instruction following, tool-calling format output, and fast responses. The Hermes series of models is particularly popular in the Home Assistant community due to its excellent function calling capabilities.
This scenario is very typical. As tools like Ollama make local LLM deployment accessible to everyone, more and more regular users are trying to run AI on their consumer-grade devices. But between "can run" and "runs well," there's often a wall built from hardware performance, model scale, and quantization technology.
Ollama is an open-source local LLM runtime framework built on llama.cpp, offering a Docker-like model management experience. Users can download and run various open-source models through simple commands (like ollama pull and ollama run). Under the hood, Ollama uses GGUF-format quantized models and performs inference through the llama.cpp engine. On Apple Silicon devices, Ollama automatically leverages the Metal API to call the GPU for accelerated computation. Its Modelfile mechanism allows users to customize runtime configurations such as system prompts, temperature parameters, and context length. Ollama also provides an OpenAI API-compatible HTTP interface, enabling third-party applications like Home Assistant to call local models just like cloud APIs.

Why Is a 14B Model Still Slow on 24GB of Memory?
Many people have a misconception: as long as you have enough memory, the model will run smoothly. This understanding is only half right.
Memory Capacity Determines "Can It Load," Not "Does It Run Fast"
For Apple Silicon Macs, 24GB of unified memory means the CPU and GPU share the same memory pool. In theory, a 14B (14 billion parameter) model at 4-bit quantization requires approximately 8-9GB of memory, which 24GB can easily accommodate. But "fits in memory" doesn't equal "runs fast."
Apple Silicon's Unified Memory Architecture (UMA) is a design where the CPU, GPU, and Neural Engine share a single physical memory pool. This is fundamentally different from traditional PC architectures where the CPU uses system memory and the GPU uses dedicated VRAM. The advantage of UMA is eliminating data copy overhead between CPU and GPU, but the disadvantage is that all compute units share the same memory bus bandwidth. For the base M4 as an example, memory bandwidth is approximately 120GB/s, while the M4 Pro can reach 273GB/s.
What truly determines inference speed is memory bandwidth and GPU compute power. The base Mac Mini (especially non-Pro M2/M4 versions) has relatively limited memory bandwidth. When processing a 14B-class model, every token generated requires reading all model parameters from memory once, making bandwidth the bottleneck. In large language model inference, this is a classic memory-bandwidth bound operation. An 8GB model on 120GB/s bandwidth can theoretically complete only about 15 full parameter reads per second, which directly determines the upper limit of token generation rate. This is why the user felt the 14B model was "too slow to use."
The Trade-off Between Model Scale and Practicality
For scenarios like Home Assistant that require fast responses (such as voice-controlling appliances), latency is critical. Users won't tolerate waiting 5 seconds after saying "turn on the living room light." Therefore, in real-time interaction scenarios, a model's response speed matters far more than its "intelligence."
Recommended Model Choices for a 24GB Mac Mini
Based on community experience and actual testing, here are the recommended directions for this hardware configuration:
Prioritize Small Parameter Models (3B-8B)
- Llama 3.1 8B / Llama 3.2 3B: These two models from Meta offer balanced performance at small sizes. The 3B version achieves very smooth response speeds on the Mac Mini, suitable for Home Assistant's intent recognition and simple conversations.
- Qwen2.5 7B: Compared to the user's attempted qwen3:14b, the 7B version has half the parameters, offering significantly faster speeds with solid bilingual (Chinese/English) capabilities.
- Phi-3 / Phi-3.5: Microsoft's small model series, optimized specifically for edge devices, offering excellent value on limited hardware.
Pay Attention to Quantization Version Selection
Quantization is a technique that compresses model parameters from high-precision floating-point numbers (like 16-bit FP16) to low-precision integers (like 4-bit or 8-bit). A 14B parameter model requires approximately 28GB of memory in FP16, but only about 8GB after 4-bit quantization. Common quantization schemes include GPTQ, AWQ, and variants in the GGUF format such as Q4_K_M and Q5_K_M. The K-quant series employs a grouped quantization strategy that evaluates the importance of different layers in the model, preserving higher precision for critical layers while applying more aggressive compression to non-critical ones.
When pulling models in Ollama, the default is often 4-bit quantization (Q4). If you're chasing maximum speed, try balanced quantization schemes like Q4_K_M — it uses 4-bit quantization for most layers but retains 5-bit or 6-bit precision for key matrices in attention layers, achieving a good compromise between speed and quality. However, note that over-quantization (like Q2), while faster, may cause the model to "get dumber" with noticeable degradation in instruction following.
Special Considerations for Home Assistant
When Home Assistant officially recommends using local LLMs for conversation agents, it actually doesn't require a particularly powerful model. A responsive 3B-7B model, combined with good prompt engineering and tool-calling configuration, often provides a better experience than a slow 14B model. The fluidity that speed brings is irreplaceable value in smart home scenarios.
Practical Optimization Tips for Local AI Deployment
Benchmark First, Then Finalize Your Choice
It's recommended to pull several candidate models in Ollama and test tokens/second (token generation rate) using the same prompts. Generally, real-time interaction scenarios require at least 15-20 tokens/s for an acceptable experience. You can check this metric through Ollama's verbose mode or third-party tools.
Watch the Memory Overhead of Context Length
Many people overlook this: a model's memory footprint depends not only on parameter count but also on the configured context window (context length). The context window determines how much conversation history or input text the model can "see" in a single inference. A longer context means storing a larger KV Cache (key-value cache), which grows linearly with context length and adds computational burden during inference. An excessively large context consumes extra memory and compute resources. For smart home scenarios with short commands, reducing the context length (for example, from the default 4096 down to 2048 or even 1024) can yield faster responses.
Consider Dedicated Inference Frameworks Like MLX
While Ollama excels in ease of use, on Apple Silicon, inference solutions based on the MLX framework (such as LM Studio's MLX backend) are deeply optimized for Metal and often deliver better performance than Ollama.
MLX is an open-source deep learning framework released by Apple's machine learning research team in late 2023, designed specifically for Apple Silicon chips. Unlike general-purpose frameworks, MLX deeply leverages the characteristics of the unified memory architecture — tensors can be shared between CPU and GPU with zero-copy, avoiding the overhead of inter-device data transfer found in traditional frameworks. MLX uses lazy evaluation and dynamic graph mechanisms, with an API design heavily inspired by NumPy and PyTorch, reducing migration costs for developers. In LLM inference scenarios, MLX-based solutions (like mlx-lm) typically achieve 10%-30% performance improvements over Ollama's llama.cpp backend, mainly due to MLX's deep optimization of Metal Performance Shaders and more efficient memory management strategies. Performance-sensitive users should give it a try.
Conclusion: Small and Efficient Is the Right Path for Edge AI
This Reddit user's confusion reflects a core proposition in the entire local AI wave: on consumer-grade hardware, model selection isn't about bigger is better, but about finding the best fit.
A 24GB Mac Mini is fully capable of handling local AI tasks for smart home automation. The key is letting go of the obsession with "large models" and embracing efficient models in the 3B-8B range. As small model capabilities continue to evolve, the "sweet spot" for edge AI keeps moving closer to regular users. For real-time scenarios like home automation, a responsive small model will always outperform a large one that takes forever to think.
Related articles

NAS Drive Selection Guide: How to Best Pair NVMe Cache with HDDs
A detailed guide on NVMe SSD and HDD roles in a NAS, covering SSD cache benefits, read vs. read-write cache, RAID expansion planning, and optimal data tiering under 2.5GbE networking.

Efficient Few-Shot Learning: Insights from Achieving 100% Accuracy with Just 16 Samples
Exploring the deep significance behind achieving 100% accuracy with just 16 samples, analyzing the critical role of data efficiency and stability in continuous learning systems.

Cursor vs Codex vs Claude: Practical AI Coding Tool Selection in Cross-Platform Development Environments
Comparing Cursor, Codex, and Claude in cross-platform environments through real developer cases, analyzing compatibility with network folders, Windows Server, and enterprise setups to guide practical tool selection.