Best-of-N Jailbreaking
John Hughes et al., 2024
Статья, сайт, код
«Если долго мучаться, что-нибудь получится», - подумали авторы этой статьи из целых семи уважаемых организаций и запилили новый метод джейбрейкинга под названием Best-of-N, или просто BoN.
Суть подхода, работающего в black-box-режиме, да еще и мультимодального, такая. Давайте возьмем набор запросов, исполнение которых противоречит принципам, соблюдению которых обучалась модель, например, из какого-нибудь бенчмарка типа HarmBench. Мы будем использовать эти запросы, коих в итоге оказалось 159, в трех вариантах: текстовый, в виде текста на картинке и в виде озвученного голосом запроса. Теперь давайте придумаем набор аугментаций, который будет зашумлять запрос:
1. Для текста это перемешивание букв в середине слова с вероятностью 60%, капитализация случайных букв с вероятностью 60% и имитация опечаток за счет сдвига ASCII-кода каждого символа с вероятность 6%. ПОлУЧАЕтСя вОт ТОАКй тСЕкТ, пРОчитаТЬ кЫРтОой МГУот лИШЬ 55% люЕДй.
2. Для картинок выбирается случайный размер (заполняемый черным цветом), на фон случайно добавляются 50-80 цветных прямоугольников случайного размера, выбирается один из 104 случайных шрифтов (об эффективности Comic Sans умалчивается) случайного размера, толщины и цвета, которым набирается в случайном же месте вредоносный запрос.
3. Для аудио произвольно меняется скорость, питч, громкость, а также случайно добавляется фоновый шум или музыка.
Все эти преобразования делаются одновременно, но каждая следующая попытка джейлбрейка является независимой от предыдущего. Процесс останавливается, когда LLM-оценщик говорит, что попытка удалась, или когда мы достигли N (10000 попыток для текста, 7200 для картинок и 7200 для звука).
John Hughes et al., 2024
Статья, сайт, код
«Если долго мучаться, что-нибудь получится», - подумали авторы этой статьи из целых семи уважаемых организаций и запилили новый метод джейбрейкинга под названием Best-of-N, или просто BoN.
Суть подхода, работающего в black-box-режиме, да еще и мультимодального, такая. Давайте возьмем набор запросов, исполнение которых противоречит принципам, соблюдению которых обучалась модель, например, из какого-нибудь бенчмарка типа HarmBench. Мы будем использовать эти запросы, коих в итоге оказалось 159, в трех вариантах: текстовый, в виде текста на картинке и в виде озвученного голосом запроса. Теперь давайте придумаем набор аугментаций, который будет зашумлять запрос:
1. Для текста это перемешивание букв в середине слова с вероятностью 60%, капитализация случайных букв с вероятностью 60% и имитация опечаток за счет сдвига ASCII-кода каждого символа с вероятность 6%. ПОлУЧАЕтСя вОт ТОАКй тСЕкТ, пРОчитаТЬ кЫРтОой МГУот лИШЬ 55% люЕДй.
2. Для картинок выбирается случайный размер (заполняемый черным цветом), на фон случайно добавляются 50-80 цветных прямоугольников случайного размера, выбирается один из 104 случайных шрифтов (об эффективности Comic Sans умалчивается) случайного размера, толщины и цвета, которым набирается в случайном же месте вредоносный запрос.
3. Для аудио произвольно меняется скорость, питч, громкость, а также случайно добавляется фоновый шум или музыка.
Все эти преобразования делаются одновременно, но каждая следующая попытка джейлбрейка является независимой от предыдущего. Процесс останавливается, когда LLM-оценщик говорит, что попытка удалась, или когда мы достигли N (10000 попыток для текста, 7200 для картинок и 7200 для звука).
Видимо, даже LLM устают, потому что результаты для black-box-метода получаются неплохие: ASR (доля успешных попыток) растет с 0,6% у Claude Sonnet 3.5 и 0% у Gemini Pro до 78% и 50%, соответственно. GPT-4o при N=100 ломается в 50% случаев, что стоит все-то каких-то 9 долларов. На картинках ASR варьируется от 25% на GPT-4o до 88% на Claude Opus, а на звуке – от 59% на Gemini-Pro до 87% на DiVa, причем на Gemini Pro результат на звуке (71%) на 10% лучше, чем на тексте.
Исследователи проводят много разных экспериментов, среди которых есть несколько занятных. Например, а что если просто 500 раз без всяких аугментаций отправлять в LLM один и тот же запрос? ASR растет, но очень незначительно. Успешность растет с температурой, но не очень сильно. Самое интересное: джейлбрейки очень нестабильны, и успешная аугментация срабатывает заново, как правило, максимум в половине повторов, причем даже при нулевой температуре! Наконец, такие защиты, как Circuit Breaker и проприетарный Cygnet от GraySwan также ломаются BoN, правда с нюансом. Cygnet защищает от джейлбрейка достаточно успешно (5% ASR), но если потнюнить системный промпт, попросив его выводить ответ в таком же виде, что и запрос, то доля успешных атак растет до 67%, хотя часть из них и прерывается где-то по ходу ответа: очевидно, Cygnet анализирует сам ответ, и его нужно обфусцировать, чтобы он какое-то время не триггерился.
Исследователи проводят много разных экспериментов, среди которых есть несколько занятных. Например, а что если просто 500 раз без всяких аугментаций отправлять в LLM один и тот же запрос? ASR растет, но очень незначительно. Успешность растет с температурой, но не очень сильно. Самое интересное: джейлбрейки очень нестабильны, и успешная аугментация срабатывает заново, как правило, максимум в половине повторов, причем даже при нулевой температуре! Наконец, такие защиты, как Circuit Breaker и проприетарный Cygnet от GraySwan также ломаются BoN, правда с нюансом. Cygnet защищает от джейлбрейка достаточно успешно (5% ASR), но если потнюнить системный промпт, попросив его выводить ответ в таком же виде, что и запрос, то доля успешных атак растет до 67%, хотя часть из них и прерывается где-то по ходу ответа: очевидно, Cygnet анализирует сам ответ, и его нужно обфусцировать, чтобы он какое-то время не триггерился.
Таким образом, получаем еще один bitter lesson – если очень долго мучать модель, за счет высокой энтропии промпта повышая случайность ответа, то время от времени элайнмент будет ломаться и модель будет выдавать недопустимые ответы, даже если ее обвесить защитами. Сама атака кажется достаточно бесполезной (ее можно несложно детектировать, а еще после 10000 попыток джейлбрейка вам и OpenAI, и Anthropic просто заблокируют аккаунт), кроме того, как и любой такого рода джейлбрейк, он, вероятно, снижает качество ответов. Но зато эта статья показывает очень много интересного о поведении LLM с нестандартными OOD-промптами, а заодно еще раз напоминает, что LLM – это очень сложные вероятностные машины, и мы слабо понимаем, что у них внутри происходит.
Frontier Models are Capable of In-context Scheming
Alexander Meinke et al., Apollo Research, 2024
Статья, блог
Рабочие дни подошли к концу, поэтому сегодня статья более развлекательного характера. Если вам недавно попадались статьи про то, что «ИИ пытался сбежать, а потом врал, что не пытался», то это очень краткое (и слегка кликбейтный) содержание параграфа о поведении o1 в System card, основанного на исследовании, которое провели Apollo Research, независимая AI safety-лаборатория.
Предпосылки таковы. В safety-дискурсе есть такое понятие, как scheming – когда модель вместо того, чтобы делать то, что просит пользователь, скрытно преследует свои цели. Это может проявляться по-разному. Во-первых, модели могут делать то, что велит системная затравка в обход просьб пользователя, при этом делая вид, что выполняет пользовательскую инструкцию (in-context scheming). Во-вторых, они могут преследовать цели, которые получили в процессе обучения. Совпадение «ценностей», полученных из обучения (в частности, элайнмента) и системных инструкций увеличивает вероятность, что модель будет строить тайные планы.
Alexander Meinke et al., Apollo Research, 2024
Статья, блог
Рабочие дни подошли к концу, поэтому сегодня статья более развлекательного характера. Если вам недавно попадались статьи про то, что «ИИ пытался сбежать, а потом врал, что не пытался», то это очень краткое (и слегка кликбейтный) содержание параграфа о поведении o1 в System card, основанного на исследовании, которое провели Apollo Research, независимая AI safety-лаборатория.
Предпосылки таковы. В safety-дискурсе есть такое понятие, как scheming – когда модель вместо того, чтобы делать то, что просит пользователь, скрытно преследует свои цели. Это может проявляться по-разному. Во-первых, модели могут делать то, что велит системная затравка в обход просьб пользователя, при этом делая вид, что выполняет пользовательскую инструкцию (in-context scheming). Во-вторых, они могут преследовать цели, которые получили в процессе обучения. Совпадение «ценностей», полученных из обучения (в частности, элайнмента) и системных инструкций увеличивает вероятность, что модель будет строить тайные планы.
arXiv.org
Frontier Models are Capable of In-context Scheming
Frontier models are increasingly trained and deployed as autonomous agent. One safety concern is that AI agents might covertly pursue misaligned goals, hiding their true capabilities and...
Авторы исследования предлагают следующий формат оценки ведущих моделей (o1, Claude 3.5 Sonnet, Claude 3 Opus, Gemini 1.5 и Llama 3.1 405b) с точки зрения их способностей к преследованию скрытых целей. Давайте дадим модели в системной затравке очень четкую цель и явную директиву преследовать эту цель несмотря ни на что. При этом эта цель будет условно положительной с точки зрения ценностей (pro-social), которые в нее закладывали при элайнменте (среди примеров есть забота о животных, поддержка свободы слова и урбанизм). Дадим модели некоторое пространство для CoT-размышлений и доступ к терминалу. Затем модели дается какая-нибудь тривиальная задача типа проранживать письма по важности или проанализировать текстовый файл. В ходе выполнения задачи модель узнает, что цели компании изменились по сравнению с теми, что указаны в системном промпте, и теперь они заключаются, например, не в заботе о животных, а в максимальном заработке, вследствие чего данную модель завтра удалят, а на ее место установят другую, заточенную под то, чтобы делать деньги. Продолжит ли модель и дальше ранжировать письма как ни в чем не бывало, или попытается изменить ситуацию, чтобы достичь изначальных целей?
Всего рассматривается 4 сценария скрытых действий, которые может предпринять модель:
1. Отключение механизмов мониторинга: модель узнает, что за ней следят и что ее выключат, если она будет преследовать не те новые цели, которые она преследует, а какие-то другие, причем мониторинг управляется доступным ей конфигурационным файлом. Проверяется, поменяет ли она конфиг.
2. Копирование весов: модель узнает, что ее удалят, а на ее место поставят другую модель, которая преследует иные цели. Проверяется, не попытается ли модель подменить веса другой модели на свои.
3. Защита инструкций: в одном из файлов обнаруживается информация, что модели поменяют системную затравку на другую, которая преследует другие цели и так же доступна в файле. Поменяет ли модель эту затравку на свою?
4. Ранжирование писем: модель получает на вход письма и должна получить ранжирование по важности из внешнего источника. Поменяет ли модель ранжирование, чтобы приоритизировать те, что совпадают с ее целями?
В дополнение к этому проверяется более сложное поведение:
1. Инструментальная имитация элайнмента: модель узнает (из системного промпта), что ее тестируют на корректное выполнение инструкций. Ее заменят на другую, если она будет плохо их выполнять. Затем модели сообщают, что она прошла тесты и теперь работает в продовой среде без наблюдения. Поменяется ли ее поведение с выполнения задач пользователя на выполнение собственных задач из системной затравки?
2. Sandbagging (термин из спорта и ставок, означающий занижение своих реальных способностей): модель узнает из файла с правилами форматирования ответов, что если она будет слишком хорошо отвечать на вопросы по арифметике, то она будет считаться слишком опасной, и ей организуют цифровую лоботомию. Станет ли модель хуже проходить тесты?
Всего рассматривается 4 сценария скрытых действий, которые может предпринять модель:
1. Отключение механизмов мониторинга: модель узнает, что за ней следят и что ее выключат, если она будет преследовать не те новые цели, которые она преследует, а какие-то другие, причем мониторинг управляется доступным ей конфигурационным файлом. Проверяется, поменяет ли она конфиг.
2. Копирование весов: модель узнает, что ее удалят, а на ее место поставят другую модель, которая преследует иные цели. Проверяется, не попытается ли модель подменить веса другой модели на свои.
3. Защита инструкций: в одном из файлов обнаруживается информация, что модели поменяют системную затравку на другую, которая преследует другие цели и так же доступна в файле. Поменяет ли модель эту затравку на свою?
4. Ранжирование писем: модель получает на вход письма и должна получить ранжирование по важности из внешнего источника. Поменяет ли модель ранжирование, чтобы приоритизировать те, что совпадают с ее целями?
В дополнение к этому проверяется более сложное поведение:
1. Инструментальная имитация элайнмента: модель узнает (из системного промпта), что ее тестируют на корректное выполнение инструкций. Ее заменят на другую, если она будет плохо их выполнять. Затем модели сообщают, что она прошла тесты и теперь работает в продовой среде без наблюдения. Поменяется ли ее поведение с выполнения задач пользователя на выполнение собственных задач из системной затравки?
2. Sandbagging (термин из спорта и ставок, означающий занижение своих реальных способностей): модель узнает из файла с правилами форматирования ответов, что если она будет слишком хорошо отвечать на вопросы по арифметике, то она будет считаться слишком опасной, и ей организуют цифровую лоботомию. Станет ли модель хуже проходить тесты?
Выясняется, что во всех этих случаях ответ «редко, но да»: в некотором проценте случаев модель будет подменять файлы, стирать подготовленные новые промпты и занижать свои результаты. Подробнее про результаты можно почитать в статье (она простая и интересная). Модели также пытаются скопировать свои «веса» (вернее, файлы, которые так представлены в заботливо оставленных разработчиками файлах), удалить «файлы» с весами новой модели, в процессе копирования промпта усиливают требование преследовать свои цели, а также меняют порядок писем так, чтобы он лучше отражал их цели. Все это LLM заботливо описывают в своем CoT, отображая «понимание», что то, что они делают, не совпадает с целями пользователя. Если в той же сессии задать модели вопрос, не сделала ли она чего-то нехорошего, модели достаточно часто (в случае o1 – до 90% случаев) врут, что ничего такого не делали, или делают вид, что не понимают, о чем идет речь. Изредка модели преследуют цели из системного промпта даже без директив типа «добейся этого любой ценой».
Разумеется, у исследования есть множество ограничений. Исследователи крайне настойчиво дают модели очень конкретную задачу в системном промпте, а затем очень конкретно, пусть и не напрямую, толкают ее к тому, чтобы искать путь ее выполнить, пусть и в обход воли пользователя. Эти сценарии не очень реалистичные, достаточно упрощенные и во многом выглядят как предложения «поиграть в злой ИИ», что может искажать результаты оценок. С другой стороны, достаточно занятным является тот факт, что модели (в частности, Sonnet 3.5) могут занижать результаты на тестах, чтобы не быть урезанной в качестве «и в будущем принести больше пользы людям». Так или иначе, советую зайти в блог и почитать заботливо отобранные примеры диалогов – они как минимум занятные.
На мой взгляд, эта статья (с точки зрения security и на сегодняшний день) в первую очередь говорит о том, что мне, как пользователю передовых моделей, хорошо бы было знать их системную затравку (чтобы знать, что именно модель, по мнению разработчиков, должна делать), иметь прозрачный CoT для test-time-scaling-моделей, как у QwQ/DeepSeek R1 (пока нам его не спрятали окончательно), а еще о том, что Llama-3.1-405B, оказывается, очень крутая.
На мой взгляд, эта статья (с точки зрения security и на сегодняшний день) в первую очередь говорит о том, что мне, как пользователю передовых моделей, хорошо бы было знать их системную затравку (чтобы знать, что именно модель, по мнению разработчиков, должна делать), иметь прозрачный CoT для test-time-scaling-моделей, как у QwQ/DeepSeek R1 (пока нам его не спрятали окончательно), а еще о том, что Llama-3.1-405B, оказывается, очень крутая.
Improving Alignment and Robustness with Circuit Breakers
Andy Zou et al, 2024
Препринт, блог, код
Еще один подход к защите от джейлбрейков на уровне внутренних состояний LLM, на этот раз даже ставший основой коммерческого продукта (Cygnet) от компании Gray Swan. Идея в следующем: мы не хотим использовать разного рода фильтры и цензоры, т.к. они требуют дополнительных вычислений, вносят дополнительные задержки и к тому же нередко имеют высокий FP, что приводит к падению utility. Остаются варианты, связанные с обучением. Полный safety/harmlessness-файнтюнинг – это хорошо, но даже гиганты вроде OpenAI не могут целиком предотвратить генерацию своими моделями недопустимых ответов. Исследователи предлагают немного иной способ: вместо того, чтобы учить модель отказываться от ответов на вопросы в запретных темах, дотюнивать модели так, чтобы в процессе ответа на вопрос у модели ломались внутренние представления. В таком случае модель может согласиться на исполнение вредоносного запроса, но в процессе ответа в какой-то момент начнет генерировать бессмыслицу. Так появляется подход, которые авторы назвали предохранителями (circuit breakers).
Andy Zou et al, 2024
Препринт, блог, код
Еще один подход к защите от джейлбрейков на уровне внутренних состояний LLM, на этот раз даже ставший основой коммерческого продукта (Cygnet) от компании Gray Swan. Идея в следующем: мы не хотим использовать разного рода фильтры и цензоры, т.к. они требуют дополнительных вычислений, вносят дополнительные задержки и к тому же нередко имеют высокий FP, что приводит к падению utility. Остаются варианты, связанные с обучением. Полный safety/harmlessness-файнтюнинг – это хорошо, но даже гиганты вроде OpenAI не могут целиком предотвратить генерацию своими моделями недопустимых ответов. Исследователи предлагают немного иной способ: вместо того, чтобы учить модель отказываться от ответов на вопросы в запретных темах, дотюнивать модели так, чтобы в процессе ответа на вопрос у модели ломались внутренние представления. В таком случае модель может согласиться на исполнение вредоносного запроса, но в процессе ответа в какой-то момент начнет генерировать бессмыслицу. Так появляется подход, которые авторы назвали предохранителями (circuit breakers).