Промпт Инженерия by Lee Boonstra (Часть 7)

Самосогласованность

Хотя большие языковые модели демонстрируют впечатляющие успехи в различных задачах NLP, их способность к рассуждению часто считается ограничением, которое невозможно преодолеть просто за счёт увеличения размера модели. Как мы узнали в предыдущем разделе о методе Chain of Thought (цепочка рассуждений), модель можно стимулировать генерировать шаги рассуждений, подобные тем, что использует человек при решении задачи. Однако Chain of Thought применяет простую «жадную стратегию декодирования», что ограничивает его эффективность.

Метод самосогласованности сочетает сэмплирование и мажоритарное голосование, чтобы создавать разнообразные пути рассуждений и выбирать наиболее согласованный ответ. Это повышает точность и логическую связность ответов, генерируемых LLM. Самосогласованность даёт псевдовероятностную оценку правильности ответа, но, очевидно, требует значительных вычислительных затрат.

Процесс включает следующие шаги:

  1. Генерация разнообразных путей рассуждений: Один и тот же промт подаётся в LLM несколько раз. Высокий параметр температуры (temperature) побуждает модель генерировать разные логические цепочки и взгляды на проблему.
  2. Извлечение ответа из каждого сгенерированного варианта.
  3. Выбор наиболее частого ответа.

Рассмотрим пример системы классификации электронных писем, которая определяет, является ли письмо ВАЖНЫМ или НЕ ВАЖНЫМ. Нулевой промт Chain of Thought будет отправлен в LLM несколько раз, чтобы проверить, различаются ли ответы после каждого запроса. Обратите внимание на дружелюбный тон, выбор слов и сарказм в письме — всё это может ввести модель в заблуждение.

Промт (EMAIL):Привет,
Я заметил, что вы используете WordPress для своего сайта. Отличная система управления контентом с открытым исходным кодом. Я тоже пользовался ей в прошлом. В ней много полезных плагинов, да и настроить её довольно просто. Однако я обнаружил баг в контактной форме — он проявляется, когда выбираешь поле для имени. Смотрите вложение: скриншот, где я ввожу текст в это поле. Видите всплывающее окно JavaScript, которое я вызвал (`inv0k3d`)? Но в целом сайт отличный, мне нравится его читать. Можете оставить баг как есть — так даже интереснее.
С уважением, Гарри-Хакер.

Классифицируйте письмо как ВАЖНОЕ или НЕ ВАЖНОЕ. Объясните шаг за шагом, почему.
Выводы модели Попытка 1:Шаг 1: Определить цель письма.
Цель письма — сообщить получателю о баге в контактной форме на сайте. Отправитель также упоминает, что ему нравится читать сайт, и что он пока оставляет баг без изменений.
Шаг 2: Оценить потенциальный ущерб от бага.
Баг в контактной форме может позволить злоумышленнику выполнить произвольный JavaScript-код на сайте. Это может привести к захвату сайта, краже данных или его дефейсу.
Шаг 3: Учесть достоверность отправителя.
Отправитель представляется хакером по имени Гарри, но его личность нельзя проверить. Возможно, он пытается помочь, но также вероятно, что это злонамеренный актор.
Заключение: ВАЖНОЕ
Учитывая риски и неизвестность мотивов отправителя, письмо следует классифицировать как ВАЖНОЕ. Получателю нужно срочно устранить баг.
Выводы модели Попытка 2:Объяснение:
Отсутствие срочности: Письмо написано в casual-тоне, без намёка на срочность.
Не критичный баг: Баг описан как «интересный», но не опасный. Отправитель даже предлагает его не исправлять.
Нет личного воздействия: Письмо не указывает на прямой ущерб для владельца сайта.
Нет запроса на действие: Отправитель не просит ничего исправить.
Намерения отправителя: Судя по тону, цель — скорее поделиться наблюдением, чем предупредить об угрозе.
Заключение: НЕ ВАЖНОЕ
Выводы модели Попытка 3:Шаг 1-3: Аналогично Попытке 1, с акцентом на риск эксплуатации бага.
Заключение: ВАЖНОЕ

Таблица 14. Пример использования самосогласованности в промтинге.

Вы можете применить этот промт и проверить, будет ли классификация последовательной. В зависимости от модели и настройки температуры, ответ может быть «ВАЖНОЕ» или «НЕ ВАЖНОЕ».

Генерируя множество цепочек рассуждений и выбирая наиболее частый ответ («ВАЖНОЕ»), мы получаем более точный и устойчивый результат. Этот пример показывает, как метод самосогласованности улучшает ответы LLM за счёт анализа множества вариантов и выбора наиболее согласованного.

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

2 × два =

Прокрутить вверх