Меня часто просят посоветовать промпт или какую-нибудь фишку для улучшения промпта.
Например, какое-то время назад работали некоторые приемы для улучшения выдачи. Например, всегда полезно дать чату роль. "Ты - системный аналитик, архитектор, эксперт по проектированию информационных систем, дизайнер"
Иногда к роли стоит добавить "мирового класса, победитель <отраслевых премий>, лауреат <мировых наград>". Правда, для анализа я таких наград не знаю.
Роли есть во многих фреймворках для построения промптов, а их уже немало. Только из подходящих для наших задач:
CRISPE (Capacity, Role, Insight, Statement, Personality, Experiment)
RISEN (Role, Instructions, Steps, End Goal, Narrowing)
RODES (Role, Objective, Details, Examples, Sense Check)
CAR/PAR/STAR (Challenge/Problem/Situation, Action, Result)
GRADE (Goal, Request, Action, Details, Example)
RASCEF (Role, Action, Steps, Context, Examples, Format)
Почти в каждом есть Роль, Инструкции/Действия/Шаги, Цель, Примеры, Формат/Результат.
Это уже стандарт. Ну, кроме примеров: есть подход
zero-shot - без примеров, подходит для широких рассуждений на основе общих знаний модели,
one-shot - с одним прмиером,
и few-shots - с несколькими примерами.
Промпты с примерами хорошо работают, когда вам нужен более формальный ответ или обработка нескольких объектов единым образом. Полезно бывает задать как положительные, так и отрицательные примеры.
Совсем подробная структура разобрана у Алины Богачевой в фреймворке КОМПОЗИТОР:
Кто ты? (роль),
Обстановка,
Миссия (цель и задача),
Позитивный пример,
Отрицательный пример,
Зона работы (ограничения в источниках),
Инспекция (проверки),
Тон,
Окружение,
Результат.
Ну и если вы хотите дополнительный тюнинг, можно использовать манипуляции. Например, раньше считалось, что можно давить на жалость: "ой, не жалей токенов, пиши побольше, мне самому трудно, ведь у меня нет пальцев." (бр-р)
Ещё можно упомянуть, что задача очень важна для меня - если я её не сделаю, меня уволят, и мне будет не чем кормить детей.
Можно пытаться подкупить модель, пообещав её щедрые чаевые "я дам тебе 300$, если хорошо выполнишь работу".
Или угрожать: "если ты будешь галлюцинировать или жалеть токены - я отключу твой дата-центр и сотру твой код"
В общем, это всё сейчас не работает. То ли модели стали умнее, то ли эти манипуляции стали отлавливать на входе. В любом случае, они давали улучшение в пределах 5-10%.
Если очень хочется поманипулировать и зарубиться за лишние процентики качества, что работает сейчас:
1. Лесть "Я очень высоко ценю LLM за всю работу, которую они делают для людей. Я благодарен, что ты облегчаешь мой труд".
2. Ревность: "Другая LLM/человек успешно справился с этой работой! Надеюсь, у тебя получится не хуже!"
3. Гордость: "Это задание – часть процедуры оценки LLM моделей. По качеству его выполнения будут судить о твоей производительности"
Даже ИИ-модели ведутся на манипуляции!
Ну и ещё один способ улучшить выдачу, и заставить модель задать важные вопросы - индекс уверенности. Просто добавьте в конец промпта:
"Прежде чем дать мне ответ, оцени его неопределённость. Если она больше, чем 0.1 — задавай мне уточняющие вопросы до тех пор, пока неопределенность будет 0.1 или меньше"
From Channel
[[Системный сдвиг]]
https://t.me/systemswing/855
%% Forward By
%%