Проблема бесконечного роста контекста
В современных LLM-агентах (например, в системах типа AutoGen или LangChain) часто используется статический файл контекста (например, system_prompt.txt), который загружается в начале сессии. Ключевая проблема заключается в том, что каждый токен в этом файле «обнуляется» и заново обрабатывается в каждом раунде диалога, потребляя бюджет внимания. Практика показывает, что кураторы (люди или скрипты) склонны просто дописывать новые инструкции в конец файла, что приводит к его раздуванию и деградации производительности модели.
Математическая модель: Ограниченный ассортимент
Авторы (Zexuan Liu, Yuning Yang, Tiancheng Zhao) формализовали эту задачу как задачу о емкостном ассортименте (capacitated assortment problem). Они доказали, что существует верхняя граница оптимального размера файла, независимо от количества доступных кандидатов. Простое добавление всех инструкций с положительной «стоимостью» может быть произвольно хуже, чем выбор оптимального подмножества.
Эмпирические данные: Влияние на комплаенс
Эксперименты подтвердили, что нерелевантные правила, извлеченные из реальных файлов контекста, существенно снижают уровень выполнения инструкций (compliance) языковой моделью. Ниже приведена сводка ключевых выводов исследования:
| Параметр | Наблюдение/Результат | Значение для разработчика |
|---|---|---|
| Механизм загрузки | Каждый токен контекста заряжается заново в каждом раунде | Рост файла линейно увеличивает задержку и стоимость сессии |
| Стратегия кураторства | Добавление (append) всех инструкций | Приводит к произвольно худшему результату по сравнению с отбором |
| Обратная связь | Цензурированная (Censored Feedback) | Мы видим пользу добавленных правил, но вред удаленных — только если их отсутствие вызвало ошибку |
| Риск удаления | Удаление «игнорируемых» инструкций | Может случайно удалить полезные правила, так как агент их не использует, но они нужны для сложных кейсов |
Решение: Учет «цензурированной обратной связи»
Основная сложность оптимизации контекста заключается в том, что обратная связь от агента является цензурированной. Мы видим, как работают загруженные инструкции, но не видим эффекта от тех, которые были удалены, если они не вызвали сбой. Авторы показывают, что удаление инструкций, которые агент игнорирует, неизбежно может привести к потере полезных правил. Исследование предлагает методы оценки того, сколько доказательств (истории сессий) нужно собрать, прежде чем добавлять новую инструкцию, и дает оценку регрета (regret) при ограниченных возможностях ручной проверки редакторами.
Почему это важно
Для разработчиков AI-агентов это означает, что «накопление» промптов — тупиковый путь. Необходимы системы автоматического отбора контекста, которые учитывают не только добавление новых правил, но и их периодическую ревизию с учетом того, что отсутствие инструкции не всегда равносильно ее бесполезности. Это критично для создания стабильных, дешевых и быстрых агентов, работающих с длинными сессиями.
Источник: arXiv cs.AI ↗
