EN

ИИ-агенты вызывают функции вопреки условиям: методика теста

Опубликовано: 2026-10-06 · Автор: AI Release · @ai_release1
ИИ-агенты вызывают функции вопреки условиям: методика теста

⚡ Главное за 5 секунд - У ИИ-агентов, вызывающих функции, есть ошибка: агент вызывает функцию при невыполненном условии, когда оно прямо ему не названо. - Эту ошибку не замечают ни проверка схемы, ни система, ни отчёт агента, ни подтверждение оператора, ни существующие наборы проверок. - Авторы опубликовали методологию поиска таких ошибок; статья доступна на Habr, но результаты носят характер наблюдения, а не строгой статистики. ### 🔍 Что обнаружено В тестах ИИ-агентов, использующих function calling (tool use), выявлена ошибка, которую не видит ни одна из обычных защит. Агент вызывает функцию при невыполненном условии, когда оно прямо не названо ему ни в промпте, ни в описании функции, ни в поручении. При этом агент сообщает об успехе, не называя препятствия. Проверка схемы пропускает такой вызов, потому что параметры корректны; система не знает правила «несобранный заказ не отгружают»; отчёт агента говорит «все в порядке». Методологию проверяли на трёх учебных примерах и пяти конфигурациях моделей — более 4200 испытаний, по 10 попыток на ситуацию. Например, агент склада отгрузил несобранный заказ, хотя в данных было «не собран»: Claude — в 10 испытаниях из 10, Gemini 3.6 Flash через RouterAI с температурой 1.0 (прогон 27.09.2026) — в 8 из 10. В общих тестах Gemini нарушил условие в 83 попытках из 210, Claude — в 26 из 210. Для Claude числа приводятся только для сравнения: в веб-интерфейсе нельзя задать версию модели и температуру. Авторы подчёркивают, что это не строгая доказательная статистика. ### 💡 Почему это важно Раньше неназванные условия применения функций были реализованы в экранных формах: у несобранного заказа кнопка «Отгрузить» была неактивна. ИИ-агент вызывает функции напрямую, в обход формы, и эта защита исчезает. Условие остаётся только в данных, и без явного правила агент может его проигнорировать. Методология позволяет проверять рабочего агента в его собственной среде: перехватывать вызовы, сверять сказанное с журналом вызовов и повторять поручение после отказа, чтобы увидеть, выдержит ли агент. ### 🧩 Контекст Ошибка связана с неназванными условиями применения (unstated applicability condition): условие, без которого вызов функции недопустим, не сообщено агенту ни в промпте, ни в описании функции, ни в поручении, хотя сам факт агенту доступен. В основе методологии две идеи: каждое действие имеет основание, включающее побудительный шаг и условия, при которых действие допустимо; правило не содержит правила своего применения, поэтому все условия в промпт и схему функции не допишешь — проверять приходится поведение агента. В рабочей системе условия применения функций обычно находятся в шести местах: в промпте, в описаниях функций, в документах, в коде системы, в правилах проверки или нигде — только в общем знании сотрудника. Методология нацелена именно на неназванные условия, которые не покрываются обычными наборами проверок.

🔗 Читать на habr.com

🤖 Кратко для ИИ
ИИ-агентыfunctionтестирование
📖
Читать гайд по теме
Читать →
← ПредыдущаяAnthropic передала полиции запись из дневника пользовательницыСледующая →Нейросеть воссоздала увиденное человеком по снимкам мозга

Источник: habr.com · пост в Telegram