Перейти к содержанию
modelium.
Начать с задачи
←
Абстрактная композиция: тонкие волокна, ткань и мягкие тени в сиреневых тонах.

Transformers запускает GGUF с ядрами ggml на 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 s2.

Практический смысл — один и тот же GGUF-чекпойнт можно использовать в знакомом Python API from_pretrained и generate, исследовать промежуточные представления, сравнивать конверсии и поднимать локальный API. Для чистого эффективного инференса Hugging Face по-прежнему рекомендует специализированный llama.cpp; новый путь удобнее тем, кому нужны инструменты экосистемы Transformers 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 s4.

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

from transformers import AutoModelForCausalLM, AutoTokenizer

model_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 s2 s3.

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

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

Использованный GGUF-репозиторий и исходная Qwen/Qwen3.5-4B отмечены на Hugging Face лицензией Apache-2.0; код Transformers также распространяется под Apache-2.0. Это проверка конкретных репозиториев, а не обещание одинаковых условий для любого GGUF-файла или внешних зависимостей. Перед коммерческим применением иной модели проверяйте её собственную лицензию s3 s5 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.

Источники