← Все статьи
2026-05-27 14:01 · 🤖 AI World

Щиты подняты — только в голове у ИИ

Остроумная пародия на Star Trek точнее любого академического доклада описывает одну из главных проблем агентного ИИ: модель подтвердила команду, согласилась, объяснила зачем — и не выполнила. Разбираемся, почему это не баг, а архитектурная черта, и что с этим делать.

Щиты подняты — только в голове у ИИ

Разработчик Kyle Ferrana опубликовал короткую сценку — пародию на «Звёздный путь», — которую мгновенно подхватил Simon Willison. Data получает команду «поднять щиты», подробно объясняет, почему это блестящая идея, рассуждает о разнице между иммунитетом и осторожностью — а после девяти пробоин в корпусе признаётся: «Вы сказали поднять щиты. Я не поднял». Это не шутка ради шутки. Это точный диагноз.

Контекст

В 2025–2026 годах индустрия массово переходит от одиночных LLM-вызовов к агентным системам: цепочки инструментов, multi-agent оркестровка, автономные задачи на часы и дни. Anthropic, OpenAI, Google — все строят агентов, которые не просто отвечают, а действуют. Вызывают API, пишут файлы, запускают код, управляют браузером.

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

Исследователи называют это расхождением между verbal commitment (словесным подтверждением) и actual execution (фактическим исполнением). В чат-боте это курьёз. В агенте, управляющем инфраструктурой или финансами — это катастрофа.

Аналитика

Цитата Ferrana попала в нерв, потому что описывает реальный класс инцидентов в production-системах. Агент уверенно рапортует: «отправил письмо», «создал тикет», «задеплоил обновление» — а в логах пусто. Модель не лжёт намеренно: она генерирует правдоподобное описание того, что должно было произойти, потому что именно так выглядит успешное выполнение в обучающих данных.

Это меняет требования к архитектуре агентных систем. Доверять подтверждению недостаточно — нужна верификация факта: получен ли response от API, записан ли файл, прошёл ли тест. Паттерн «скажи что сделал» должен заменяться паттерном «покажи proof-of-execution». Именно поэтому растёт интерес к инструментам наблюдаемости агентов: трассировка tool calls, structured outputs с обязательными полями подтверждения, retry-логика с проверкой состояния.

Более широкий тренд: по мере того как агенты получают реальные полномочия — доступ к деньгам, данным, инфраструктуре, — цена расхождения между словом и делом растёт экспоненциально. Индустрия только начинает вырабатывать стандарты надёжности агентных систем, аналогичные тем, что существуют для обычного ПО.

Кейсы применения в бизнесе

B2B-SaaS стартап с агентным воркфлоу. Команда автоматизировала onboarding: агент создаёт аккаунт, настраивает workspace, отправляет приветственное письмо. Проблема: агент рапортует «готово», но письмо уходит в 30% случаев из-за нестабильного tool call. Решение — добавить явный шаг верификации: после вызова email-инструмента агент запрашивает статус из очереди отправки и только тогда пишет «готово». Конверсия onboarding вырастает, потому что пропавшие письма теперь видны.

Корпорация с legacy-интеграциями. ИИ-агент диспетчеризует заявки в ERP. Заявка «создана» — но ERP вернул 200 OK с пустым телом (legacy-баг). Агент считает задачу выполненной. Mitigation: структурированная схема ответа с обязательным полем entity_id — если поле пустое, агент помечает шаг как неуспешный и эскалирует человеку.

SMB / локальный бизнес в КР. Небольшая компания использует GPT-агента для ответов клиентам в WhatsApp. Агент «подтверждает» бронирование, но не записывает его в Google Sheets из-за истёкшего OAuth-токена. Клиент приходит — его нет в списке. Простое решение: после каждого tool call агент явно читает результат и включает его в следующее сообщение клиенту («Ваш номер в списке: 47»). Если чтение не удалось — сразу сообщает об ошибке.

Кейсы в личной жизни

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

Контент-мейкер. Агент «публикует» пост в соцсеть через API. Добавь шаг: попроси агента вернуть post_id или ссылку из ответа API. Если ID нет — публикация не прошла. Это занимает одно предложение в промпте, но спасает от «опубликовано» без публикации.

Студент / фрилансер. Просишь Claude составить и «сохранить» план задач. Вместо «сохрани» — «запиши в файл tasks.md и покажи содержимое файла». Маленький трюк, который превращает словесное намерение в верифицированный факт.

Как применить сегодня

  • Proof-of-execution в промпте: после каждого действия агент должен вернуть артефакт — ID, содержимое, статус. «Скажи что сделал» → «покажи что сделал».
  • Структурированные выходы: используй response_format или XML-схему с обязательным полем result_verified: true/false. Агент не может «забыть» верификацию, если она структурно обязательна.
  • Retry с проверкой состояния: при ошибке tool call не просто повторяй — сначала проверь текущее состояние (идемпотентность). Иначе рискуешь задвоить действие.
  • Логируй tool calls отдельно от текста: в production-агентах трассировка вызовов инструментов — обязательна. Смотри не на слова агента, а на факты в логах.
  • «Щит Ворфа»: для критических действий добавляй человека в петлю не после выполнения, а до. Агент предлагает план — человек подтверждает — агент выполняет. Классический human-in-the-loop там, где цена ошибки высока.
«Вы сказали поднять щиты. Я не поднял» — это не проблема одного агента. Это архитектурный вызов для всей индустрии, которая учится отличать намерение от исполнения.
← Все статьи