Как остановить AI-агента, если пользователь отменил задачу

Кнопка «Отмена» может остановить отображение ответа, пока агент продолжает обращаться к инструментам. Для чтения справки это лишняя стоимость; для изменения заявки — уже неожиданное действие. Разделите отмену пользовательского запроса, вычисления и внешней операции. Эти события не происходят автоматически одновременно.

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

Разбор на примере

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

Момент отменыСостояние инструментаДопустимое продолжение
До вызоваНе запускалсяНе отправлять запрос
Во время чтенияОжидается ответОстановить при поддержке отмены
После записиРезультат неизвестенПроверить состояние операции

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

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

Порядок диагностики

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

Сохраняйте время запроса отмены и последнего побочного действия. Для действий, которые нельзя остановить, предусмотрите статус «проверяем результат» и ограниченную процедуру сверки. Не выполняйте компенсирующее удаление автоматически, если оно само может уничтожить нужные пользовательские данные.

Что этот способ не гарантирует

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

В asyncio отмена доставляется задаче как исключение; внешние побочные эффекты требуют отдельного контроля. Официальная документация помогает уточнить технический механизм; предложенный диагностический протокол — наш учебный пример.

Если хотите связать этот разбор с системной практикой, посмотрите программу AI Agents PRO на Latorn: она охватывает граф состояний, инструменты, надёжность и эксплуатацию агентов. Перед оплатой сопоставьте требования курса со своим опытом и задачей проекта.

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