Apple Silicon (M1/M2/M3/M4) исторически выигрывала у NVIDIA в задачах генерации текста благодаря единой шине памяти, но проигрывала в пропускной способности. Ollama 0.31 меняет расклад, внедряя Multi-Token Prediction (MTP) для модели Gemma 4 через фреймворк MLX. Это позволяет генерировать токены почти на 90% быстрее на бенчмарке Aider Polyglot, что критично для кодовых агентов, работающих в реальном времени.
01Как работает ускорение: Multi-Token Prediction
Традиционный autoregressive подход генерирует один токен за один проход. MTP использует «черновой» (draft) модель, которая значительно меньше основной. В случае Gemma 4 это легковесный черновик, который предсказывает несколько следующих токенов. Основная модель затем верифицирует этот блок за один проход.
Если черновик угадал, мы получаем несколько токенов за цену одного вычислительного шага. Если нет — происходит откат. Код особенно предсказуем (скобки, повторяющиеся идентификаторы), поэтому вероятность успешного принятия токенов высока.
02Техническая оптимизация в MLX
Проблема MTP часто заключается в неэффективности верификации. Размер батча для черновика (обычно 2-8 токенов) слишком мал для оптимизированных ядер prefill, но слишком велик для одиночной декодировки. Ollama внесла вклад в MLX, создав специализированное ядро для этого диапазона.
- Кэширование весов: Ядро читает и распаковывает блоки весов один раз, переиспользуя их для всего батча, вместо того чтобы читать их для каждого токена отдельно.
- Откат состояния: При ошибке черновика движок откатывается к последней принятой точке. Это дешево, так как не требует пересчета предыдущих токенов.
- Результат: На чипе M5 Max с квантованием nvfp4, крупные матричные умножения стали в 2–2.5 раза быстрее.
03Бенчмарки и производительность
Измерения проводились на Aider polyglot benchmark, который симулирует работу реального кодового агента. Результаты показывают значительный прирост скорости генерации токенов (tokens/s) по сравнению с базовой версией без MTP.
| Модель / Конфигурация | Железо | Ускорение (MTP) | Примечание |
|---|---|---|---|
| Gemma 4 12B (nvfp4) | Apple M5 Max | ~90% faster | Среднее по бенчмарку Aider |
| Gemma 4 12B (nvfp4) | Apple M5 Max | 2x - 2.5x | Скорость матричных умножений (верификация) |
nvfp4. Это не только ускоряет вычисления на Apple Silicon, но и снижает потребление видеопамяти, что позволяет запускать более крупные модели на чипах с 16-32 ГБ памяти.04Установка и запуск
Для использования новых возможностей необходимо обновить Ollama до версии 0.31 или новее. Если вы ранее уже скачивали модель, её нужно перепотянуть, чтобы получить версию с поддержкой MTP.
Установка Ollama (macOS):
# Скачайте установщик с официального сайта ollama.com
# или используйте Homebrew, если он у вас есть:
brew install ollamaПолучение актуальной версии Gemma 4:
ollama pull gemma4:12b-mlxЗапуск кодового агента (например, Claude, Codex, Droid или OpenCode) с использованием ускоренной модели:
ollama launch claude --model gemma4:12b-mlxКоманда ollama launch автоматически интегрируется с поддерживаемыми агентами, обеспечивая низкую задержку при чтении файлов и выполнении инструментов.
05Кому подойдёт / что запустится
- Разработчики на Mac: Если вы используете M1 Pro/Max/M2/M3/M4 серии и пишете код с помощью AI-ассистентов (Cursor, Aider, Continue), обновление даст заметный прирост отзывчивости интерфейса.
- Локальные энтузиасты: Gemma 4 12B — отличный баланс между интеллектом и скоростью. На 16 ГБ RAM она работает комфортно, на 32 ГБ — с запасом.
- Совместимость: Оптимизация работает только на Apple Silicon через MLX. На Windows/Linux с NVIDIA GPU эта конкретная оптимизация MTP для Gemma 4 в текущем релизе не применяется (требуется CUDA и другие реализации).
Источник: Ollama ↗
