Головная боль по имени Bonsai
Вы скачали новую 1-битную модель Bonsai - ту самую, что обещает скорость света при крошечном размере. А потом пытаетесь запустить ее через обычный llama.cpp. Результат? Ошибка сегментации. Черный экран. Или, что еще хуже, модель загружается, но выдает абракадабру. Знакомо? Поздравляю, вы столкнулись с багом, который полгода не могли почить.
1-битное квантование Bonsai - технология 2025 года, которая к началу 2026-го все еще ломала совместимость. Оригинальный llama.cpp не понимал новый формат упаковки весов. Но энтузиасты не стали ждать официальных исправлений.
Что внутри этого форка? (Кроме исправленных багов)
Это не просто заплатка на одну модель. Разработчики переписали часть ядра декодирования, чтобы корректно обрабатывать 1-битные упаковки. Старые версии llama.cpp считали, что бит всегда занимает целый байт - смешно, но так оно и было.
Теперь работает:
- Поддержка Q1_K_S, Q1_K_M для всех архитектур моделей (Llama, Bonsai, Command R)
- Исправления для AVX512 инструкций на новых Intel CPU - раньше здесь были падения производительности на 40%
- Стабильная работа с ROCm 6.2 (последняя стабильная версия на апрель 2026)
- Поддержка много-GPU конфигураций для AMD карт серии RDNA 4
Не путайте этот форк с другими! Основной репозиторий llama.cpp уже включает некоторые исправления, но для полной совместимости с Bonsai и оптимизацией под AMD все еще нужна эта кастомная сборка. Проверяйте дату последнего коммита - если он старше февраля 2026, ищите более свежий форк.
Альтернативы? Их почти нет
Можно попробовать Ollama или Text Generation WebUI. Результат будет одинаковым - они используют ту же библиотеку llama.cpp под капотом. Если в ней баг, он проявится везде.
Некоторые пытаются использовать трансформеры от Hugging Face с кастомными загрузчиками. Это работает, но скорость инференса в 5-10 раз ниже. Для 1-битных моделей смысл теряется - вы же за скоростью гонитесь, верно?
1 Готовим поле боя: система и зависимости
Забудьте про Windows для этой задачи. Даже с WSL2 вы потеряете 15-20% производительности на переключении контекста. Мы используем Linux. Конкретно - Fedora 41 или Ubuntu 24.10, потому что их пакеты ROCm наиболее свежие.
Если у вас AMD железо, рекомендую посмотреть нашу статью про настройку Ryzen AI Max+ 395 - там есть все детали по подготовке системы.
Устанавливаем базовые зависимости:
# Для Fedora 41
sudo dnf install -y git cmake gcc-c++ python3-pip vulkan-loader mesa-vulkan-drivers
# Для ROCm (если будем использовать AMD GPU)
sudo dnf install -y rocm-hip-sdk rocm-opencl-sdkROCm 6.2 требует ядра Linux не старше 6.8. Fedora 41 идет с 6.10, так что проблем не будет. На Ubuntu может потребоваться обновление ядра вручную.
2 Качаем и собираем правильный llama.cpp
Клонируем форк с исправлениями. На апрель 2026 актуальный репозиторий здесь:
git clone https://github.com/amd/llama.cpp
cd llama.cpp
mkdir build && cd buildТеперь важный момент: флаги сборки. Для CPU с поддержкой AVX512:
cmake .. -DLLAMA_AVX512=on -DLLAMA_AVX512_VBMI=on -DLLAMA_AVX512_VNNI=on -DCMAKE_BUILD_TYPE=ReleaseДля AMD GPU через ROCm:
cmake .. -DLLAMA_HIPBLAS=on -DLLAMA_AVX512=on -DCMAKE_BUILD_TYPE=Release -DAMDGPU_TARGETS="gfx1100;gfx1102"Флаг AMDGPU_TARGETS указывает архитектуру вашей карты. Для RDNA 4 (серия RX 9000 и R9700) это gfx1100. Для iGPU RDNA 3.5 в Ryzen AI Max+ - gfx1102. Не угадаете - сборка пройдет, но производительность упадет в разы.
3 Запускаем Bonsai 1-bit: магия начинается
Скачиваем модель. На 2026 год самые популярные Bonsai 1-bit модели - Bonsai-7B-1bit и Bonsai-13B-1bit. Формат файла обычно .gguf с квантованием Q1_K_S.
Для CPU инференса (только если у вас мощный процессор с AVX512):
./main -m /путь/к/Bonsai-7B-Q1_K_S.gguf -p "Твой промпт здесь" -n 512 -t 16 -c 4096Флаг -t указывает количество потоков. Для 16-ядерного процессора ставьте 16. Но не больше физических ядер - будет только хуже.
Для AMD GPU через ROCm:
./main -m /путь/к/Bonsai-7B-Q1_K_S.gguf -p "Твой промпт здесь" -n 512 -c 4096 --gpu-layers 35Ключевой параметр --gpu-layers. Для 7B модели ставим 35-40 слоев на GPU, остальное на CPU. Как определить оптимальное значение? Методом тыка. Начните с 20, увеличивайте, пока не увидите падение производительности или нехватку VRAM.
Цифры, которые имеют значение
На тестовой системе (Ryzen 9 9950X, 128GB DDR5, AMD R9700 32GB) получаем такие результаты для Bonsai-7B-1bit:
| Бэкенд | Токенов/сек | Загрузка VRAM | Примечание |
|---|---|---|---|
| CPU (AVX512, 16 потоков) | 45-55 | 0 ГБ | Ест 90 Вт, греется |
| AMD R9700 (ROCm 6.2) | 120-140 | 4.2 ГБ | Тихий, 65°C |
| Комбинированный (GPU+CPU) | 85-95 | 2.8 ГБ | Самый стабильный вариант |
Да, GPU версия в 2.5 раза быстрее. Но не обольщайтесь - это только для 1-битных моделей. С 4-битными разница будет меньше.
Кому это вообще нужно?
Этот форк - не для всех. Если у вас NVIDIA карта, вам он не нужен. Если вы запускаете только стандартные Llama или Mistral модели, тоже.
А вот если вы:
- Экспериментируете с экстремальным квантованием (1-бит, 2-бит)
- Имеете AMD железо и хотите выжать из него максимум
- Собираете бюджетную AI станцию, как в нашем гайде про 2x AMD R9700
- Работаете на мини-ПК с Radeon 780M (тут без этого форка вообще никак)
Тогда эти инструкции спасут вам кучу нервов и времени.
Что дальше? (Спойлер: Vulkan не спасет)
Многие спрашивают: а почему не использовать Vulkan бэкенд? Он же кроссплатформенный! На бумаге - да. На практике - Vulkan драйверы AMD для Linux все еще сырые для задач LLM. Особенно для 1-битных вычислений.
ROCm 6.2 - пока единственный стабильный путь для AMD GPU. Да, его установка напоминает квест. Да, иногда ломается после обновления ядра. Но альтернатив нет.
Мой прогноз на конец 2026: AMD наконец-то выпустит драйверы Vulkan с полной поддержкой 1-битных операций. И тогда все эти костыли с форками станут не нужны. Но пока что берите то, что работает. И не забывайте делать бэкапы системы перед установкой ROCm.