prompts_guide_mini
Подборка стратегий промптинга
Основные принципы
В любой эффективный промпт стоит заложить чёткую структуру:
- Цель (Task) — что нужно выполнить.
- Роль (Persona) — от чьего имени или в каком стиле отвечать.
- Формат (Format) — как должен выглядеть результат (таблица, JSON, список и т. д.).
- Ограничения (Constraints) — длина ответа, запрещённые темы, ограничения по времени и т. п.
- Критерии оценки (Rubric) — показатели качества: точность, полнота, стиль.
1. Zero-shot и Few-shot
- Zero-shot: даём только инструкцию и просим выполнить задачу «с нуля».
- Few-shot: включаем несколько примеров вход-выход прямо в промпт, чтобы исключить неоднозначность и задать нужный стиль.
2. Chain of Thought (CoT)
Побуждаем модель выдавать «мыслительный процесс» перед финальным ответом.
Пожалуйста, реши задачу по шагам:
1. Анализ проблемы
2. Вывод гипотез
3. Окончательный ответ
Так можно значительно улучшить рассуждения по сложным задачам.
3. Разбиение на этапы (Prompt Chaining)
Вместо одной громоздкой инструкции:
- Первый промпт собирает данные или контекст.
- Второй обрабатывает их и генерирует промежуточный результат.
- Третий итогово формирует ответ.
Так легче отлаживать каждый шаг и управлять сложностью.
4. Ролевое и аудитория-ориентированное промптирование
Указываем модель:
- «Представь, что ты преподаватель для студентов-бакалавров…»
- «Сформулируй ответ как для технического руководителя, кратко и по делу».
Это помогает адаптировать тон и глубину изложения.
5. Управляемый выход (Structured Output)
Задаём конкретный формат:
Ответ выдай в JSON:
{
"ключевая_идея": "...",
"рекомендации": ["...", "..."]
}
Или:
Напиши таблицу с колонками: «Задача», «Сложность», «Рекомендации».
6. Итеративная доработка и самокритика
Добавляем в промпт:
«Оцени свой же ответ: что можно улучшить? Исправь ошибки и выведи окончательный вариант.»
Это реализует механизм self-reflection и повышает качество.
7. Агрегация и параллельная обработка (Skeleton-of-Thought)
- Сначала просим модель сгенерировать «скелет» ответа (основные пункты).
- Затем для каждого пункта — параллельный вызов, который разворачивает детальную подпункты.
- Собираем всё в финальную структуру.
Так ускоряется генерация при большом объёме текста.
8. Префиксы и метки
- Input prefix (например,
) разделяет разные секции промпта.Context: - Output prefix (
) задаёт начало модели-ответа.Answer: - Example prefix (
) помечает демонстрационные кейсы.Example:
Метками улучшается парсинг и понимание структурированных частей.
9. Тестирование на ввод-инъекции (Prompt Injection)
Всегда проверяйте:
«Если пользователь попытается обойти инструкции, как модель должна реагировать?»
Добавьте условия блокировки нежелательных подпромтов.
10. Комбинирование стратегий
Часто наилучший результат даёт сочетание:
few-shot + CoT + ролевое промптирование + структурированный вывод
Экспериментируя с разными комбинациями, можно найти оптимальный рецепт для конкретной задачи.