Hugging Face Daily Papers→ оригинал

Conditional Program сжимает n-gram память DeepSeek с 203 до 51 ГБ при 2 битах

Условная память расширяет ёмкость языковой модели через выборочный поиск по таблице, но хранить приходится всю таблицу целиком. Авторы новой работы представили Conditional Program (CP): каждая строка кодируется коротким 2-битным кодом и локальным масштабом, а программа реконструкции общая для всей таблицы. В основе гауссова решётка (trellis), восстановление нормы и независимо декодируемые записи строк. Выходная KL-дивергенция падает на 41–63% относительно 2-битного round-to-nearest. Для DeepSeek таблица уменьшается с 203 до 51 ГБ. - Две бита на код, локальный масштаб на строку - KL ниже на 41–63% при том же битовом бюджете - 203 ГБ → 51 ГБ, таблица помещается на GPU

AI-обработка оригинала Hugging Face Daily Papers; редакция Hamidun News
Conditional Program сжимает n-gram память DeepSeek с 203 до 51 ГБ при 2 битах
Источник: Hugging Face Daily Papers. Коллаж: Hamidun News.
◐ Слушать статью

Таблицы n-gram памяти дают языковой модели дополнительную ёмкость почти без роста вычислений: на каждый токен читается лишь несколько строк. Но платить за это приходится объёмом. Чтобы ответить на любой возможный вход, в доступе должна лежать вся таблица. Новая работа с Hugging Face Daily Papers предлагает формат Conditional Program (CP), который хранит строки в двух битах на код и восстанавливает только те, что запросил вход. Для таблицы DeepSeek размер падает с 203 до 51 ГБ, а выходная KL-дивергенция оказывается на 41–63% ниже, чем у наивного 2-битного округления.

Как устроен CP

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

Авторы реализуют это тремя компонентами. Первый — гауссова решётка (trellis), то есть структурированный кодбук, в котором код выбирает путь по решётке, а не запись в явном списке. Второй — восстановление нормы: после декодирования длина вектора возвращается к исходной, чтобы квантование не сдвигало масштаб активаций. Третий — независимо декодируемые записи строк. Это ключевое требование для условной памяти: чтобы прочитать одну строку, не нужно разжимать соседние блоки.

Именно последнее отличает задачу от обычного сжатия весов. Там декодирование идёт пачками по слоям. Здесь обращение случайное и редкое, и формат должен выдерживать произвольный доступ.

Что показали измерения

Авторы проанализировали три обученных семейства n-gram памяти. Вывод двойной. Статистика отдельных координат близка к гауссовой, поэтому гауссова решётка подходит. При этом между строками остаются выученные связи, и их нельзя считать шумом. Тем не менее при одинаковом бюджете хранения общая решётка обошла и подогнанные под данные кодбуки, и варианты с низкоранговой поправкой (low-rank residual), которые проверяли авторы.

Ключевые цифры из аннотации:

  • код: 2 бита на элемент плюс локальный масштаб на строку;
  • выходная KL ниже на 41–63% относительно 2-битного round-to-nearest;
  • таблица DeepSeek: 203 ГБ → 51 ГБ, то есть примерно в 4 раза;
  • формат: общая программа реконструкции, независимые записи строк;
  • проверка на трёх семействах обученных n-gram memory.

Отдельно про четырёхкратный выигрыш. Если исходная таблица хранится в 16 битах, чистые 2 бита дали бы восьмикратное сжатие. Откуда разница, в аннотации не сказано. Накладные расходы на масштабы и записи строк могут быть частью объяснения, но это стоит проверить по полному тексту статьи.

Практика: куда уходит освободившаяся память

Главный практический эффект сформулирован в самой работе: когда таблица лежит на GPU, освободившиеся гигабайты можно отдать под более крупные нагрузки. Это длиннее контекст, больше одновременных запросов, крупнее батч. Память видеокарты почти всегда упирается в KV-кэш, и 150 ГБ экономии на таблице напрямую превращаются в запас под него.

Для команд, которые разворачивают модели с условной памятью, есть ещё один вариант. Таблицу в 51 ГБ проще держать целиком на ускорителе, чем 203 ГБ, и не выносить её в хост-память с задержками на каждое обращение. Это снимает один из главных аргументов против n-gram памяти в продакшене.

Осторожность тоже нужна. Метрика качества в аннотации — KL выходного распределения, а не набор бенчмарков по задачам. Прежде чем закладывать CP в инференс-стек, нужно посмотреть, как 2-битная таблица ведёт себя на реальных задачах и какова стоимость декодирования строки на GPU при высокой нагрузке. Но направление понятно: у условной памяти теперь есть способ платить за ёмкость не терабайтами, а десятками гигабайт.

ЖХ
Hamidun News
AI‑новости без шума. Ежедневный редакторский отбор из 50+ источников. Продукт Жемала Хамидуна, Head of AI в Alpina Digital.
✦ Образовательная экосистема

Системное обучение работе с ИИ и AI-агентами

Образовательная платформа Vibe Academy (vibe-academy.ru) — практические курсы, промпт-инжиниринг, автоматизация процессов и прикладные AI-воркфлоу.

Перейти в Vibe Academy →Интенсив по Вайб-кодингу
Что вы думаете?
Загружаем комментарии…