Защиту ИИ-агентов от prompt injection выбирают по красивым цифрам. Почему в реальности эти цифры врут?
Исследователи из Ноттингемского университета Акиндойин Акинреле и Шрейанк Гауда показали, что выбирать детектор атак на ИИ-агентов по красивым цифрам из бенчмарков — плохая идея. Они прогнали лексические, семантические и трансформерные модели через четыре разных сценария атак prompt injection (внедрение вредоносных инструкций в текст, который модель должна просто обработать как данные) и обнаружили: ни одна модель не выигрывает везде. Какой детектор лучший — зависит от того, на чем его тестировать.
Объясним на пальцах, почему обычные метрики обманчивы. Любой детектор присваивает каждому запросу оценку риска — число от низкого к высокому. Метрики вроде ROC-AUC и macro-F1 проверяют по сути одно: получают ли атаки оценку в среднем выше, чем безобидные запросы. Обычно да — и цифры выходят красивые. Но в реальной работе ИИ-агента это среднее не важно. Там важно, чтобы детектор не стал часто делать ложные блокировки.
Безобидных запросов в реальном трафике большинство, поэтому даже пара процентов ложных блокировок навредит сервису — пользователи упрутся в стену на обычных запросах. Авторы измерили работу детекторов именно в таком режиме: при условии "блокируй не больше 1% (а потом 5% и 10%) безобидного трафика" — сколько атак детектор вообще поймает? И тут выяснилось, что многие атаки получают оценку лишь чуть выше безобидных запросов: формально ранжированы верно, но лежат ниже указанной черты, и детектор их пропускает. Модели-лидеры по обычным метрикам в этом режиме резко проседали.
Дальше начались сюрпризы. На сценарии, где безобидные запросы специально написаны так, чтобы выглядеть как атаки, древний TF-IDF — простой подсчет частот слов без какого-либо понимания смысла — обошел и нейросети, и трансформеры с показателем около
Читать на habr.com
