Исследователи Intel представили BITCOS — формат хранения весов тернарных языковых моделей. Он сокращает расход памяти до 1,485 бита на вес и одновременно ускоряет генерацию текста на протестированном оборудовании.
Тернарные модели используют только три значения веса: −1, 0 и +1. Если они встречаются одинаково часто, для одного веса в среднем нужно около 1,585 бита. На практике стандартная упаковка и выравнивание блоков повышают расход до 1,625 бита.
Авторы работы — исследователи Intel Евангелос Георганас, Александр Хайнеке и Прадип Дубей — изучили 29 контрольных точек из семи семейств моделей. Доля нулевых весов в них составила от 29,66% до 51,48%. В 26 случаях из 29 нулей оказалось достаточно, чтобы BITCOS был компактнее обычной упаковки.
Формат хранит отдельную битовую карту: один бит показывает, равен ли вес нулю. Затем для каждого ненулевого веса записывается еще один бит со знаком. Чем больше нулей в модели, тем меньше места занимает второй массив.
Порог выгоды начинается при доле нулей выше 37,5%. У модели с показателем 51,48% формат потребовал 1,485 бита на вес без учета служебных масштабов. Противоречия с теоретическим пределом нет: оценка 1,585 бита относится к трем равновероятным значениям, а BITCOS использует их реальное неравномерное распределение.
Формат точно восстанавливает исходные веса, не требует переобучения модели и рассчитан непосредственно на инференс. Авторы реализовали операции распаковки и умножения матриц для процессоров с AVX2 и AVX-512, а также для графики Intel Xe2.
В тестах внутри vLLM скорость декодирования относительно 2-битной реализации выросла максимум в 1,18 раза на CPU и в 1,27 раза на GPU. На восьмиядерном Lunar Lake ускорения не было: узким местом стала распаковка весов.
Результаты опубликованы 14 сентября 2026 года как препринт arXiv и пока не прошли независимую проверку.