Сибирь AI

Промпт для нейросети: что это такое и как его написать

Промпт это задание, которое вы даете нейросети. От того, как оно написано, зависит ответ. Здесь собрано, что советуют сами разработчики моделей, и примеры на обычных рабочих задачах.

Обновлено . Текст подготовил ООО «ФИИ», источники в конце страницы.

Что такое промпт простыми словами

Промпт это текст, которым вы ставите нейросети задачу: вопрос, просьба, инструкция, иногда вместе с документом, который надо обработать. Сбер в документации GigaChat определяет промпт как текстовое описание задачи для ИИ-модели и выводит слово из английского prompt, «подсказка».

Хороший промпт, по формулировке Сбера, точно передает намерение пользователя. Google называет составление промптов способом получить от модели точные и качественные ответы, OpenAI говорит о том же: написать инструкции так, чтобы модель стабильно выдавала нужный результат.

Гарантии здесь нет. OpenAI прямо пишет, что ответы модели недетерминированы, поэтому подбор промпта это смесь искусства и науки. Один и тот же промпт может дать разные ответы.

Из чего состоит хороший промпт

Разработчики называют части по-разному, но набор у всех похож. Сбер раскладывает промпт на роль, входные данные, задачу и формат ответа. OpenAI делит инструкцию для модели на описание ассистента, указания, примеры и контекст.

  • Задача. Что именно сделать: переписать, сократить, составить план, ответить на вопрос. Anthropic советует давать ясные и явные инструкции и точно описывать, какой результат нужен. Google просит объяснять неоднозначные слова.
  • Контекст. Для кого текст, зачем он, что модели нужно знать. Google советует дать модели нужные сведения, а не рассчитывать, что они у нее уже есть. Anthropic пишет, что объяснение причины помогает модели лучше понять цель. Сбер напоминает про аудиторию ответа.
  • Формат. Таблица, список, письмо, абзац, длина. И Google, и Anthropic советуют задавать формат ответа явно.
  • Примеры. Образец того, что вы хотите получить. Anthropic называет примеры одним из самых надежных способов задать формат, тон и структуру ответа.
  • Ограничения. Чего делать не нужно: не выдумывать, не превышать длину, не менять стиль. Google советует указывать ограничения прямо.

Часто добавляют роль: «ты сотрудник поддержки», «ты редактор». Сбер включает роль в состав промпта, Anthropic пишет, что роль задает поведение и тон модели.

Как написать хороший промпт для нейросети

  1. Решите, какой ответ вы примете. Руководство Anthropic исходит из того, что до работы над промптом уже понятно, что считать успехом.
  2. Скажите, что именно сделать: перепиши, сократи до трех предложений, составь план из пяти пунктов.
  3. Дайте исходный текст целиком, а не пересказ.
  4. Укажите, для кого текст: для карточки товара, для письма клиенту, для доклада.
  5. Если шагов несколько и порядок важен, перечислите их по пунктам. Так советует Anthropic.
  6. Отделите задание от вставленного текста. Anthropic и OpenAI предлагают для этого теги вроде <текст> ... </текст>. В обычном чате можно написать «Текст:» и вставить его после двоеточия.
  7. Для задач с рассуждением попросите модель сначала разобрать задачу, а потом ответить. Anthropic предлагает этот прием на случай, когда особый режим рассуждения у модели выключен.
  8. Проверьте промпт на человеке. Совет Anthropic: покажите промпт коллеге, который не знает задачи. Если он запутается, модель тоже.

Если ответ не понравился, переформулируйте задание, а не повторяйте его. Google называет работу над промптом итеративной и советует просто попробовать другие слова. Сбер предлагает сделать несколько вариантов и сравнить ответы, а также заново проверять промпты на новых версиях моделей.

Примеры промптов: плохой и хороший

Это наши примеры, а не цитаты из руководств. Они собраны по советам выше и показывают разницу в постановке задачи, а не гарантию результата. В квадратных скобках место, куда вставить свой текст.

Письмо клиенту

Плохой промпт: «Напиши письмо клиенту.»

Хороший промпт: «Напиши короткое письмо клиенту о том, что его заказ задерживается на неделю из-за поставщика. Тон вежливый, без оправданий. Предложи на выбор: подождать или отменить заказ с возвратом денег. Не больше пяти предложений, в конце подпись «Отдел продаж».»

Почему лучше: Сказано, о чем письмо, каким тоном писать, что предложить клиенту и какой длины нужен ответ.

Сокращение текста

Плохой промпт: «Сократи.»

Хороший промпт: «Сократи текст ниже до трех предложений для рассылки сотрудникам. Даты и имена оставь как есть, ничего не добавляй от себя. Текст: [вставьте текст целиком]»

Почему лучше: Есть сам текст, а не пересказ, есть длина результата и запрет дописывать то, чего в тексте не было.

Описание товара

Плохой промпт: «Опиши чайник.»

Хороший промпт: «Напиши описание товара для карточки интернет-магазина. Товар: электрический чайник, корпус из стали, автоотключение, подсветка воды, съемный фильтр. Читатель выбирает чайник для дома. Два абзаца, без слов «лучший» и «уникальный», без характеристик, которых нет в списке.»

Почему лучше: Характеристики даны списком, понятно, для кого текст, а запрет на лишние свойства не дает модели их придумать.

План доклада

Плохой промпт: «План доклада про ИИ.»

Хороший промпт: «Составь план короткого доклада для собрания отдела продаж на тему «Как использовать нейросеть в переписке с клиентами». Слушатели не технические специалисты. Пять пунктов, у каждого одна строка с главной мыслью. Последний пункт про риски: ошибки в фактах и персональные данные клиентов.»

Почему лучше: Есть тема, аудитория, число пунктов и то, что обязательно должно войти.

Ответ на отзыв

Плохой промпт: «Ответь на отзыв.»

Хороший промпт: «Ты сотрудник поддержки интернет-магазина. Ответь на отзыв покупателя ниже. Признай проблему, не спорь, предложи написать в поддержку. Не обещай компенсацию: решение о ней принимает менеджер. Не больше четырех предложений. Отзыв: [текст отзыва]»

Почему лучше: Задана роль, сказано, чего делать нельзя и почему, и приложен сам отзыв.

Переписать проще

Плохой промпт: «Сделай текст проще.»

Хороший промпт: «Перепиши текст ниже так, чтобы его понял клиент без технического образования. Термины убери или объясни одной фразой. Смысл и все условия сохрани. Пример нужного стиля: «Мы перенесли ваши данные на новый сервер. Для вас ничего не меняется, пароль прежний.» Текст: [текст]»

Почему лучше: Пример показывает стиль лучше, чем слово «проще», а условие «смысл сохрани» не дает потерять содержание.

Таблица из списка

Плохой промпт: «Сделай таблицу.»

Хороший промпт: «Из списка заявок ниже сделай таблицу с колонками: имя клиента, город, товар, дата заявки. Если в заявке чего-то нет, оставь ячейку пустой и ничего не придумывай. В ответе только таблица, без пояснений. Заявки: [список]»

Почему лучше: Названы колонки, сказано, что делать с пропусками, и задан формат ответа.

Сколько примеров давать

Google рекомендует включать примеры в промпт всегда и пишет, что промпт без примеров, скорее всего, сработает хуже. Сбер советует подобрать число примеров опытом, от одного до нескольких. Anthropic для своих моделей называет от трех до пяти.

Примеры должны быть разными, иначе модель скопирует случайную общую черту. Об этом пишут и Anthropic, и OpenAI. Отделяйте примеры от самого задания, чтобы модель не приняла образец за текст, который надо обработать.

Частые ошибки

  • Слишком общее задание. «Напиши текст» не говорит модели ни о чем: ни о теме, ни о читателе, ни о длине.
  • Противоречие. Сбер прямо пишет, что в запросе не должно быть двусмысленностей и противоречий, например «коротко, но со всеми подробностями».
  • Устаревшие данные в промпте. По Сберу, модель тогда может выдать устаревший ответ.
  • Одни запреты. Anthropic советует писать, что делать, а не только чего не делать: вместо «без канцелярита» лучше «пиши простыми словами, как в разговоре».
  • Все в одном промпте. Для сложной задачи Google советует разбить ее на шаги и давать по одному промпту на шаг, передавая результат дальше.
  • Пересказ вместо текста. Модель работает с тем, что вы ей дали.
  • Повтор того же промпта после неудачного ответа вместо переформулировки.
  • Доверие фактам. Сбер пишет, что ответы модели выглядят логично и убедительно, но бывают вымышленными, и советует ограничить модели свободу толкования. Даты, имена и цифры в ответе проверяйте сами.

Промпт и токены

Промпт тоже состоит из токенов и занимает окно контекста: так называют весь текст, на который модель опирается при ответе, включая сам ответ. Длинная инструкция, вставленные документы и вся предыдущая переписка идут в счет вместе с ответом. Само слово «промпт» наш токенизатор режет на два токена. Подробнее о том, как это считается, в разборе токены в нейросети.

Когда в промпте длинный документ, важен порядок. Anthropic советует ставить документ в начало, а вопрос в конец, и для входов от 20 тысяч токенов пишет об улучшении ответа до 30 процентов в своих тестах. Google тоже ставит вопрос в самый конец. У OpenAI другой совет: контекст обычно ставить ближе к концу инструкции. Если ответ не тот, попробуйте поменять порядок.

Наша генерация текста принимает задание до 1000 знаков вместе со вставленным текстом. Попробовать задание можно в генерации текста.

Частые вопросы

Что такое промпт в нейросети простыми словами

Текст задания для нейросети: вопрос, просьба или инструкция, иногда вместе с документом, который надо обработать. От того, как он написан, зависит ответ.

Как правильно: промпт или промт

В русской документации Сбера пишется «промпт», от английского prompt, и «промпт-инжиниринг». Написание «промт» тоже часто встречается в запросах, речь об одном и том же.

Как написать промпт для нейросети

Скажите, что именно сделать, дайте исходный текст целиком, укажите, для кого результат и в каком виде он нужен, добавьте пример. Если ответ не подошел, переформулируйте задание.

Что такое промпт-инжиниринг

Составление и проверка промптов, чтобы модель стабильно давала нужный результат. Это подбор формулировок по ответам, а не один удачный шаблон: руководства Google и Сбера описывают его как работу с повторами.

Почему один и тот же промпт дает разные ответы

Ответы модели недетерминированы, об этом пишет OpenAI. Разные версии моделей одного семейства тоже могут отвечать по-разному. А наша генерация текста не помнит прошлых обращений: каждое задание отдельное.