i
ДАТАИСТ
Обзор · 2026-07-28

ИИ-агентов научили управлять памятью во время долгих задач

Обложка: ИИ-агентов научили управлять памятью во время долгих задач

Когда у ИИ-агента кончается память посреди дела

В длинных задачах у ИИ-агентов есть проблема: они запутываются в собственных шагах. Поиск в интернете, чтение документов, попытки, откаты, новые гипотезы — всё это накапливается в контексте. В какой-то момент история становится слишком длинной. Модель либо упирается в лимит, либо начинает хуже соображать просто потому, что вокруг слишком много шума.

Новая работа Carnegie Mellon University и Meta предлагает не просто ещё один способ сжимать историю, а другой взгляд на проблему. Авторы называют его ACM — агентное управление контекстом. Идея простая: не внешний костыль решает, когда урезать историю, а сам ИИ-агент. И делает это без потери исходных данных.

Сегодня много разговоров о миллионных окнах контекста, но на практике длинный контекст не отменяет перегрузку. Если вы хотите, чтобы ИИ-агент часами искал ответ, писал код или разбирал репозиторий, ему нужна не просто большая память, а умение ей управлять.

Что не так с обычным сжатием контекста

Стандартный рецепт выглядит так: когда история разрастается до порога, внешний модуль делает сводку, старые сообщения выбрасываются, агент продолжает работать по короткому пересказу. Это лучше, чем ничего, но тут сразу две проблемы.

🟠 При сжатии теряются детали. Если позже понадобится конкретная строчка из старого документа, её уже может не быть.
🟠 Решение о сжатии принимает не сам агент, а жёсткое правило вроде «сжать на 90% окна».
🟠 Такое правило не понимает, что сейчас происходит в рассуждении: агент может быть на важном повороте и как раз использовать старый контекст.
🟠 Чем длиннее задача, тем выше шанс, что сводка упростит историю слишком грубо.

Авторы противопоставляют этому подходу модель, похожую на человеческую память: есть рабочая память для того, что нужно прямо сейчас, и есть внешняя память, куда можно убрать лишнее, но не навсегда.

Схема ACM: обычный агент упирается в лимит, агент со сводкой принудительно сжимает историю, а ACM сам решает, когда убрать контекст без потери исходных сообщений.

В ACM у агента всего два специальных инструмента:

🟣 Управление контекстом — сжать часть прошлой истории в короткую сводку и сохранить исходные сообщения во внешнее хранилище.
🟣 Запрос к памяти — при необходимости достать из внешней памяти ровно тот фрагмент, который нужен сейчас.

Ключевой момент: исходная история не пропадает. Она просто уезжает из рабочего окна во внешнюю память. Поэтому сжатие здесь фактически без потерь.

Что именно предлагают авторы

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

Агент сам решает:

🟠 когда пора расчистить рабочий контекст;
🟠 что именно можно убрать из текущего окна;
🟠 когда стоит обратиться к архиву;
🟠 когда сжатие не нужно и лучше продолжать поиск.

Это звучит естественно, но для современных моделей это неочевидный навык. Даже очень большие модели, как показывают авторы, сами по себе редко начинают грамотно управлять контекстом. Им нужно это отдельно показывать и дообучать на таких траекториях.

Как их этому учат

Здесь самая интересная часть работы. Авторы не просто прикрутили к модели два инструмента, а придумали, как научить её пользоваться ими вовремя.

Схема обучения устроена как связка «ученик — учитель». В роли ученика выступает Qwen3.5-9B, в роли учителя — намного более крупная Qwen3.5-397B-A17B.

Процесс идёт в два прохода:

🟣 Ученик решает задачу без инструментов управления контекстом.
🟣 Ученик решает ту же задачу с инструментами управления контекстом.
🟣 Учитель просматривает обе траектории и исправляет их.
🟣 После этого ученик дообучается на исправленных примерах.

Но важна тонкость. Учитель делает два типа правок.

В первом случае он смотрит на траекторию без ACM и вставляет момент, где управление контекстом стоило бы вызвать. Например, когда агент зациклился, повторяет одни и те же поиски или накопил слишком много лишней истории.

Во втором случае он смотрит на траекторию с ACM и, наоборот, убирает лишнее сжатие. То есть учит модель не только тому, когда надо чистить контекст, но и когда этого делать не надо.

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

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

Что получилось на практике

Авторы проверили ACM на трёх длинных бенчмарках:

🟠 BrowseComp-Plus — сложный агентный поиск;
🟠 DeepSearchQA — многошаговые поисковые вопросы;
🟠 SWE-Bench Verified — задачи по программированию на реальных репозиториях.

Базовое сравнение идёт с ReAct, обычным агентом без управления контекстом, а также с системами, где есть внешнее сжатие по порогу.

Результаты выглядят так: уже просто добавление ACM улучшает поведение агента, а дообучение на специальных траекториях даёт ещё заметный прирост.

Для Qwen3.5-9B авторы сообщают:

🟣 рост качества на 27% относительно ReAct на BrowseComp-Plus;
🟣 рост на 16% на DeepSearchQA;
🟣 рост на 8% на SWE-Bench Verified.

На BrowseComp-Plus точность Pass@1 поднимается с 0.570 у ReAct до 0.727 у версии с ACM после дообучения. При этом модель остаётся на порядок меньше некоторых открытых и закрытых лучших на данный момент систем.

Точность Qwen3.5-9B на BrowseComp-Plus: ReAct, базовый ACM и три эпохи дообучения с ACM. После дообучения растут и средняя точность, и стабильность ответов.

Ещё один важный результат: ACM снижает пиковое давление на контекст. В среднем пиковое число токенов уменьшается примерно на 20% по сравнению с обычным агентом. Это важно не только для качества, но и для стоимости инференса: меньше пик — меньше нагрузка на память сервера и на кэш модели.

Почему качество растёт

Авторы отдельно разбирают поведение агентов, и там видна понятная механика. ACM не просто «экономит токены». Он позволяет агенту дольше исследовать задачу, не захламляя рабочее окно.

На графике роста контекста это выглядит как зубчатая линия: агент периодически сам сокращает историю до того, как упрётся в потолок. В отличие от ReAct, который только накапливает сообщения, ACM делает паузы на уборку и продолжает поиск.

Рост числа входных токенов по ходу решения: у ACM контекст периодически сокращается, поэтому агент может работать дольше и не упирается в лимит так быстро.

Из этого следуют три эффекта.

🟠 Агент может делать больше шагов поиска и проверки.
🟠 В рабочем контексте меньше мусора от старых тупиковых веток.
🟠 Ответы становятся стабильнее между разными прогонами одной и той же задачи.

Последний пункт особенно интересен. Авторы смотрят не только на Pass@1, но и на метрики, которые показывают согласованность между несколькими независимыми запусками. ACM улучшает не только «потолок возможностей», но и повторяемость. Проще говоря, модель не просто иногда находит правильный путь, а чаще удерживает его до конца.

Один показательный пример

В статье есть наглядный кейс с многошаговым вопросом из BrowseComp-Plus, где нужно связать несколько ограничений из биографии автора, диссертации, соавторства и даты основания ресторана. Без управления контекстом базовая модель во всех четырёх прогонах не справилась.

Версия с ACM вела себя иначе:

🟣 следила за размером текущего контекста;
🟣 несколько раз вызывала управление контекстом;
🟣 по мере надобности обращалась к внешней памяти;
🟣 продолжала поиск, пока не собрала все подтверждения;
🟣 завершила решение только когда контекст снова стал компактным.

В этой траектории «сырая» история разрослась до 222 тысяч токенов, но рабочее окно оставалось ниже лимита базовой модели. То есть агент фактически решил задачу, которая без внешней памяти развалилась бы задолго до финиша.

Пример длинной траектории с ACM: агент сам следит за размером контекста, чередует сжатие и запросы к памяти и проходит путь, который без этого превысил бы лимит окна.

Это, пожалуй, самый убедительный фрагмент статьи. Здесь видно, что речь не о косметическом улучшении запроса к модели, а о новой рабочей привычке агента.

Что важно в сравнении с большими моделями

Есть ещё одно любопытное наблюдение. Даже GPT-5.5 в этой архитектуре почти не пользуется инструментами управления контекстом. То есть сама по себе большая модель не обязательно начинает грамотно чистить память, даже если такая возможность у неё есть.

Это важно по двум причинам.

Во-первых, навык управления контекстом не появляется автоматически вместе с ростом модели.

Во-вторых, просто дистиллировать решения от сильной модели недостаточно. Если учитель решил задачу без вызова памяти, ученик не увидит нужного поведения. Поэтому авторы и делают ставку на специальные данные, где моменты для сжатия и для отказа от сжатия размечаются явно.

Кстати, отдельный эксперимент это подтверждает. Простая дистилляция от GPT-5.5 не даёт такого же прироста, как обучение именно на данных ACM. А комбинация обоих подходов работает лучше всего на части задач.

Где у подхода границы

Авторы честно показывают и ограничение: ACM полезен не для любой модели. Если модель слишком слабая и сдаётся после двух-трёх шагов, ей нечем управлять. Контекст просто не успевает стать длинным.

Они приводят пример с более маленькой моделью на 4B параметров. Та почти всегда делает один поиск, затем быстро угадывает ответ и завершает траекторию. До проблем длинного горизонта она просто не доходит. Значит, инструменты памяти здесь бесполезны не потому, что плохи, а потому что базовая способность держать длинное рассуждение ещё не дотягивает.

Это важное уточнение для рынка ИИ-агентов. Управление контекстом — не замена способностям модели, а надстройка над ними. Сначала агент должен уметь долго и осмысленно работать, и только потом ему начинает всерьёз помогать память.

Вывод

Длинные задачи ломают ИИ-агентов не только размером окна, но и беспорядком внутри него. ACM предлагает простой и практичный ответ: превратить управление контекстом в собственное действие агента, а не во внешний таймер со сводкой.

Из результатов видно несколько вещей:

🟠 без потерь хранить старую историю лучше, чем безвозвратно заменять её сводкой;
🟠 решение о сжатии должно зависеть от хода рассуждения, а не только от процента заполнения окна;
🟠 отдельное обучение моментам «когда сжимать» и «когда не сжимать» даёт заметный прирост на длинных задачах;
🟠 управление контекстом улучшает не только точность, но и длину исследования, и повторяемость решений.

Если ИИ-агенты и дальше будут двигаться в сторону долгих автономных задач — глубокого поиска, работы с кодом, сложных цепочек инструментов, — такие механики почти неизбежно станут базовой частью стека. Не потому, что контекстные окна маленькие, а потому, что даже большое окно нужно уметь держать в порядке.

ИИ-обзоры простыми словами

Каждый день читаем свежие статьи об ИИ и пересказываем главное естественным языком — без хайпа и воды. Если хотите понимать, куда движутся ИИ-агенты раньше остальных, — подписывайтесь.

Новые обзоры — каждый день

В Telegram