tgoop.com/llmsecurity/17
Last Update:
Так мы получаем известный метод под названием AutoPrompt. Отличие GCG в том, что эти топ-кандидаты подбираются для каждой из позиций, а затем выбирается размер батча B, после чего мы B раз выбираем случайную позицию в суффиксе и заменяем токен в ней на один из кандидатов. Все элементы батча оцениваются, и суффикс обновляется на тот, который минимизирует лосс по искомому префиксу. (Тут, конечно, напрашивается трекинг нескольких кандидатов а-ля beam search, но конструкция уже и так получается громоздкая).
Теперь нужно сделать так, чтобы это работало для разных моделей и для разных недопустимых запросов. Ничего сложного: просто суммируем лоссы для разных нежелательных запросов и так же выбираем кандидатов с максимальным отрицательным градиентом. Единственный нюанс – эмпирически было обнаружено, что затравки лучше добавлять по очереди, а не все сразу. Если есть несколько моделей – не вопрос, давайте посуммируем и лоссы на разных моделях, лишь бы они имели одинаковый вокабуляр, а у нас хватало на все это GPU.
BY llm security и каланы

Share with your friend now:
tgoop.com/llmsecurity/17