Основы

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

Промпт-инжиниринг — это практика написания и проверки инструкций для ИИ-моделей, чтобы они давали надёжный результат. Как это работает и почему это важно.

  • Автор: Vijayraj Palanisamy
  • Обновлено
  • 3 мин чтения

Перевод английского оригинала. Код, промпты и вывод моделей оставлены на английском.

Промпт-инжиниринг — это практика разработки, проверки и доработки инструкций, которые даются большой языковой модели (LLM), чтобы она надёжно выдавала нужный вам результат. Слово «инжиниринг» здесь важно: цель — не один хороший ответ, а одинаковое качество ответа при каждом запуске промпта.

Рабочее определение

Промпт — это всё, что модель получает, прежде чем начать писать: инструкции, фон, примеры, документы и сам вопрос. Промпт-инжиниринг — это решение о том, что входит в этот ввод и как он устроен.

Он включает три вида деятельности:

  1. Уточнение задачи, чтобы ничего важного не оставалось на догадку.
  2. Предоставление контекста, которого у модели нет: ваши данные, ваша аудитория и ваши ограничения.
  3. Измерение результата и изменение промпта на основе фактов, а не интуиции.

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

Языковая модель предсказывает следующий токен по уже увиденным токенам. У неё нет доступа к вашему замыслу, только к вашему тексту. Отсюда два следствия.

Всё, что вы опустили, будет дополнено. Попросите «короткое резюме», и модель сама выберет длину, аудиторию и формат. В следующий раз она выберет иначе. Большая часть нестабильных ответов вызвана решением, которое промпт так и не принял.

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

Вот один и тот же запрос, написанный двумя способами.

Summarize this report.
Summarize the quarterly sales report below for the EMEA leadership team.
Write 5 bullet points covering revenue by country and the change from
last quarter. Return a markdown list.

<report>
{{report}}
</report>

Вторая версия называет аудиторию, длину, содержание и формат и отмечает, где данные начинаются и заканчиваются. В ней нет ничего хитрого. Она просто принимает решения, которые первая версия оставила открытыми.

Почему промпт-инжиниринг важен

Надёжность. Программе, которая вызывает модель, нужен предсказуемый вывод. Промпт, возвращающий JSON в девяти случаях из десяти, ломает десятый запрос.

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

Безопасность. В промптах часто есть текст от пользователей, из документов и с веб-страниц. Без должной осторожности этот текст может переопределить ваши инструкции. Это называется инъекцией в промпт, и защита от неё начинается с того, как построен промпт.

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

Чем промпт-инжиниринг не является

Это не список волшебных фраз. Приёмы вроде обещания чаевых или набора заглавными буквами дают неустойчивый эффект, который меняется между версиями модели. Долговечны чёткая постановка задачи, подходящий контекст и проверка.

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

Промпт-инжиниринг и контекстная инженерия

Когда модели научились читать очень большие входные данные и вызывать инструменты, работа сместилась от формулировки одной инструкции к решению о том, какую информацию модель видит на каждом шаге. Это часто называют контекстной инженерией. Она включает поиск, инструкции для агентов и подключение инструментов, например Model Context Protocol. Принципы те же: дать модели то, что ей нужно, чётко разделив это, и ничего, что её отвлекает.

Что почитать дальше

Применить на практике

Попробуйте: анализатор промптов

Находит неоднозначности, недостающий контекст, противоречия и лишние токены в любом промпте. Бесплатно, детерминированно и без аккаунта.

Связанные инструменты PromptFlowEngine

Ещё по теме «основы»

Все руководства по промпт-инжинирингу