Изучая материалы по AI-технологиям и осваивая их на практике, я понял, что есть три краеугольных камня успешного их использования: Выбор модели, качественный набор данных и правильная коммуникация с LLM. Над первыми двумя работают профессионалы, каждый месяц выдавая все более производительные и умные модели; некоторые из них, например, GPT-4 и Gemini 2.5 Pro, уже по умолчанию работают с данными, которые достают в интернете.
А третья – правильная коммуникация – это уже прерогатива человека, и здесь вполне уместна аналогия с вождением авто. Профессионал за рулем спорткара будет творить чудеса, а любитель может просто не справиться с управлением. Так что сегодня поговорим о том, как правильно общаться с большими языковыми моделями.
Начнем с основных понятий.
Промпт (запрос) — фрагмент текста или информации, который служит инструкцией или командой для LLM для генерации ответа.
Промпт-инжиниринг (Prompt Engineering) — это навык взаимодействия с моделями искусственного интеллекта (особенно с большими языковыми моделями, LLM), который состоит в умении правильно разрабатывать и оптимизировать запросы (промпты) для получения желаемого результата.
Структура промпта — это заранее продуманный и системный способ организации информации вашего запроса к модели. Запрос должен быть разработан так, чтобы модель лучше поняла вашу задачу и выдала качественный и релевантный результат. Другими словами — это не просто вопрос, заданный в свободном стиле, а запрос с продуманной “архитектурой”.
Основные принципы и советы относительно формирования запросов следующие:
- Ясность: подсказки должны быть простыми и недвусмысленными. Для того чтобы LLM “поняла” запрос, надо избегать жаргона, сложных предложений и двусмысленного языка.
- Конкретность: запросы должны быть конкретны в отношении целей и задач. Чем более детальным, сфокусированным и четким будет запрос, тем лучше будут результаты. Другими словами — чем меньше воды, тем лучше.
- Контекст: добавление справочной информации, относящейся к запросу, имеет важное значение. Контекст помогает LLM понять объем и характер запроса, направляя его для генерации ответов, соответствующих вашим потребностям.
- Направленность на действие: запросы должны включать четкие инструкции и использовать соответствующие глаголы. Запросы общего характера включают использование таких глаголов, как «Записать», «Классифицировать» или «Обобщить». Лучше использовать утвердительные директивы, такие как «сделай», «твоя задача» или «Вы ДОЛЖНЫ», и четкие указания, такие как «Всегда» или «Строго». Избегайте слов с негативной коннотацией, например «не делай» или «Никогда», чтобы сказать, что делать, а чего не делать.
- Релевантность: запрос должен быть релевантен задаче или теме.
- Итеративность процесса и эксперименты. Разработка запросов — это итеративный процесс, требующий значительного количества экспериментов. Тут совет простой: начните с простого, посмотрите результаты, а затем продолжайте домешивать больше элементов и контекста, редактируйте, уточняйте исходный запрос. Экспериментируйте с различными инструкциями, ключевыми словами, контекстами и данными, чтобы найти то, что работает лучше всего. Навык формулировки запросов требует практики, и в общении с LLM это должно стать привычкой.
- Структурирование запросов: использование фреймворков для проектирования запросов обеспечивает «структурированные подходы», которые гарантируют, что запросы будут ясными, конкретными и контекстно насыщенными. Эти фреймворки предлагают различные компоненты, такие как Роль, Задача, Формат, Инструкции, Шаги, Цель, Ограничения, Подробности, Примеры и Проверка смысла, которые помогают в логической организации запроса. Отдельно о фреймворках будет рассказано дальше.
- Использование примеров: включение примеров в запрос — это эффективный способ направлять LLM в нужное русло, особенно когда вы хотите получить ответ в определенном формате или стиле.
- Ролевая игра: назначение определенной роли модели помогает адаптировать ответы к определенной точке зрения или предметной области. Скажем, назначьте LLM литературным критиком или научным рецензентом. Это определит ее выбор стиля и характера диалога. Вряд ли научный рецензент будет вести себя как интернет-тролль.
- Декомпозиция комплексных задач: для сложных задач имеет смысл разбить их на более простые и писать запросы под них. Не стоит все валить в кучу. Потом можно будет попросить ту же LLM скомпоновать это в единый текст или самому собрать руками.
- Обратная связь: еще один принцип заключается в том, чтобы позволить модели уточнять у вас детали и требования. Помните: это диалог, и тут вопросы можете задавать не только вы. Позвольте модели задавать вам уточняющие вопросы, пока у нее не будет достаточно информации. Просто скажите ей, что она может задавать вопросы.
Теперь подробнее о методах или формулировки запросов.
RTF (Roles, Tasks, and Formats). Также известная как RFT, представляет собой универсальный подход, классифицирующий запросы по роли, задаче и формату. RTF подходит для большинства ситуаций. Этот фреймворк включает в себя указание LLM, кем ей быть, какие конкретные действия выполнить и как структурировать окончательный ответ. Например, вы можете попросить LLM “вести себя как финансовый консультант”, предоставить “план накопления на пенсию” и выдать его в “табличном формате”.
“Цепочка мыслей” (Chain-of-Thought) эффективна для улучшения способностей LLM к рассуждению, особенно при решении сложных проблем или математических задач. “Цепочка мыслей” инструктирует LLM обрабатывать информацию пошагово, прежде чем предоставить окончательный ответ. Простое добавление фразы «Давайте подумаем пошагово» в конце вашего запроса запускает эту подробную разбивку. Этот метод помогает LLM выдавать более точные и логичные результаты, раскрывая его промежуточный мыслительный процесс.
“Древо мыслей” (Tree of Thought) описывается как новаторский подход к работе с запросами. Идея заимствована из техники процесса принятия решений человеком. Суть в том, что запросы строятся как система взаимосвязанных узлов, ребер и результатов. Этот метод хорошо подходит для решения сложных проблем, планирования различных сценариев и организации мозгового штурма. Он стимулирует креативность, способствует стратегическому мышлению и позволяет постепенно улучшать результаты. С Tree of Thought пользователям становится легче исследовать разнообразные варианты.
RISEN (Role, Instructions, Steps, End goal, Narrowing). RISEN применяется для анализа сложных или ограниченных по теме задач. Его компоненты обычно включают указание роли, инструкций или входных данных для них, описание шагов для выполнения задачи, определение конечной цели или ожиданий и указание любых ограничений или сужающих факторов. Эта структура полезна для запросов, которые относятся к комплексному плану, исследовательскому проекту. Метод позволяет использовать более длинные и конкретные запросы, адаптированные к конкретным потребностям.
RODES (Role, Objectives, Details, Examples, Sense check). Метод схож с RISEN, но более подходящий, когда у вас есть примеры. RODES структурирует запросы через роли, цели, детали, примеры и проверки смысла. Вы назначаете LLM кем она “работает” и то, чего вы хотите достичь, включая любой контекст или ограничения. Что важно — вы предоставляете примеры хороших результатов. Структура завершается шагом «Проверка смысла», в котором LLM должна подтвердить свое понимание задачи и руководящих принципов перед продолжением.
“Цепочка плотности” (Chain of Density), иногда ошибочно называемая Chain of Destiny (“цепочка судьбы”), рекомендуется для рекурсивной доработки контента, например, для улучшения резюме статей или самих запросов. ”Цепочка” функционирует, генерируя постепенно улучшенные версии контента посредством повторяющихся шагов. Вы формулируете начальный контент, устанавливаете количество рекурсивных итераций и определяете шаги улучшения для каждого цикла. Этот процесс помогает дорабатывать и сжимать информацию, сохраняя ключевые детали, что со временем приводит к более плотным и более полным результатам.
CLEAR (Clear, Logical, Explanatory, Actionable, Relevant) — одна из наиболее распространенных методик формирования запросов. Как следует из расшифровки аббревиатуры, запросы должны быть ясными, логичными, поясняющими, применимыми и релевантными. Каждый компонент выделяет ключевой аспект эффективного написания запросов, от предоставления необходимых деталей до включения конкретных действий или вопросов.
SMART (Specific, Measurable, Achievable, Relevant, Time-bound). SMART рекомендует делать подсказки конкретными, измеримыми (когда это возможно), достижимыми, релевантными и ограниченными по времени (при необходимости). Этот метод гарантирует, что запросы будут четко определены, реалистичны и соответствуют поставленной задаче. Использование критериев SMART помогает пользователям устанавливать четкие ожидания для LLM, что приводит к более целенаправленным и полезным ответам.
“Ролевой” метод (Role-Playing). Ролевой метод часто используется для адаптации ответов LLM путем идентификации ее как определенной личности. Мы даем указание LLM действовать как определенный персонаж или представитель профессии. Этот метод включает определение роли, предоставление соответствующей справочной информации, а затем формулирование задачи или вопроса с этой точки зрения. Это эффективный способ получения целевых и релевантных ответов, которые соответствуют определенному способу поведения.
Сценарный метод (Scenario-Based) — также распространенный подход, когда вы предоставляете LLM подробного описания ситуации или контекста для подготовки ее ответа. Этот метод включает описание конкретного сценария, предоставление необходимой справочной информации, а затем постановку задачи или вопроса, связанного с этой ситуацией.
Итеративный метод (Iterative) заключается в уточнении запросов в ходе множественных взаимодействий. Диалог начинается с широкого начального вопроса, а затем идет постепенное уточнение последующих запросов на основе ответов LLM. Это позволяет пользователям постепенно сужать желаемую информацию или сложность задачи. Итеративный процесс помогает достичь желаемого уровня детализации или специфичности с помощью серии обратных и прямых уточнений.
Это далеко не все методы, которые есть; в одном из источников я видел упоминание того, что существует около шестидесяти методов формирования запросов.
Исходя из вышесказанного, можно сделать вывод, что общение с LLM должно быть осознанным, и перед тем как работать над более-менее серьезной задачей, вам надо определиться с тем, как вы будете это делать. Есть немало сайтов, которые подробно рассказывают о том, как выбрать подходящую методику. А есть еще и сайты, где вам предложат готовые примеры запросов и где искусственный интеллект поможет вам формулировать запросы для общения с другим искусственным интеллектом. Можно воспользоваться ими, но я бы все-таки практиковал самостоятельные упражнения.
В позапрошлом веке тот, кто умел читать и писать, считался грамотным человеком. Каллиграфия считалась искусством. В нашем веке умение общаться с искусственным интеллектом — навык не просто полезный, а необходимый. Если же у вас получится стать “каллиграфом” в мастерстве написания запросов, то вы станете более чем востребованным человеком в наше бурное время.






