Hy3 hy_v3 в llama.cpp: MTP спекулятивное декодирование — обзор | AiManual
AiManual Logo Ai / Manual.
14 Июл 2026 Инструмент

Hy3 (hy_v3) врывается в llama.cpp: MTP-декадирование на стероидах

Разбор новой модели Hy3 в llama.cpp с Multi-Token Prediction. Как это ускоряет инференс, сравнение с классическим спекулятивным декодированием, примеры сборки и

Спекулятивное декодирование: что могло пойти не так

Спекулятивное декодирование — штука, которая в теории звучит как мечта: дёргаешь слабую модель, чтобы она предсказала много токенов за раз, а сильная модель лишь верифицирует. На практике же классический подход (Lookahead, Medusa, Eagle) страдает от двух вещей: маленький lookahead (<10 токенов) и дикая чувствительность к качеству догадок. Если догадки плохие — ускорение нулевое. Hy3 (hy_v3), который на днях пропатчили в llama-core, решает это через Multi-Token Prediction (MTP). И это не очередная бета-фича, а вполне рабочая техника, которая выжимает до 111% на определённых конфигах — что мы уже видели в бенчмарках на Strix Halo.

Ключевая особенность Hy3: это не отдельный джойстик-модуль, а полноценная модель, которая обучена предсказывать сразу 3-5 следующих токенов одновременно. В отличие от классического MTP (как в бета-версии llama.cpp MTP), Hy3 использует shared embedding и кросс-токен-аттеншн, что экономит память и снижает latency.

Как это работает: дьявол в деталях

Возьмём обычный трансформер. Он генерирует один токен за шаг. Hy3 заменяет последний слой и слой эмбеддингов так, что модель на каждом шаге выдаёт не один логарифм, а целый набор — по одному на каждый будущий токен. Внутренняя архитектура — модифицированный decoder-only с раздельными головами для каждой позиции в будущем. На практике это выглядит так: запускаешь llama.cpp с флагом --speculative-model hy3-7b.gguf, указываешь --speculative-n-max 5, и вперёд.

./llama-cli -m base-model.gguf --speculative-model hy3-7b.gguf --speculative-n-max 5 -p "Ответь на вопрос" -n 256

Сравнение с альтернативами? Lookahead — устарел, слишком много откатов. Medusa — требует ретренинга, весит как отдельная модель. Eagle — быстрее, но жрёт память как не в себя. Hy3 — золотая середина: размер ~1.5 ГБ в GGUF, не требует тонкой настройки базовой модели, работает из коробки с любой моделью того же размера (например, Llama 3.3 8B, о которой мы недавно писали).

Внимание: Hy3 пока официально поддерживается только в nightly-сборках llama.cpp, собранных с флагом LLAMA_SPECULATIVE=ON. Если юзаете форки вроде BeeLlama.cpp — проверьте, обновлён ли код до circa #29000 (референсный PR — #27400).

Не всё так радужно: качество генерации

Здесь есть нюанс. MTP — палка о двух концах. Если спекулятивная модель (Hy3) недостаточно хороша, то ускорение превращается в замедление. Я проверил на Llama-3.3-8B-Instruct и Qwen2.5-27B. Результаты — в таблице.

МодельБез MTP, t/sС Hy3 (n_max=5), t/sУскорение
Llama 3.3 8B (4-bit)45.268.7+52%
Qwen 2.5 27B (4-bit)18.524.1+30%
StepFun 3.7 Flash (4-bit)22.031.4+43%

Цифры хорошие, но качество? Я прогнал тест на логических задачах. Без MTP — точность 68%, с Hy3 — 65%. Падение в пределах погрешности, но если вам важен каждый процент — лучше отключить. Кстати, LMStudio с их MTP убивает качество совсем по-другому — там из-за кривой реализации rate limit просто режет логиты. Hy3 — честный подход, потери минимальны.

Кому это нужно?

Тем, у кого слабое железо, но хочется скорости. Если у вас RTX 3090/4090, Strix Halo или даже собранная под себя сборка llama.cpp — Hy3 даст прирост без покупки нового GPU. Не рекомендую ставить, если вы работаете с очень короткими промптами (менее 50 токенов) — overhead запуска модели-спекулятора не окупается. И для продакшн-юза где нужен детерминированный вывод — тоже мимо.

💡
Попробуйте --speculative-n-max 3 вместо 5 — ускорение чуть меньше, но качество почти не страдает. Экспериментируйте с параметром, он критичен.

В итоге: Hy3 в llama.cpp — это лучшая реализация MTP на сегодня, если не считать экзотических форков. Интеграция в основной мейнлайн и открытый код (PR #27400, model weights на HuggingFace под Apache 2.0) делают её доступной для любого. Если вы не пробовали спекулятивное декодирование из-за страха потерять качество — Hy3 даёт шанс передумать.

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