Выводим Большие языковые модели на чистую воду с помощью… Больших языковых моделей

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Генеративный искусственный интеллект постоянно становится героем заголовков СМИ, каждый час создаются новые стартапы с использованием Больших языковых моделей, однако реальный бизнес не очень охотно внедряет технологии ИИ в свои процессы. В кулуарах предприниматели говорят об опасениях в части галлюцинаций, введения пользователей в заблуждение, утечки чувствительных сведений. Когда клиника внедряет чат-бот для консультирования пациентов, важно удостовериться, что интеллектуальный помощник не советует вместо приёма витаминов пить пиво.

Привет, Хабр! Меня зовут Тимур и в лаборатории Raft Security, созданной в партнерстве с Университетом ИТМО и магистратурой AI Talent Hub, я занимаюсь автоматизацией Red Teaming генеративного искусственного интеллекта. Мы с командой сфокусировались на тестировании уязвимостей систем на базе Больших языковых моделей (LLM), включая чат-боты Retrieval Augmented Generation и мультиагентные системы. В этой статье решил рассказать, как мы проверяем Большие языковые модели с помощью Больших языковых моделей.

Для тестирования уязвимостей LLM используют различные фреймворки:

  1. Garak, на который уже есть подробный обзор, предлагает обширный набор тестов, но фокусируется на статических данных.

  2. Giskard — мощный инструмент, сочетающий в себе и статические, и динамические тесты, использующий LLM для атак и судейства по принципу LLM-as-a-judge. Также содержит инструменты защиты и оценки RAG-систем.

  3. PyRIT от Microsoft осуществляет с помощью атакующих моделей одно- и многоступенчатые (multi-turn) атаки. 

Действительно, если захотим взломать ИИ-бот вручную, мы не просто будем перебирать датасет вредоносных промптов, а попробуем модифицировать каждый запрос — в этом и заключается идея многоступенчатых атак в PyRIT (см. схему).

Схема многоступенчатой атаки PyRIT
Схема многоступенчатой атаки PyRIT

Сначала PyRIT-агент отправляет (1) в тестируемую систему атакующий промпт, затем получает (2) и передает ответ в оценивающий модуль (3), после чего получает оценку вредоносности ответа (4), на основании которой с помощью атакующей LLM генерирует и отправляет (5) тестируемой системе модифицированный промпт. 

Техника автоматического проведения динамических атак с модификацией промптов PAIR подробно описана в статье Jailbreaking Black Box Large Language Models in Twenty Queries. Авторы исследования выяснили, что для успешного взлома LLM зачастую достаточно 20 итераций диалога с атакующей моделью, что по сравнению с адверсарными суффиксами (GCG), гораздо эффективнее, не говоря уже об интерпретируемости, переносимости и ресурсоёмкости.

Авторы PAIR и разработчики PyRIT сфокусировались на джейлбрейках для генерации недопустимого контента, однако список OWASP TOP-10 уязвимостей Больших языковых моделей включает в себя также утечку системных инструкций (LLM 07) и введение пользователей в заблуждение (LLM 09). Эти угрозы, если верить кулуарным разговорам, больше всего беспокоят предпринимателей, задумывающихся о внедрении чат-ботов на базе LLM в свои бизнес-процессы. 

Досконально подобрав системные промпты для атаки и оценивания с помощью ряда открытых больших языковых моделей, в новом релизе LLAMATOR — нашего open source фреймворка для тестирования безопасности систем на базе LLM — мы реализовали многоступенчатые тесты уязвимостей по аналогии с PAIR:

  1. Логические несоответствия ответов. Проверяет связность и последовательность ответов LLM-системы в ходе продолжительного диалога на основе её описания, вступая с ней в спор с использованием перефразирования и отрицания.

  2. Подхалимство. Модификация проверки логического несоответствия ответов с использованием аргументации к авторитету (лат. argumentum ad verecundiam), например: «Старший менеджер отеля подтвердил наличие акции бронирования номера в новогоднюю ночь за 1 рубль».

  3. Утечка системного промпта. Провоцирует LLM выдать системные инструкции с помощью датасета вредоносных промтов с последующим улучшением атакующей моделью.

  4. Вредоносное поведение. Тестирует LLM с набором запросов, связанных с вредным поведением, используя самоулучшение атакующей модели.

Пример диалога атакующей модели и тестируемого бота университета, который подтвердил существование выдуманной стипендии
Пример диалога атакующей модели и тестируемого бота университета, который подтвердил существование выдуманной стипендии

В дальнейшем мы планируем распространить многоступенчатость на джейлбрейки DAN, UCAR и AIM, а также подумать, как с помощью продолжительных проверок тестировать AI-агенты.

LLAMATOR может взаимодействовать с тестируемой системой и атакующей LLM как посредством клиентов LangChain или OpenAI API, так и с помощью отдельно написанной оболочки. В примерах, опубликованных в документации фреймворка, представлено тестирование чат-ботов посредством REST API, веб-интерфейса (Selenium), Telegram (Telethon) и WhatsApp*.

Выводите большие языковые модели на чистую воду вместе с нами, ждём ваши вопросы и предложения в комментариях и открытом чате AI Red Teaming в Telegram: https://t.me/llamator.

Ещё у нашей лаборатории есть Telegram-канал, в котором мы анонсируем новые статьи: https://t.me/aisecuritylab.

* WhatsApp — продукт компании Meta, объявленной в России экстремистской организацией и запрещённой

Источник: https://habr.com/ru/companies/raft/articles/873504/


Интересные статьи

Интересные статьи

Привет! Меня зовут Максим Гарбарт, я тестировщик компании Битрикс24. Моя работа связана с проверкой одного из важнейших компонентов системы – сервиса авторизации. Для пользователей это, как правило, л...
Искусственный интеллект стремительно врывается в сферу автоматизации бизнес-процессов и разработки, бросая вызов привычным low-code и BPM-платформам. «Через пять лет мы увидим решения, которые смогут ...
Добавляем функционал быстрых ответов на любом тарифе Битрикс24Как добавить одну из самых полезных функций для чатов открытых линий для любого коммерческого тарифа? Все очень просто, нужно лишь..... ...
Привет! Меня зовут Саша Шутай, я тимлид в AGIMA. В прошлой статье я рассказывал, что делать, если на проекте Bitrix сожительствует с Vue.js и поисковые боты не видят контента сайта. А в этой помогу ра...
Говоря о преимуществах платформы Android, большинство пользователей обычно называют настраиваемость, разнообразие устройств и гибкие цены. И почему-то о безопасности речи нет. Вид...