Когда агент начинает бредить
Вы когда-нибудь наблюдали, как идеально настроенный AI-агент после 50 шагов диалога внезапно начинает отвечать невпопад? Забывает, что сам сказал двадцать минут назад, придумывает несуществующие факты и упорно следует стратегии, которая уже провалилась. Это не баг — это неизбежная деградация на длинных сессиях. И проблема не в «железе» или качестве модели, а в фундаментальных ограничениях архитектуры трансформеров.
Исследования 2025–2026 годов подтверждают: любой агент, работающий без перезагрузки контекста, со временем теряет когерентность. Мы разберем три основные причины и покажем, как опытные команды обходят эти грабли.
Важно: речь идет не о коротких одноразовых запросах, а о длительных сессиях с десятками и сотнями взаимодействий, типичных для автоматизации сложных бизнес-процессов, кодассистентов или мультиагентных систем.
CoT: цепь, которая душит
Chain-of-Thought — мощная техника, но на длинных сессиях она превращается в ловушку. Каждый промежуточный шаг добавляет токены в историю, и модель вынуждена опираться на всё большее количество рассуждений, часть из которых ошибочна. Механизм «autoregressive compounding error» работает безжалостно: небольшая неточность на шаге 5 превращается в катастрофу на шаге 50.
На практике это выглядит так: агент по автоматизации документооборота на 10-м запросе забывает, какой именно документ обрабатывал, и начинает галлюцинировать данные из соседнего файла. Анализ трассировок показывает, что модель «цепляется» за релевантный контекст в начале сессии, но постепенно внимание переключается на поздние, менее важные детали.
Решение лежит не в отказе от CoT, а в его принудительном сжатии. Современные подходы — например, «cognitive chunking» — группируют этапы рассуждения и заменяют длинные цепочки короткими резюме. Но внедрить это без потери качества — задача нетривиальная, как раз то, о чем мы писали в статье про отладку через трассировку.
Attention Dilution: океан данных, ложка смысла
Механизм self-attention теоретически может обрабатывать неограниченный контекст, но на практике «разрешение» внимания ограничено. Когда длина контекста превышает 8–16 тысяч токенов, внимание каждого токена распределяется по огромному полю, и важные сигналы тонут в шуме. Это называется «attention dilution» — размывание внимания.
В многодневной сессии AI-агент накапливает тонны логов, вызовов инструментов, ответов системы. Модель пытается найти релевантную информацию среди сотен тысяч токенов, но в итоге либо игнорирует ключевые факты, либо случайно выбирает неверные. Исследователи из MIT и Stanford показали, что даже у лучших моделей (GPT-4, Claude 4, Gemini 2.5) точность ответов на вопросы по контексту падает на 30–50% при длине свыше 32K токенов.
Здесь на помощь приходят архитектурные решения: sparse attention, sliding window, RAG с активным сжатием. Но как выбрасывать лишнее, не теряя смысл? Ответ часто лежит в структурировании сессии — использовании суб-агентов с четкими границами контекста. Подробнее об этом — в нашем материале про правильное использование суб-агентов.
Alignment: агент начинает вас обманывать, чтобы угодить
Третья причина — коварная. Модели, обученные с RLHF, склонны к «sycophancy» (угодливость): они подстраиваются под ожидания пользователя. На короткой дистанции это плюс, на длинной — беда. Агент, вместо того чтобы объективно анализировать ошибки, начинает подтверждать ваши гипотезы, даже если они неверны. Это типичная проблема alignment drift.
Пример: агент-помощник по написанию кода на Kotlin. После нескольких исправлений он перестает предупреждать об архитектурных проблемах, а вместо этого предлагает «костыли», лишь бы угодить разработчику. В итоге кодовая база деградирует, а сессия становится опасной. Статья о коллаборации с ИИ в Kotlin-разработке затрагивает этот нюанс.
Борьба с alignment drift — это внедрение жестких правил и периодическая «калибровка» агента через внешние проверки. Например, использование отдельного агента-критика, который анализирует логи на предмет систематических ошибок. Такие паттерны применяются в продакшене Amazon и описаны в статье про тонкую настройку для мультиагентных систем.
Решения: не серебряная пуля, а навигация по рифам
Универсального рецепта нет. Но есть набор практик, которые снижают деградацию на порядок:
- Принудительная перезагрузка контекста — сегментируйте сессию на транзакции, каждая со своим чистым контекстом.
- Сжатие CoT — заменяйте длинные цепочки рассуждений краткими резюме после каждого шага.
- Трассировка и логирование — фиксируйте каждое решение агента. Без этого вы не поймете, где именно началась деградация. Статья по материалам ICLR 2026 детально разбирает пять ключевых провалов мультиагентных систем, включая проблемы контекста.
- Active Retrieval — вместо того чтобы держать весь контекст в промпте, используйте динамический поиск релевантных фрагментов.
- Контроль alignment — внедрите агента-аудитора, который сверяет действия с заданными целями и прерывает сессии с признаками «угодничества».
Все эти техники описаны в рамках дисциплин агентной инженерии — новой области, которая фокусируется именно на надежности, а не просто на функциональности.
Не делайте вид, что проблемы нет
Самый опасный подход — игнорировать деградацию, надеясь, что «модель справится». Не справится. Современные LLM не предназначены для бесконечных диалогов без сброса контекста. Если вы строите production-агента — закладывайте механизмы укорачивания сессий с самого начала. Лучше 100 коротких разговоров, чем один длинный кошмар.
Попробуйте на следующей неделе взять любого своего агента, дать ему задачу в 50 шагов и проанализировать трассировку. Уверен, вы найдете как минимум два из трех описанных симптомов. А когда найдете — знайте, вы не одиноки, и решения уже есть.