Главная / Статьи / BitNet и Cassandra: как тернарные веса ускоряют локальные LLM на CPU

BitNet и Cassandra: как тернарные веса ускоряют локальные LLM на CPU

Шесть выводов о 1,58-битном BitNet, спекулятивном декодировании и фреймворке Cassandra: до 6,17 раза быстрее на x86, на 82,2% меньше энергии и без потери точности.

949 слов

Запуск большой языковой модели на собственной машине всегда напоминал попытку поставить реактивный двигатель в хэтчбек. Требования к памяти душат потребительские ноутбуки, а генерация ползёт по одному токену, превращая простой вопрос в изматывающее испытание для батареи. Годами считалось, что умным моделям нужны большая точность, больше мощности и более дорогой кремний — именно это и называют «GPU-рвом».

Это убеждение даёт трещину. Две идеи, тернарные веса и самоспекулятивное декодирование, намекают, что сейчас у ИИ эпоха «Модели T»: грубая первая версия того, что со временем будет повсюду. Когда умная архитектура заменяет железо «в лоб», меняется экономика. Вот шесть выводов из недавних работ о тернарных моделях и инференсе на периферийных устройствах.

1. Веса всего с тремя значениями

Идея 1-битных LLM опирается на архитектуру BitNet b1.58, где каждый параметр может принимать только одно из трёх значений: -1, 0 или 1. Это кажется нелогичным, ведь обычно считается, что большая точность даёт лучшие рассуждения. Тем не менее чекпойнт BitNet b1.58 2B4T, у которого 2,4 миллиарда параметров и 4 триллиона токенов обучения, работает на уровне полноточных моделей FP16 и BF16.

Секрет кроется в железе. Обычная модель заставляет процессор выполнять дорогие и прожорливые умножения с плавающей точкой. BitNet заменяет их простыми условными сложениями. С операциями на таблицах поиска (LUT) чип может вообще обойтись без блоков с плавающей точкой. Умножители занимают много площади кристалла, а сложения вычисляются дёшево. Простота снова в моде.

2. Спекулятивное декодирование как игра в угадайку

Чтобы понять, почему такие модели быстры, вспомните, что инференс LLM упирается в память. Когда вы запускаете модель локально, предел задаёт не скорость «мышления» процессора, а скорость, с которой веса перемещаются из памяти в процессор. Арифметическая интенсивность низкая, поэтому железо часто простаивает в ожидании данных.

Спекулятивное декодирование бьёт как раз в это узкое место. Маленькая быстрая черновая модель предлагает последовательность токенов, а большая модель проверяет их параллельно. Это работает по двум причинам:

  • Предсказуемость: некоторые токены легко угадать, например «York» после «New».
  • Параллельная проверка: проверить пять догадок стоит примерно столько же, сколько сгенерировать один токен, потому что целевая модель обрабатывает весь пакет за один проход по своей памяти.

3. Cassandra и преимущество без обучения

Обычному спекулятивному декодированию нужна отдельно обученная черновая модель. Фреймворк Cassandra обходится без неё. Он строит толковый черновик из самой исходной модели, применяя неструктурированное прореживание значений и усечение мантиссы.

Представьте одного пользователя на ноутбуке или телефоне, где пакеты маленькие. Узкое место смещается с механизма внимания на загрузку весов для полносвязной сети (FFN). Cassandra находит самые значимые биты, те, что действительно определяют результат, и загружает эти данные для спекуляции первыми. Выигрыш достигает 2,41 раза относительно базового BFloat16 — ускорение, характерное именно для периферии, которое оптимизации для дата-центров повторить не могут.

4. Скорость чтения человека на обычном CPU

Всё это ведёт к демократизации: прочь от корпоративных GPU за 30 000 долларов, к обычным потребительским чипам. Технические отчёты BitNet показывают большой выигрыш против моделей FP16:

  • ARM: в 1,37–5,07 раза быстрее
  • x86: до 6,17 раза быстрее

Главный результат — модель на 100 миллиардов параметров на одном CPU со скоростью 5–7 токенов в секунду. Примерно с такой скоростью читают люди, так что огромные модели становятся пригодными на обычном офисном железе. Фреймворк bitnet.cpp можно попробовать самому:

# Running inference with the 1-bit 2B4T model
python run_inference.py -m models/BitNet-b1.58-2B-4T/ggml-model-i2_s.gguf -p "Explain the significance of ternary logic." -cnv

5. Экономия энергии на 82,2%

Эффективность важнее всего для мобильных устройств. На x86 BitNet b1.58 снижает энергопотребление на 82,2%, на ARM — на 70%. Для вас это значит модели, которые не высаживают батарею ноутбука и не требуют мощного охлаждения, как топовые GPU. Это не просто приятная мелочь. Это условие, без которого ИИ не переедет из облака в карман, с постоянно включённым интеллектом прямо на устройстве, который не сбрасывает частоты от перегрева.

6. Сжатие без обрыва точности

Часто считают, что сжатие модели разрушает её способность рассуждать. Для «думающих» моделей вроде DeepSeek-R1-Distill-Llama-8B и Qwen3-8B-Thinking точностью жертвовать нельзя, а прореживание с потерями часто проваливается как раз на сложной логике.

Нагляднее всего это видно на бенчмарке математических рассуждений AIME2025. При прямом сравнении прореживание Wanda, популярный метод с потерями, не дало ни одного правильного ответа — результат 0%. Cassandra и BitNet сохраняют исходную модель нетронутой. Вот как выглядят обе стороны:

  • Сжатие с потерями через Wanda: вредит рассуждениям и выбрасывает нюансы сложной логики, 0% на AIME2025, провал на каждой задаче.
  • Cassandra-1 и BitNet: сохраняют полную точность целевой модели, результаты без потерь совпадают с BFloat16.

Конец умножителей?

Вырисовывается то, что можно назвать красноречивой простотой. Переход от прожорливых до кремния умножителей к простым сложениям и умному угадыванию намекает, что GPU-ров не так широк, как казалось. Следующим шагом, вероятно, станут ASIC и ускорители на таблицах поиска, созданные только для 1-битной логики. Если модели на 100 миллиардов параметров работают на обычном офисном CPU со скоростью чтения человека, препятствием для продвинутого ИИ перестаёт быть чип за 30 000 долларов. Всё сводится к тому, чтобы считать умнее.