Declarative Attention: языковые модели сами объявляют, куда «смотреть», и экономят до 52% чтения KV-кэша

Языковые модели с длинным контекстом тратят внимание на небольшую долю токенов, но при генерации каждого токена ответа вынуждены читать весь KV-кэш целиком: если пользователь спрашивает про деталь, упомянутую в начале разговора на миллион токенов, слои полного внимания всё равно сканируют весь контекст. Существующий способ сэкономить на этом, заранее отобрать релевантные токены с помощью лёгких вспомогательных оценок («прокси-скоров»), но такая внешняя оценка всё равно требует O(N) операций на каждый шаг генерации.
Авторы предлагают другой, «внутренний» подход, отталкиваясь от простого наблюдения: модель, по идее, и так знает, какая часть контекста ей нужна. Протокол называется Declarative Attention (DA, «декларативное внимание»): модель прямо в цепочке рассуждений (chain-of-thought) объявляет, куда ей нужно посмотреть, и генерация делится на три режима,
DA проверили в режиме zero-shot (без дообучения) на готовых моделях Gemma-4-31B и Qwen-3.6-27B на 15 задачах с длинным контекстом. Протокол существенно сократил общее число токенов, к которым модель обращается при декодировании: на 52,0% для Gemma-4-31B и на 31,1% для Qwen-3.6-27B, при этом точность просела умеренно, на 1,27 п.п. и 2,75 п.п. соответственно, причём просадка точности уменьшается с ростом размера модели. Сами 15 задач по отдельности не названы, замеров задержки, скорости или потребления памяти в работе нет, только доля токенов, которые модель прочитала при декодировании. Авторы называют DA новой осью для разреженного внимания и отмечают, что дальнейший потенциал открывают методы с дообучением, но реализованной обученной версии DA в работе нет, это только направление для будущей работы.
Ключевые факты
- Проблема: модель значимо использует лишь малую часть длинного контекста, но при генерации каждого токена вынуждена читать весь KV-кэш целиком
- Существующий обходной путь, заранее отобрать нужные токены внешними «прокси-оценками», но это всё равно требует O(N) операций на шаг
- Протокол Declarative Attention: модель сама объявляет в цепочке рассуждений режим внимания,
(весь контекст), (конкретная область) или (только недавний текст), и движок инференса пропускает чтение остального KV-кэша - На 15 задачах с длинным контекстом, без дообучения, DA снизила число прочитанных токенов на 52,0% для Gemma-4-31B (точность просела на 1,27 п.п.) и на 31,1% для Qwen-3.6-27B (просадка 2,75 п.п.); просадка точности уменьшается с ростом модели
- Замеров реальной задержки, скорости или памяти в работе нет, только доля прочитанных токенов; обученная версия DA не реализована, только предложена как направление будущей работы
Почему это важно
Инференс с длинным контекстом упирается в то, что модель должна читать весь KV-кэш при генерации каждого токена, даже когда реально нужна лишь небольшая его часть. Существующие способы сэкономить требуют отдельного, внешнего механизма отбора токенов, который сам по себе стоит O(N) операций на шаг, экономия на чтении не отменяет затрат на отбор. Declarative Attention решает это иначе: вместо внешнего скоринга модель сама, в собственной цепочке рассуждений, объявляет, какая часть контекста ей нужна, и движок инференса использует это объявление напрямую, как вызов инструмента.
Кому это важно
Инженерам, которые строят и обслуживают инференс-инфраструктуру для LLM с длинным контекстом, в первую очередь там, где разговоры или документы разрастаются до сотен тысяч и миллионов токенов: длинные диалоги, ИИ-агенты с большой историей действий, работа с объёмными документами. Также это интересно исследователям разреженного внимания (sparse attention) как новый, ранее не исследованный подход, управление вниманием со стороны самой модели, а не внешнего алгоритма.
Как это применить
DA, это протокол, а не отдельная модель: он работает поверх готовых, уже обученных языковых моделей без дообучения (zero-shot), что и было показано на Gemma-4-31B и Qwen-3.6-27B. Модель в процессе рассуждения помечает нужный режим внимания, полный контекст, конкретную область или только недавний вывод, а инференс-движок разбирает эти пометки как вызовы инструментов и физически не читает лишние части KV-кэша. Практический эффект, прямое снижение доли прочитанных при декодировании токенов (в теории это отдельная экономия по вычислениям и, вероятно, по задержке, хотя сами эти замеры авторы не приводят).
Можно ли доверять
Работа опирается на конкретные числа по двум открытым моделям (Gemma-4-31B, Qwen-3.6-27B) и 15 задачам с длинным контекстом, но сами задачи поимённо не перечислены, а из практических метрик приведена только доля прочитанных токенов, без замеров реальной задержки, скорости инференса или потребления памяти, которые обычно и волнуют инженеров на практике. Протестирован только zero-shot вариант на готовых моделях; версия с дообучением, которая по словам авторов должна раскрыть больший потенциал, в работе не реализована и не проверена, это декларация о будущей работе, а не результат. Авторы и организации в тексте источника не указаны.
Риски и подводные камни
Экономия на чтении KV-кэша достаётся не бесплатно: точность просаживается умеренно, на 1,27 процентного пункта для более крупной модели и на 2,75 процентного пункта для менее крупной, хотя авторы отмечают, что просадка сокращается с ростом модели. Метод зависит от того, что модель верно определяет, какая часть контекста ей действительно нужна, ошибочная декларация режима в принципе может привести к тому, что модель упустит важный фрагмент контекста. Заявленная экономия токенов пока не подтверждена измерениями реальной задержки или памяти, а более сильный, обучаемый вариант протокола существует только как предложение для будущих исследований.