Перейти к содержанию
Публикация AiManual

Splash 1.1.0: локальный инференс на Apple Silicon с поддержкой GGUF и импортом MLX

Splash 1.1.0 добавил поддержку GGUF-квантов и импорт моделей MLX для локального инференса на Apple Silicon. Разбираем, что это даёт на практике, какую скорость

Коротко

Что будет в материале

  1. 01

    Что такое Splash 1.1.0 и почему о нём говорят

  2. 02

    GGUF и MLX в Splash 1.1.0: что это даёт на практике

  3. 03

    Производительность на Apple Silicon: что известно и чего ждать

  4. 04

    Технические особенности Splash: что внутри

Splash 1.1.0 - релиз инструмента для локального инференса LLM на Apple Silicon. Версия добавляет поддержку GGUF-квантов и импорт моделей MLX. Обе функции расширяют набор моделей, которые можно запускать на Mac, и убирают часть барьеров при переходе с других рантаймов.

Основная идея Splash: собрать в одной программе оптимизированные ядра, спекулятивное декодирование, префиксный кэш и поддержку смешанных весов. В анонсе релиза это описано дословно: «Splash combines optimized kernels, excellent speculative decoding, a well-implemented prefix cache, and mixed-weight support in a single program».

Публичных цифр по Splash мало. Есть отзыв пользователя, который на M5 Pro с 64 ГБ унифицированной памяти работает в агентном сценарии с Qwen3.8 27B в квантовании Unsloth UD-Q4_K_XL и получает около 50 токенов в секунду. Тот же пользователь называет релиз прорывом в локальном инференсе на Apple Silicon. Оценка субъективная: ни методики замера, ни повторяемых тестов в источнике нет.

Что такое Splash 1.1.0 и почему о нём говорят

Splash запускает языковые модели прямо на Mac, используя чипы Apple Silicon и унифицированную память. Версия 1.1.0 добавила два блока возможностей: поддержку GGUF-квантов и импорт моделей MLX. Обе функции отвечают на один вопрос: какие модели и в каком формате пользователь может загрузить в рантайм без ручной конвертации.

Заявленная ценность в том, что Splash держит четыре компонента в одном приложении: оптимизированные ядра, спекулятивное декодирование, префиксный кэш и поддержку смешанных весов. На практике это значит, что стек не нужно собирать из нескольких инструментов и вручную совмещать ускорение генерации с кэшированием контекста.

Ключевые изменения в версии 1.1.0

В заголовке релиза указаны ровно две новые функции: поддержка GGUF-квантов и импорт моделей MLX. Полный changelog, список поддерживаемых архитектур и детали реализации в доступных материалах не раскрыты, поэтому ждать от этого раздела описания внутренней механики не стоит: её в источниках просто нет.

GGUF и MLX - разные экосистемы. GGUF пришёл из мира llama.cpp и стал де-факто форматом для готовых квантов. MLX - фреймворк Apple для машинного обучения на Apple Silicon, у него собственный формат моделей. Поддержка обоих означает, что Splash не привязывает пользователя к одному каталогу моделей.

За кадром остаётся важное: конвертирует ли Splash модели между форматами, какие версии MLX-моделей принимает импорт и есть ли ограничения по архитектурам. Ответов на это в материалах нет.

Для кого этот инструмент

Инструмент рассчитан на владельцев Mac с Apple Silicon и достаточным объёмом унифицированной памяти, которые запускают LLM локально и хотят контролировать производительность. Агентные сценарии, где модель делает десятки последовательных вызовов, для Splash основной кейс, судя по отзыву.

Если задача ограничивается простым чатом с моделью на 7-8B, отдельный рантайм обычно незачем: хватит готовых решений вроде Ollama или LM Studio. Splash интересен там, где важны скорость генерации, длинный контекст и агентная нагрузка.

GGUF и MLX в Splash 1.1.0: что это даёт на практике

Поддержка двух форматов решает вопрос выбора моделей. GGUF открывает доступ к большому каталогу готовых квантов, которые сообщество уже нарезало под разный объём памяти. MLX-импорт позволяет задействовать модели, сконвертированные под фреймворк Apple, без пересборки.

GGUF-кванты: выбор моделей и качество

GGUF - формат квантованных весов, где число бит на параметр задаётся при конвертации. Меньше бит означает меньше памяти и обычно ниже качество. Каталоги для локального запуска, например YouRunAI, показывают для Qwen3.8-27B три варианта: Q4 (меньше памяти), Q8 (выше качество) и FP16 (оригинальные веса).

Логика выбора простая. Q4 экономит память и подходит, когда модель большого размера едва влезает. Q8 ближе к оригинальным весам, но требует заметно больше памяти. FP16 хранит веса без потери точности и упирается в объём памяти сильнее всего.

Unsloth UD-Q4_K_XL из отзыва - пример динамического квантования, которое часть слоёв оставляет в более высокой точности, чтобы удержать качество при общем 4-битном бюджете. Точные цифры просадки по бенчмаркам источники не приводят, поэтому ориентироваться стоит на собственные задачи.

Импорт MLX-моделей: зачем это нужно

MLX-модели уже оптимизированы под Apple Silicon и унифицированную память. Импорт в Splash означает, что пользователь может подключить существующую библиотеку MLX-моделей и не конвертировать её вручную. Это экономит время и снижает риск ошибок при конвертации.

Утверждать, что Splash быстрее с MLX, чем с GGUF, нельзя: сравнений нет. Выбор формата в первую очередь зависит от того, в каком квантовании нужная модель вообще доступна. Как выбирать между двумя стеками на Mac, разбирается отдельно в материале MLX или llama.cpp с GGUF на Mac M5.

Производительность на Apple Silicon: что известно и чего ждать

Единственный подтверждённый кейс: M5 Pro, 64 ГБ унифицированной памяти, модель Qwen3.8 27B в квантовании Unsloth UD-Q4_K_XL, около 50 токенов в секунду в агентном сценарии по отзыву пользователя. Это отзыв, а не бенчмарк, и переносить его напрямую на M1-M4, на другие модели или другие кванты нельзя.

Агентный сценарий: почему это отдельный вызов

Агентная работа отличается от обычного чата. Модель делает много последовательных вызовов, каждый раз обрабатывает длинный системный промпт, историю и ответы инструментов. Без кэша префикса значительную часть токенов пришлось бы пересчитывать заново.

Префиксный кэш хранит уже обработанный контекст, чтобы не прогонять его повторно. Спекулятивное декодирование ускоряет генерацию за счёт черновых токенов и их проверки основной моделью. Когда оба механизма работают в одном рантайме, 50 т/с в агентном режиме перестают выглядеть фантастикой, хотя проверять такие цифры на своём железе всё равно придётся самостоятельно.

Как объём памяти влияет на выбор модели

Унифицированная память Apple Silicon делится между системой, приложениями и моделью. Это ограничивает размер модели и квант, который поместится без свопа. 64 ГБ дают запас для 27B в Q4, а для той же модели в FP16 потребуется существенно больше.

Порядок такой: сначала считаете доступную память, затем выбираете размер модели, потом квант. Точных таблиц по потреблению памяти конкретных моделей в источниках нет, поэтому замерять придётся самостоятельно. Как это делают на M5 Max, разбирается в материале какие локальные модели запускать на M5 Max.

Технические особенности Splash: что внутри

Splash объединяет четыре компонента. Разберём каждый.

  • Оптимизированные ядра - низкоуровневые вычислительные процедуры, написанные под Apple Silicon. От них зависит скорость матричных операций, то есть значительная часть времени инференса.
  • Спекулятивное декодирование - быстрая черновая модель предлагает несколько токенов, основная проверяет их за один проход. Если проверка проходит, генерация ускоряется без изменения результата.
  • Префиксный кэш - сохраняет вычисленные состояния для уже обработанного текста. Полезен при длинном системном промпте и повторяющемся контексте, что типично для агентов и RAG.
  • Смешанные веса - разные слои модели могут храниться в разной точности. Это позволяет экономить память там, где точность не критична, и сохранять качество на чувствительных слоях.

Ни одна из этих технологий не уникальна: ядра, спекулятивное декодирование и кэш префиксов встречаются и в других рантаймах. Позиционирование Splash в другом: всё это доступно из одной программы без ручной сборки стека.

Полезно посмотреть, как подобные механизмы ведут себя на длинном контексте и сложных задачах. Практический разбор одного из форков Splash с контекстом до 190 016 токенов и нативными 8-битными весами есть в статье Splash Engine на Apple Silicon.

Ограничения и что важно проверить перед переходом

Перед установкой нужно трезво оценить, что подтверждено, а что нет. По пунктам.

  • Цифра 50 т/с - отзыв одного пользователя на конкретной конфигурации. Независимых тестов и воспроизводимой методики нет по данным анонса.
  • Детали реализации GGUF и MLX не раскрыты: неизвестно, какие архитектуры моделей поддерживаются, какие версии форматов принимаются и есть ли конвертация между ними.
  • Нет данных о потреблении памяти, стабильности при длительной работе и поведении на предельно длинном контексте.
  • Splash - молодой инструмент, экосистема вокруг него только формируется. Готовых гайдов и решённых проблем у сообщества пока мало.

Практический вывод: проверяйте совместимость нужной модели до того, как переносить на Splash рабочий процесс. Если инструмент не запускает вашу модель, заявленные функции этого не компенсируют.

С чем сравнивать: альтернативы на Apple Silicon

На Mac для локального инференса обычно используют llama.cpp, Ollama, LM Studio и примеры на MLX. У каждого свой профиль: Ollama и LM Studio удобны для быстрого старта, llama.cpp даёт контроль над параметрами, MLX работает с родным фреймворком Apple.

Утверждать, что Splash быстрее или лучше их, нельзя: сравнительных замеров в источниках нет. Разумная гипотеза на основе заявленных функций: для простого чата привычные инструменты проще, а для агентных задач и тонкой настройки производительности Splash может оказаться интереснее.

Полезно заранее понять разницу между prefill и decode: от неё зависит, какой рантайм выигрывает на вашей нагрузке. Как читать заявления о скорости, разобрано в материале Qwen3.8-Flash-Next-oQ4e-mtp на Apple Silicon.

Как выбрать модель и квантование под свой Mac

Порядок действий: определить доступную память, выбрать размер модели, затем квант. Модель больше, чем позволяет память, будет уходить в своп и потеряет в скорости.

Q4, Q8 или FP16: компромисс качества и памяти

Q4 занимает минимум памяти, но на сложных задачах заметно теряет в точности. Q8 близок к оригинальным весам при заметно больших требованиях к памяти. FP16 хранит веса без сжатия и подходит, когда памяти в избытке.

Для агентных сценариев качество важнее экономии, поэтому Q4 с динамическим квантованием (например, Unsloth UD-Q4_K_XL) разумный компромисс: часть слоёв остаётся в повышенной точности. Конкретные проценты потери качества источники не приводят.

Грубые ориентиры по конфигурациям, без привязки к конкретным моделям:

  • 16 ГБ: реалистично рассчитывать на модели 7-14B в Q4.
  • 32 ГБ: 27B в Q4 на грани, 14B чувствует себя комфортнее.
  • 64 ГБ: 27B в Q4 с запасом, как в кейсе с M5 Pro.

Это ориентиры по памяти, а не результаты замеров. Точное потребление зависит от модели, кванта и длины контекста.

Пример из каталога YouRunAI: для Qwen3.8-27B доступны Q4, Q8 и FP16, а в конфигурациях машин указана Apple silicon с унифицированной памятью youunai.com/models. Там же можно посмотреть варианты под свой объём памяти. Как рантаймы и кванты сравнивают в сообществе, собрано в статье лучшие инструменты для локального запуска Qwen 3.8 27B.

Итог: кому стоит попробовать Splash 1.1.0

Splash 1.1.0 - вариант для владельцев Mac на Apple Silicon с 32-64 ГБ памяти и выше, которые запускают LLM в агентных сценариях и хотят получить скорость и поддержку двух форматов в одном инструменте. Поддержка GGUF и импорт MLX расширяют выбор моделей, а связка ядер, спекулятивного декодирования, префиксного кэша и смешанных весов в одном рантайме упрощает настройку.

Если задача ограничивается простым чатом, вероятно, хватит решения, которым вы пользуетесь сейчас. Если нужен контроль над производительностью и вы готовы потратить время на тесты, Splash стоит проверить на своих моделях.

Начинать логично с одной модели: загрузить её через GGUF или импортировать из MLX, прогнать реальный сценарий и сравнить скорость с текущим рантаймом на том же железе. Единственный публичный кейс - M5 Pro с 64 ГБ и Qwen3.8 27B, и универсальным бенчмарком он не является.

Подписаться на канал