Автоматический перевод
Эта статья была автоматически переведена с оригинальной английской версии.
Лучшие локальные инструменты LLM для macOS
Инструменты для локальной работы с LLM на macOS делятся на четыре задачи: простой serving, исследование через GUI, низкоуровневый контроль inference и нативные для Apple Silicon эксперименты. Один инструмент не обязан закрывать все четыре.
Мой вариант по умолчанию: используйте Ollama для локального API. Используйте LM Studio для изучения моделей. Используйте llama.cpp, когда нужен контроль runtime для GGUF. Используйте MLX, когда нужна нативная для Apple Silicon работа в Python ближе к самой модели.
Таблица рекомендаций
| Tool | Best at | Use when | Main trade-off |
|---|---|---|---|
| Ollama | Простой локальный сервер моделей и управление жизненным циклом моделей | Вам нужен локальный endpoint как можно быстрее | Меньше низкоуровневого контроля, чем в llama.cpp. |
| LM Studio | GUI-чат, поиск моделей и локальные server workflow | Вы хотите сравнивать модели без написания glue code | Абстракция desktop скрывает детали runtime. |
| llama.cpp | GGUF inference, quantization, server flags, управление Metal | Нужен контроль над context, batch, quantization и поведением runtime | Больше настройки и больше флагов. |
| MLX | Нативные для Apple Silicon массивы и workflow для моделей | Нужны эксперименты на уровне Python на Mac с M-series | Экосистема serving меньше, чем у Ollama или llama.cpp. |
Что установить первым?
Сначала установите Ollama, если вы разрабатываете софт. Многие приложения уже умеют с ним работать, а локального API достаточно для прототипов, тестов и небольших внутренних инструментов. Это самый короткий путь от «мне нужна локальная модель» к «моё приложение может вызывать локальную модель».
Сначала установите LM Studio, если вы выбираете модель. Он хорошо подходит для просмотра моделей, изменения настроек, сравнения выходов и запуска локального OpenAI-compatible сервера без необходимости самостоятельно проектировать workflow.
Сначала установите llama.cpp, если вам важна механика inference. Длину контекста, quantization, флаги Metal, обработку prompt, размеры batch и поведение сервера проще анализировать, когда вы ближе к runtime.
Используйте MLX, когда задача не сводится только к serving чат-модели. Он подходит для нативных для Apple Silicon экспериментов с моделями, конвертации, fine-tuning и Python workflow, где unified memory — часть архитектуры.
Матрица workflow
| Workflow | Default | Why |
|---|---|---|
| Локальный API для приложения | Ollama | Стабильный developer experience и широкая поддержка интеграций. |
| Ручное сравнение моделей | LM Studio | GUI ускоряет сравнение prompt и моделей. |
| Отладка производительности | llama.cpp | Вы видите и контролируете runtime-параметры. |
| Serving квантованных GGUF-моделей | llama.cpp or Ollama | llama.cpp — для контроля, Ollama — для удобства. |
| Эксперименты с моделями на Apple Silicon | MLX | Нативный framework массивов и инструменты для моделей на Mac с M-series. |
| Демо для нетехнических стейкхолдеров | LM Studio | Легко показать и интерактивно настроить. |
| Воспроизводимая инженерная конфигурация | Ollama plus a pinned model list | Проще автоматизировать, чем workflow только через GUI. |
Заметки по железу
Unified memory — это реальное ограничение на Apple Silicon. Модель, которая помещается на MacBook Pro с 64 GB, может быть практически непригодной на MacBook Air с 8 GB. Quantization помогает, но длина контекста может незаметно стать главным потребителем памяти. Бенчмарьте реальную форму prompt, а не ориентируйтесь только на имя модели.
Для небольших локальных инструментов модель класса 7B или 8B часто полезнее, чем перегруженная более крупная модель. Для задач кодинга длинный контекст и интеграция с инструментами могут быть важнее, чем сырое место в бенчмарках. Для document QA качество retrieval обычно важнее выбора локальной модели.
Чего не делать
Не превращайте настройку локальных LLM в бесконечный benchmark-проект, если производительность не является продуктом. Начните с Ollama или LM Studio. Докажите, что локальный inference действительно помогает. Затем переходите к llama.cpp или MLX, когда появится конкретная причина.
Не сравнивайте модели только в чат-интерфейсе, если реальная нагрузка — это structured extraction, редактирование кода или синтез ответов для RAG. Напишите небольшой eval script с репрезентативными prompt.
Что почитать глубже
- Локальные LLM на macOS — практическая настройка.
- Open-Source LLM Variants and File Formats объясняет GGUF, GPTQ, AWQ, base models и instruct models.
- Настройка MacBook для AI Engineering охватывает более широкую настройку рабочей станции.