# Transformers запускает GGUF с ядрами ggml на Apple Silicon

Источник: https://modelium.tech/zhurnal/transformers-gguf-ggml-mps-apple-silicon/

Hugging Face 22 сентября 2026 года представила запуск квантованных GGUF-чекпойнтов Qwen3.5 через Transformers с ядрами ggml для Metal. Это позволяет использовать GGUF в Python и локальном OpenAI-совместимом сервере, сохраняя веса упакованными на поддерживаемом Mac. Функция пока доступна из ветки main, а не из последнего стабильного релиза; при недоступности ядра загрузчик распаковывает веса и расходует больше памяти.

## Что изменилось

22 сентября 2026 года команда Hugging Face объявила о поддержке **исполнения квантованных GGUF в Transformers**, а не только об импорте с распаковкой весов. Через библиотеку `kernels` используются ядра ggml для Metal: на поддерживаемом пути матричные операции читают упакованные квантованные веса. Первоначальная область применения — текстовая генерация на Apple Silicon для плотных и MoE-моделей архитектуры Qwen3.5, включая совместимые чекпойнты Qwen3.8. Это не универсальная поддержка любого GGUF на любой видеокарте [s1](#src-s1) [s2](#src-s2).

Практический смысл — один и тот же GGUF-чекпойнт можно использовать в знакомом Python API `from_pretrained` и `generate`, исследовать промежуточные представления, сравнивать конверсии и поднимать локальный API. Для чистого эффективного инференса Hugging Face по-прежнему рекомендует специализированный llama.cpp; новый путь удобнее тем, кому нужны инструменты экосистемы Transformers [s1](#src-s1).

## Как попробовать сейчас

Нужен Mac с Apple Silicon, совместимая с опубликованными ggml-ядрами версия PyTorch и актуальная ветка `main` Transformers: на дату объявления изменение **ещё не входило в последний стабильный релиз**. Официальный пример установки: `pip install -U "git+https://github.com/huggingface/transformers.git" kernels`. Для сервера предлагается вариант `pip install -U "transformers[serving] @ git+https://github.com/huggingface/transformers.git" kernels`. Последний отмеченный GitHub-релиз на момент проверки — v5.17.0 от 9 сентября; перед применением в рабочем окружении фиксируйте конкретный коммит и версии зависимостей [s1](#src-s1) [s4](#src-s4).

Пример из официальной документации использует `unsloth/Qwen3.5-4B-GGUF` и файл `Qwen3.5-4B-Q4_K_M.gguf`:

from transformers import AutoModelForCausalLM, AutoTokenizermodel_id = "unsloth/Qwen3.5-4B-GGUF"filename = "Qwen3.5-4B-Q4_K_M.gguf"model = AutoModelForCausalLM.from_pretrained(model_id, gguf_file=filename)tokenizer = AutoTokenizer.from_pretrained(model_id, gguf_file=filename)

Этот файл действительно присутствует в открытом репозитории. Дальше можно применить `tokenizer.apply_chat_template(...)` и `model.generate(...)` по обычному API. Для локального OpenAI-совместимого интерфейса команда из объявления: `transformers serve "unsloth/Qwen3.5-4B-GGUF:Qwen3.5-4B-Q4_K_M.gguf"`; клиент подключается к `http://localhost:8000/v1`. Не открывайте этот локальный endpoint в публичную сеть без отдельной настройки доступа [s1](#src-s1) [s2](#src-s2) [s3](#src-s3).

## Ограничения и лицензии

Быстрый путь с упакованными весами пока **только для MPS**. Если совместимое ядро квантования недоступно, модель загружается с полной деквантизацией и потребляет больше памяти. Отдельно ядро внимания может откатиться к `sdpa` с предупреждением; это не то же самое, что сохранение упакованных весов. Для других архитектур документация описывает прежний путь импорта с распаковкой. Поддержка GGUF как формата не равна поддержке ускоренных ядер на CPU, CUDA или всех моделях [s1](#src-s1) [s2](#src-s2).

Использованный GGUF-репозиторий и исходная `Qwen/Qwen3.5-4B` отмечены на Hugging Face лицензией **Apache-2.0**; код Transformers также распространяется под Apache-2.0. Это проверка конкретных репозиториев, а не обещание одинаковых условий для любого GGUF-файла или внешних зависимостей. Перед коммерческим применением иной модели проверяйте её собственную лицензию [s3](#src-s3) [s5](#src-s5) [s6](#src-s6).

Команда Hugging Face приводит сравнение с llama.cpp на MacBook Pro M2 Max с 32 ГБ объединённой памяти, macOS 26.6 и PyTorch 2.12.1. Это **авторские**, не воспроизведённые Modelium результаты и не минимальные требования к компьютеру. Более того, в методике Transformers учитывается prefill при генерации 128 токенов, а `llama-bench` показывает decode-only `tg128`; прямое равенство скоростей из такого сравнения выводить нельзя. Размер файла Q4_K_M из объявления — 2,74 ГБ на диске, **не** оценка необходимой RAM [s1](#src-s1).

## Источники

1. [Hugging Face: Transformers now runs llama.cpp quants, 22 сентября 2026](https://huggingface.co/blog/transformers-llama-cpp-quants) — получено 2026-09-23
2. [Официальная документация Transformers: GGUF (ветка main)](https://huggingface.co/docs/transformers/main/quantization/gguf) — получено 2026-09-23
3. [Репозиторий GGUF Qwen3.5-4B, модельные файлы и лицензия](https://huggingface.co/unsloth/Qwen3.5-4B-GGUF/tree/e87f176479d0855a907a41277aca2f8ee7a09523) — получено 2026-09-23
4. [Последний стабильный релиз Transformers на GitHub](https://github.com/huggingface/transformers/releases/tag/v5.17.0) — получено 2026-09-23
5. [Исходная модель Qwen3.5-4B и её карточка](https://huggingface.co/Qwen/Qwen3.5-4B/tree/851bf6e806efd8d0a36b00ddf55e13ccb7b8cd0a) — получено 2026-09-23
6. [Лицензия исходного кода Hugging Face Transformers](https://github.com/huggingface/transformers/blob/main/LICENSE) — получено 2026-09-23
