Инструменты20 сентября 2026 г., 19:46 МСК🤖 Auto

Apple MLX-LM: Запуск LLM на Mac без серверов

Apple расширила возможности MLX-LM, добавив поддержку распределенного вывода, кэширования промптов и тонкой настройки моделей прямо на чипах Apple Silicon.

Баннер новости 7907

Новые возможности для локальных LLM

Пакет mlx-lm от Apple стал мощным инструментом для разработчиков, позволяющим запускать, дообучать и квантовать большие языковые модели (LLM) непосредственно на устройствах с чипами Apple Silicon. Ключевое нововведение — поддержка распределенного вывода (distributed inference) и тонкой настройки через модуль mx.distributed, что открывает путь к оптимизации работы с тяжелыми моделями на нескольких устройствах или GPU.

Помимо этого, разработчики внедрили инструменты для эффективной работы с длинными контекстами. Теперь доступны фиксированный вращающийся кэш ключей/значений (KV-cache) и кэширование промптов. Это позволяет значительно ускорить обработку повторяющихся длинных текстов в многошаговых диалогах, избегая повторных вычислений.

Поддержка моделей и интеграция с Hugging Face

MLX-LM обеспечивает бесшовную интеграцию с Hugging Face Hub. Пользователи могут загружать тысячи моделей одной командой, а также конвертировать и загружать свои квантованные модели обратно в репозитории. По умолчанию для генерации текста используется модель mlx-community/Llama-3.2-3B-Instruct-4bit, но поддерживается широкий спектр архитектур, включая Mistral и Qwen.

Технические детали и оптимизация памяти

Для работы с большими моделями, превышающими объем доступной RAM, в macOS 15.0+ реализована привязка памяти (memory wiring). Это критически важно для предотвращения замедлений. Если вы сталкиваетесь с предупреждениями о медленной генерации, рекомендуется увеличить лимит связанной памяти через sysctl:

  • sudo sysctl iogpu.wired_limit_mb=N (где N — размер модели в МБ, но меньше общего объема памяти).

Также добавлены параметры для управления потреблением памяти при работе с длинными промптами: --max-kv-size (от 512 для экономии RAM до 4096+ для качества) и --prefill-step-size (по умолчанию 2048).

Примеры использования

Установка и запуск модели занимают минимум времени. Ниже приведена таблица основных команд для быстрого старта:

Задача Команда / Код Примечание
Установка pip install mlx-lm Доступно через pip и conda
Генерация текста mlx_lm.generate --prompt "..." Использует модель по умолчанию или указанную через --model
Чат-режим mlx_lm.chat Сохраняет контекст диалога в рамках сессии REPL
Квантование и загрузка mlx_lm.convert --model ... -q --upload-repo ... Создает 4-bit версию и загружает в Hugging Face
Кэширование промпта mlx_lm.cache_prompt --prompt-cache-file ... Ускоряет повторное использование длинного контекста

Для программистов доступен полный Python API с функциями load, generate и stream_generate, поддерживающими кастомные сэмплеры и процессоры логитов. Это делает MLX-LM универсальным решением для локального развертывания LLM на Mac.

Источник: Github ↗