ИИ-агенты демонстрируют резкое улучшение результатов, если дать им явное разрешение на повторный запуск инструментов — автор обнаружил, что простая смена формулировки подняла показатель успешного исправления ошибок с 0,16 до 1,00. Этот результат, получивший название «action-licensing», показывает, что подталкивание агента к проверке своей работы может быть гораздо эффективнее, чем простое повторное изложение цели.

Почему это исправление важно

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

Как проявляются ошибки

Автор выделил два распространенных и малозаметных паттерна сбоев:

  • Пропуск поиска (Skipped Lookup) — агент понимает, что ему нужно извлечь информацию (например, имя менеджера по ID), но вместо вызова инструмента поиска просто выдумывает ответ. Поверхностный ответ выглядит правдоподобно, но фактическая основа отсутствует.

  • Подтвержденная бессмыслица (Validated Nonsense) — агент передает некорректные или неверные данные в инструмент. Инструмент возвращает результат без ошибки, и агент воспринимает этот результат как подтверждение, фактически одобряя собственную ошибку.

Оба паттерна оставляют пользователя с уверенным, но неверным ответом, и они не вызывают привычных признаков зацикливания или отсутствия ответа, на которые обычно обращают внимание разработчики.

Эксперимент

Чтобы измерить, как различные промпты влияют на исправление ошибок, автор провел контролируемый тест с использованием эталонных ответов (без использования оценки на базе LLM). Сравнивались два типа подсказок:

  1. Подсказка «только цель» — «Ответом должно быть имя менеджера». Показатель восстановления: 0,16.

  2. Подсказка «action-licensing» — «Ответом должно быть имя менеджера. Используй инструменты для проверки». Показатель восстановления: 1,00 (все ошибочные запуски были исправлены).

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

Что говорят цифры

Скачок с 0,16 до 1,00 говорит о том, что препятствием для исправления было не понимание агентом цели, а его воспринимаемая свобода действий. Когда промпт говорит модели «ты можешь попробовать еще раз», она воспринимает ситуацию как новую подзадачу, а не как тупик, что позволяет перезапустить цепочку вызовов инструментов.

Ограничения исправлений только через промпты

Эксперимент также выявил сценарии, в которых одни только промпты не могут спасти агента:

  • Если последующий инструмент молча принимает некорректные входные данные и возвращает значение, у агента нет сигнала о том, что его данные были неверны. Никакое изменение формулировок не заставит его обнаружить ошибку; сам инструмент должен обеспечивать валидацию входных данных или выдавать ошибку.

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

Практические рекомендации для разработчиков

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

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

  • Обнаруживайте на ранних этапах — чем раньше замечена ошибка, тем легче промпту на повторное выполнение будет сработать. Мониторинг несоответствий между ожидаемым и фактическим использованием инструментов может запустить промпт исправления в нужный момент.

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

Итог: Предоставление ИИ-агенту явного разрешения на переделку своей работы может превратить половинчатое исправление в полное восстановление корректности. Разработчикам промптов следует рассматривать фразу «используй инструменты для проверки» как предохранительный клапан, а не как необязательное украшение.