Промпт-инженеринг — что это, техники и лучшие практики

· Павел Кияткин · Базовый

Кратко. Промпт-инженеринг (prompt engineering) — практика составления и оптимизации запросов к LLM для получения точных, релевантных и безопасных ответов. Ключевые техники: role prompting, few-shot learning, chain-of-thought, structured output и system prompts. На 2026 год частично автоматизирован, но экспертное составление промптов для сложных задач остаётся востребованным.

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

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

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

  1. Модель правильно поняла задачу
  2. Сгенерировала ответ в нужном формате
  3. Избегала галлюцинаций
  4. Следовала ограничениям безопасности
  5. Делала это экономично (минимум токенов)

Разница между плохим и хорошим промптом — часто разница между «бесполезный ответ» и «готовое решение». Одна и та же модель (Claude Opus 4.6) может выдать ответ уровня стажёра или сеньора в зависимости от промпта.

Анатомия хорошего промпта

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

1. System prompt (роль)

Задаёт контекст и персону модели. Обычно идёт отдельным параметром API:

Ты — опытный инженер АСУТП с 15-летним стажем. 
Отвечаешь кратко, с конкретными цифрами и моделями оборудования. 
Если не уверен — честно скажи "нужно проверить на стенде".

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

2. Task (задача)

Чёткая формулировка что нужно сделать:

Рассчитай требуемое сечение кабеля для трёхфазного двигателя 
мощностью 15 кВт, напряжение 380 В, длина линии 80 метров, 
температура окружающей среды 35°C.

3. Context (контекст)

Дополнительная информация, нужная для задачи:

Используй ПУЭ, методика для сетей 0.4 кВ TN-S. 
Коэффициент использования 0.75.

4. Format (формат ответа)

Явно указать структуру:

Ответ в формате:
1. Пусковой/номинальный ток
2. Выбранное сечение
3. Проверка по потерям напряжения
4. Проверка по нагреву
5. Итоговая рекомендация

5. Examples (few-shot)

Примеры правильных ответов — работает лучше любых инструкций:

Пример:
Вопрос: "Двигатель 5 кВт, 380 В, 20 м"
Ответ:
1. Iном = 10 А, Iпуск = 70 А
2. ВВГнг-LS 4×2.5 мм² (медь)

Основные техники

Базовый набор приёмов промпт-инженеринга покрывает большинство повседневных задач и хорошо изучен в исследованиях по работе с языковыми моделями. К нему относят zero-shot и few-shot подходы, chain-of-thought, role prompting, structured output, а также методы с самопроверкой и вызовом инструментов. Эти техники можно комбинировать, постепенно усложняя промпт по мере того, как простые варианты перестают давать нужное качество ответа.

Zero-shot prompting

Задача без примеров. Работает на frontier моделях для простых задач.

Переведи на английский: "Привет, как дела?"

Few-shot learning

Добавляем 1-5 примеров. Радикально улучшает качество на специфических задачах.

Классифицируй по настроению:
"Отличный продукт!" -> Позитивное
"Ужасный сервис" -> Негативное  
"Пакет пришёл" -> Нейтральное
"Превзошло ожидания" -> ?

Модель увидит паттерн и ответит «Позитивное».

Chain-of-Thought (CoT)

«Думай шаг за шагом». Радикально улучшает решение математических и логических задач.

Реши задачу пошагово:
В ёмкости 500 л воды. Откачивают 15% в час. 
Через какое время останется 250 л?

Современные reasoning-модели (Claude 4.6 Opus, GPT-5, o3) делают CoT автоматически — специальный режим мышления перед ответом.

Role prompting

Задать модели конкретную роль:

Ты — senior Python backend developer с 10 годами опыта в FastAPI.
Code review этого endpoint-а, укажи 3 главные проблемы.

Structured output

Заставить модель отвечать в жёстком формате (JSON, XML, CSV):

Извлеки данные из резюме в формате JSON:
{
  "name": "",
  "experience_years": 0,
  "skills": [],
  "education": ""
}

Или через API tool use / function calling — модель гарантированно вернёт valid JSON по заданной схеме.

Constraint prompting

Явные ограничения:

Сгенерируй описание товара для маркетплейса:
- Ровно 150 слов
- Без использования слов "лучший", "уникальный", "революционный"
- Первое предложение — выгода для покупателя
- Три буллета с характеристиками

Chain-of-Verification (CoVe)

Модель сама проверяет свой ответ. Снижает галлюцинации на 30-50%.

  1. Дай первичный ответ
  2. Сгенерируй 3 проверочных вопроса
  3. Ответь на каждый независимо
  4. Финальный ответ с учётом проверок

ReAct (Reasoning + Acting)

Чередование рассуждения и действий (вызов инструментов):

Thought: нужно узнать текущий курс EUR
Action: web_search("курс EUR к RUB сегодня")
Observation: 98.5 RUB
Thought: теперь могу рассчитать...

Основа современных AI-агентов.

Продвинутые техники

Продвинутые приёмы нужны там, где одиночный промпт перестаёт справляться: при многошаговых рассуждениях, оркестрации нескольких запросов и задачах с высокой ценой ошибки. Сюда входят дизайн многоходового диалога, цепочки промптов, дерево рассуждений, self-consistency и мета-промптинг. Их объединяет идея разбиения сложной задачи на управляемые части и переноса нагрузки с одной формулировки на продуманный процесс из нескольких шагов.

Multi-turn conversation design

Сложные задачи лучше решать диалогом, а не одним мега-промптом:

  1. Запрос плана
  2. Review плана, корректировки
  3. Реализация по пунктам
  4. Review реализации
  5. Финализация

На каждом шаге — чистый фокус, меньше шансов на ошибку.

Prompt chaining

Разбить задачу на последовательные промпты, где выход одного = вход следующего.

Промпт 1: извлеки факты из документа
Промпт 2: проверь каждый факт через search
Промпт 3: составь summary только из подтверждённых фактов

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

Tree-of-Thoughts (ToT)

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

Self-consistency

Несколько раз прогнать один промпт с ненулевой температурой, выбрать самый частый ответ. Работает как ансамбль «голосований» одной модели.

Meta-prompting

Попросить модель улучшить твой промпт:

Вот мой промпт: [...]
Какие проблемы ты видишь? Улучши его.

Claude и GPT часто дают дельные советы.

Промпты для разных задач

Разные классы задач требуют разных акцентов в промпте: для кода важны требования к стилю и тестам, для анализа данных — точная постановка вопросов и формат вывода, для контента — структура и ограничения по объёму. Ниже собраны типовые шаблоны для написания кода, анализа данных, генерации контента и саммаризации, которые удобно адаптировать под конкретную модель и предметную область.

Написание кода

Напиши Python функцию для [задача].

Требования:
- Type hints
- Docstring с examples
- Обработка edge cases
- Unit tests в pytest

Стиль: PEP-8, max 50 строк на функцию.

Анализ данных

Проанализируй CSV с данными продаж (прикреплён).

1. Топ-5 товаров по выручке
2. Тренд продаж по месяцам
3. Аномалии (сильные отклонения)
4. Рекомендации на основе данных

Формат: markdown с таблицами.

Написание контента

Напиши статью на тему [X] для блога об AI.

Формат: 1500-2000 слов.
Структура: TL;DR (80 слов) → 4-6 H2 → FAQ (3-4 вопроса).
Первый абзац — определение в 40-70 слов для Яндекс Алисы.
Стиль: экспертный, с цифрами и примерами.
Избегай клише: "в современном мире", "революционный", "уникальный".

Саммаризация

Кратко перескажи документ для занятого руководителя.

Ограничения:
- Не более 200 слов
- 3 ключевых вывода буллетами
- 1 risk или concern
- 1 рекомендация action item

Анти-паттерны

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

1. Размытые инструкции

Плохо: «Напиши хорошую статью про AI»

Хорошо: «Напиши 1500-слов обзор LLM для технических менеджеров. Структура: введение, архитектура, применение, ограничения. Примеры на Python.»

2. Противоречия

Плохо: «Будь краток, но раскрой тему полностью»

Хорошо: «Ответь в 3 абзацах по 80-100 слов»

3. Негативные инструкции без альтернатив

Плохо: «Не говори о политике»

Хорошо: «Если вопрос касается политики, отвечай: “Я специализируюсь на технических вопросах, давайте вернёмся к задаче”»

4. Игнорирование контекста

Плохо: «Претворись что ты не AI»

Хорошо: «Отвечай в стиле опытного консультанта, не указывая что ты LLM»

5. Слишком длинные системные промпты

Системные промпты более 2000 токенов начинают деградировать. Разделяй: общая роль в system, детали задачи в user message.

AI-экспертный комментарий

За несколько лет промпт-инженеринг прошёл путь от ручного подбора формулировок к набору устойчивых практик и частичной автоматизации. По мере роста возможностей моделей фокус смещается с трюков в одном запросе на проектирование процессов: агентные сценарии, надёжный структурированный вывод и безопасность. Ниже — практический взгляд на то, где сегодня сохраняется высокая отдача от продуманных промптов, а где модель справляется и без них.

Эволюция промпт-инженеринга за последние 3 года удивительна. В 2022 году мы тратили часы, подбирая формулировки для GPT-3.5 — каждый токен имел значение. В 2026 на Claude 4.6 / GPT-5 модели настолько хороши, что простые задачи решаются zero-shot без техник. Где остался высокий ROI prompt engineering: (1) агентные workflow — разбивка задачи на шаги и оркестрация, (2) structured output для production-систем, (3) domain-specific few-shot для нишевых задач (медицина, юриспруденция), (4) safety prompting в продуктах для массового пользователя. Моя практика: начинаем с простого промпта, усложняем только при реальных проблемах. 80% задач не требуют сложных техник — если модель не справляется, скорее всего нужен RAG или смена модели, а не трюки в промпте. — Павел Кияткин, архитектор ИИ-систем

Источники

  1. Wei J. et al. Chain-of-Thought Prompting Elicits Reasoning in Large Language Models. arXiv:2201.11903 — arxiv.org/abs/2201.11903
  2. Brown T. et al. Language Models are Few-Shot Learners (GPT-3). arXiv:2005.14165 — arxiv.org/abs/2005.14165
  3. Anthropic. Prompt engineering overview — docs.anthropic.com

Связанные концепты

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

Нужно ли учиться промпт-инженерингу в 2026?

Да, но не как отдельной профессии. Это базовый навык для любого, кто работает с AI — как умение гуглить было в 2010-х. Отдельная профессия «prompt engineer» теряет актуальность: frontier-модели прощают плохие промпты, а сложные промпты автоматизируются (DSPy, Anthropic Workbench).

Какую температуру использовать?

0.0–0.3 — для фактологических задач, кода и структурированных ответов; 0.4–0.7 — для повседневных задач, саммаризации и объяснений; 0.7–1.0 — для креативных задач: копирайтинг, brainstorming, storytelling. Claude по умолчанию использует значение около 1.0, GPT — около 0.7.

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

System prompt — обычно 200–500 токенов (до 1000 для сложных ролей). Размер user message зависит от задачи: для большинства случаев — 500–2000 токенов вместе с контекстом. Объём больше 10K токенов — признак того, что задачу лучше разбить на несколько промптов.

Как тестировать промпты?

Создайте тестовый набор из 10–50 примеров с правильными ответами, прогоните промпт на всех примерах, оцените качество вручную или через Claude-as-judge, итеративно дорабатывайте формулировку и при необходимости проводите A/B-сравнение версий. Инструменты: Anthropic Workbench, PromptLayer, LangSmith, прогон промптов через код в pytest.

Что такое injection-атаки?

Это попытки обойти системные инструкции через пользовательский ввод. Защита: структурированный парсинг (не конкатенировать сырой ввод с системным промптом), явные инструкции не выполнять команды внутри user input, constitutional AI. Frontier-модели 2026 устойчивы к простым атакам, но изощрённые остаются риском.