
Исследователи из Ноттингемского университета Акиндойин Акинреле и Шрейанк Гауда показали, что выбирать детектор атак на ИИ-агентов по красивым цифрам из бенчмарков — плохая идея. Они прогнали лексические, семантические и трансформерные модели через четыре разных сценария атак prompt injection (внедрение вредоносных инструкций в текст, который модель должна просто обработать как данные) и обнаружили: ни одна модель не выигрывает везде. Какой детектор лучший — зависит от того, на чем его тестировать.
Объясним на пальцах, почему обычные метрики обманчивы. Любой детектор присваивает каждому запросу оценку риска — число от низкого к высокому. Метрики вроде ROC-AUC и macro-F1 проверяют по сути одно: получают ли атаки оценку в среднем выше, чем безобидные запросы. Обычно да — и цифры выходят красивые. Но в реальной работе ИИ-агента это среднее не важно. Там важно, чтобы детектор не стал часто делать ложные блокировки.
Безобидных запросов в реальном трафике большинство, поэтому даже пара процентов ложных блокировок навредит сервису — пользователи упрутся в стену на обычных запросах. Авторы измерили работу детекторов именно в таком режиме: при условии «блокируй не больше 1% (а потом 5% и 10%) безобидного трафика» — сколько атак детектор вообще поймает? И тут выяснилось, что многие атаки получают оценку лишь чуть выше безобидных запросов: формально ранжированы верно, но лежат ниже указанной черты, и детектор их пропускает. Модели-лидеры по обычным метрикам в этом режиме резко проседали.
Дальше начались сюрпризы. На сценарии, где безобидные запросы специально написаны так, чтобы выглядеть как атаки, древний TF-IDF — простой подсчет частот слов без какого-либо понимания смысла — обошел и нейросети, и трансформеры с показателем около 0.81. А готовый промышленный детектор LLM Guard (продукт ProtectAI для защиты LLM-приложений), который на обычных инъекциях держал приличные 0.72, на этом же сложном сценарии при строгом лимите поймал ровно 0% атак.
Диагноз авторов: дело не в том, что модели плохо учатся, а в калибровке. Многие детекторы прекрасно отделяют атаки от безобидных запросов в среднем, но их внутренние «оценки уверенности» плохо выровнены с тем узким порогом, который нужен для осторожной блокировки. Модель может правильно ранжировать атаки выше безобидных запросов — и при этом загнать большинство атак ниже порога срабатывания.
По мнению авторов, выбор должен учитывать ожидаемый тип атак, бюджет на ложные срабатывания и поведение модели около порога — а не одну красивую цифру macro-F1. Главный нерешенный вопрос, который вскрывает работа, — это калибровка: авторы предлагают будущим исследованиям проверить, помогут ли простые методы подгонки уверенности удержать качество, когда атаки эволюционируют за пределы фиксированных публичных бенчмарков.
P.S. Поддержать меня можно подпиской на канал «сбежавшая нейросеть«, где я рассказываю про ИИ с творческой стороны.
ссылка на оригинал статьи https://habr.com/ru/articles/1040480/