← Все инструкции

РУКОВОДСТВО · ОБНОВЛЕНО 2026-10-11

Когда остановить AI-агента: результат, лимиты и повторяющиеся ошибки

Лимит шагов защищает ресурсы, но не доказывает выполненную задачу. Разберём отдельные причины завершения, проверку прогресса и состояние после отмены.

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

1. Определите наблюдаемый результат

Для поиска задайте нужные основания, для обработки документа — проверяемую структуру, для действия — подтверждённый статус внешней операции. Не считайте финальную фразу модели доказательством выполнения. Запишите, какие условия должны быть истинными и какие ошибки исключены. Система может завершить ответ пользователю, оставаясь с неразрешённым действием или недостаточным источником. Для такого случая нужен отдельный исход, а не принудительная отметка успеха. Проверка завершения должна соответствовать цели конкретного сценария и быть понятной тому, кто принимает результат.

2. Ограничьте цикл независимо от промпта

Задайте число шагов, длительность, размер результатов инструментов и действующий ресурсный бюджет. Инструкция «не зацикливайся» не заменяет исполняемое ограничение. В LangGraph recursion limit относится к шагам графа, а не обязательно к одному привычному вызову модели; проверяйте смысл настройки используемого framework. Не увеличивайте лимит только потому, что цикл упёрся в него: сначала найдите причину. Для нескольких задач и воркеров учитывайте общие ограничения проекта. Установка границы является защитой ресурсов, но не утверждением, что любой вход будет решён за это число шагов.

3. Найдите повтор без полезного прогресса

Сохраняйте компактный журнал действий, аргументов и наблюдаемых результатов. Проверьте повтор одинаковой ошибки, поиск того же источника и возврат к прежнему состоянию. При этом одинаковое имя функции не всегда означает цикл: аргументы или внешний статус могут изменяться. Задайте конкретное правило прогресса для сценария и путь уточнения при недостаточных данных. Не вынуждайте модель придумывать факт ради выхода из цикла. Перед новой попыткой объясняйте, какие сведения она должна получить, и проверяйте, появился ли этот результат после выполненного шага.

4. Обработайте отмену и внешние действия

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

5. Проверьте исходы на fixtures

Составьте сценарии успеха, достижения шага, таймаута, одинаковой ошибки, неизвестного результата инструмента и отмены. Убедитесь, что финальный статус различим и незавершённое не объявляется готовым. Журнал должен позволять продолжить разрешённую задачу без дублирования уже принятого действия. В Tokenmost guide не обещает управляемый runtime агента; поддержку функций и методов проверяйте отдельно. Начните с offline transport и существующих ограничений, не меняя финансовые лимиты. Реальное поведение модели и внешних инструментов подтверждается отдельной приёмкой, а не одним успешным тестом диспетчера.

Частые вопросы

Достигнут лимит шагов — задача выполнена?

Нет. Это причина остановки. Проверьте отдельные условия успеха и покажите, что осталось неподтверждённым.

Можно ограничить цикл только промптом?

Нет для надёжного исполнения. Код приложения должен проверять шаги, время и разрешённые ресурсы независимо от ответа модели.

Повтор функции всегда означает зацикливание?

Нет. Сравните аргументы, состояние и появление полезного результата. Правило прогресса зависит от задачи.

Отмена гарантирует, что действие не произошло?

Не автоматически. Проверьте уже отправленные операции и возможности внешнего сервиса; локальный сигнал не отменяет подтверждённое исполнение.

Источники

Калькулятор стоимости →