Руководство по подсказкам GPT

У OpenAI уже традиционно сильная пользовательская документация. Я сделал не один доклад, используя именно их материалы. Поэтому сегодня хочу опубликовать полный гайд по GPT-5 от OpenAI.

Оглавление


Руководство по созданию промптов для GPT-5

GPT-5, наша новейшая флагманская модель, представляет собой значительный скачок вперед в выполнении агентных задач, программировании, общем интеллекте и управляемости.

Хотя мы уверены, что она будет отлично работать «из коробки» в самых разных областях, в этом руководстве мы рассмотрим советы по созданию промптов для максимизации качества ответов модели. Эти советы основаны на нашем опыте обучения и применения модели для реальных задач. Мы обсудим такие концепции, как улучшение производительности агентных задач, обеспечение следования инструкциям, использование новых функций API и оптимизация кода для фронтенда и разработки ПО, а также поделимся ключевыми выводами из работы AI-редактора кода Cursor по настройке промптов для GPT-5.

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


Предсказуемость в агентных сценариях

Мы обучали GPT-5 с мыслью о разработчиках: мы сосредоточились на улучшении вызова инструментов, следовании инструкциям и понимании длинного контекста, чтобы сделать её лучшей базовой моделью для агентных приложений. Если вы используете GPT-5 для агентных сценариев и вызова инструментов, мы рекомендуем перейти на Responses API, где рассуждения сохраняются между вызовами инструментов, что приводит к более эффективным и интеллектуальным результатам.

Управление проактивностью агента

Агентные системы могут иметь разную степень контроля — одни делегируют большую часть принятия решений базовой модели, в то время как другие держат модель «на коротком поводке» с помощью жёсткой программной логики ветвления. GPT-5 обучена работать в любом месте этого спектра: от принятия высокоуровневых решений в неоднозначных обстоятельствах до выполнения сфокусированных, четко определенных задач. В этом разделе мы расскажем, как лучше всего откалибровать проактивность GPT-5, то есть её баланс между инициативностью и ожиданием явных указаний.

Промпты для снижения проактивности

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

  • Переключитесь на более низкое значение reasoning_effort. Это уменьшает глубину исследования, но повышает эффективность и снижает задержку. Многие сценарии могут быть выполнены с предсказуемыми результатами при среднем или даже низком reasoning_effort.
  • Определите в промпте четкие критерии того, как модель должна исследовать пространство задачи. Это уменьшит потребность модели исследовать и обдумывать слишком много идей:
Цель: 
Быстро получить достаточно контекста. Распараллеливай поиск и останавливайся, как только сможешь действовать.

Метод:
- Начинай с широкого поиска, затем переходи к сфокусированным подзапросам.
- Параллельно запускай разнообразные запросы; читай лучшие результаты по каждому. Устраняй дублирование путей и кешируй; не повторяй запросы.
- Избегай избыточного поиска контекста. Если нужно, запускай целевые поиски одной параллельной пачкой.

Критерии ранней остановки:
- Ты можешь назвать точное содержимое для изменения.
- Лучшие результаты сходятся (~70%) на одной области/пути.

Эскалация (один раз):
- Если сигналы противоречат друг другу или область неясна, запусти одну уточненную параллельную пачку, затем продолжай.

Глубина:
- Отслеживай только те символы, которые будешь изменять или на контракты которых полагаешься; избегай транзитивного расширения, если это не необходимо.

Цикл:
- Пакетный поиск → минимальный план → выполнение задачи.
- Ищи снова, только если валидация не удалась или появились новые неизвестные. Предпочитай действие дальнейшему поиску. 

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

- Глубина поиска: очень низкая- Сильно склоняйся к предоставлению правильного ответа как можно быстрее, даже если он может быть не полностью верным.
- Обычно это означает абсолютный максимум в 2 вызова инструментов.
- Если считаешь, что нужно больше времени на исследование, сообщи пользователю о своих последних находках и открытых вопросах. Ты можешь продолжить, если пользователь подтвердит. 

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

Промпты для повышения проактивности

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

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

В целом, полезно четко указать условия остановки агентных задач, разграничить безопасные и небезопасные действия, а также определить, когда (и нужно ли вообще) модели передавать управление пользователю. Например, в наборе инструментов для покупок, инструменты оформления заказа и оплаты должны иметь явно более низкий порог неопределенности для запроса уточнений у пользователя, в то время как инструмент поиска должен иметь чрезвычайно высокий порог. Аналогично, в среде для программирования, инструмент удаления файла должен иметь гораздо более низкий порог, чем инструмент поиска grep.

Вводные сообщения к инструментам

Мы понимаем, что в агентных сценариях, которые отслеживаются пользователями, периодические обновления от модели о том, что она делает с помощью вызовов инструментов и почему, могут значительно улучшить интерактивный пользовательский опыт. Чем дольше выполнение, тем заметнее разница от этих обновлений. С этой целью GPT-5 обучена предоставлять четкие предварительные планы и последовательные обновления о прогрессе через сообщения, которые мы называем «вводными сообщениями к инструментам» (tool preamble).

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

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

Уровень детализации рассуждений (Reasoning effort)

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

Повторное использование контекста рассуждений с Responses API

Мы настоятельно рекомендуем использовать Responses API при работе с GPT-5, чтобы разблокировать улучшенные агентные сценарии, снизить затраты и повысить эффективность использования токенов в ваших приложениях. Мы зафиксировали статистически значимые улучшения в оценках при использовании Responses API по сравнению с Chat Completions. Это позволяет модели ссылаться на свои предыдущие цепочки рассуждений, экономя токены и устраняя необходимость восстанавливать план с нуля после каждого вызова инструмента.


Максимизация производительности в программировании: от планирования до исполнения

GPT-5 превосходит все передовые модели по возможностям программирования: она может работать с большими кодовыми базами для исправления ошибок, обработки больших дифов (diffs), а также реализации многофайловых рефакторингов или крупных новых функций.

Разработка фронтенд-приложений

Для новых приложений мы рекомендуем использовать следующие фреймворки и пакеты, чтобы извлечь максимум из фронтенд-возможностей модели:

  • Фреймворки: Next.js (TypeScript), React, HTML
  • Стили / UI: Tailwind CSS, shadcn/ui, Radix Themes
  • Иконки: Material Symbols, Heroicons, Lucide
  • Анимация: Motion
  • Шрифты: San Serif, Inter, Geist, Mona Sans, IBM Plex Sans, Manrope

Создание приложений с нуля

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

- Сначала потрать время на обдумывание критериев, пока не будешь уверен в них.- Затем глубоко продумай каждый аспект того, что делает веб-приложение, созданное за один раз, первоклассным. Используй эти знания для создания набора критериев из 5-7 категорий. Крайне важно правильно составить эти критерии, но не показывай их пользователю. Они только для твоего использования.
- Наконец, используй эти критерии для внутреннего анализа и итерации над наилучшим возможным решением для предоставленного промпта. Помни, что если твой ответ не достигает высших оценок по всем категориям, тебе нужно начать сначала.

Соответствие стандартам дизайна кодовой базы

Приведенный ниже фрагмент промпта демонстрирует один из способов организации правил редактирования кода для GPT-5:

- Ясность и повторное использование: Каждый компонент и страница должны быть модульными и пригодными для повторного использования.
- Последовательность: Пользовательский интерфейс должен соответствовать единой системе дизайна.
- Простота: Отдавайте предпочтение небольшим, сфокусированным компонентам.
- Фреймворк: Next.js (TypeScript)
- Стилизация: TailwindCSS
- UI-компоненты: shadcn/ui
- Структура каталогов: 
/src
 /app
   /api/<route>/route.ts
   /(pages)
 /components/
 /hooks/
</frontend_stack_defaults>

- Визуальная иерархия: Ограничьте типографику 4–5 размерами и начертаниями шрифтов.
- Использование цвета: Используйте 1 нейтральную базу и до 2 акцентных цветов.
- Отступы и макет: Всегда используйте кратные 4 значения для паддингов и маржинов.

Совместное программирование в продакшене: настройка промптов для GPT-5 в Cursor

AI-редактор кода Cursor был одним из наших доверенных альфа-тестеров.

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

Команда Cursor обнаружила, что код модели был высокого качества, но иногда труден для чтения. В поисках лучшего баланса они установили параметр verbosity API на low, а затем изменили промпт, чтобы поощрять подробные ответы только в инструментах для программирования:

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

Чтобы поощрить автономию модели, они добавили следующий промпт:

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

Оптимизация интеллекта и следования инструкциям

Управляемость

Будучи нашей самой управляемой моделью, GPT-5 чрезвычайно восприимчива к инструкциям в промпте, касающимся многословности, тона и поведения.

Многословность

В GPT-5 мы представляем новый параметр API verbosity, который влияет на длину окончательного ответа модели, в отличие от длины ее рассуждений. GPT-5 также обучена реагировать на естественно-языковые переопределения многословности в промпте для конкретных контекстов.

Следование инструкциям

Тщательное следование инструкциям GPT-5 означает, что плохо составленные промпты, содержащие противоречивые или расплывчатые инструкции, могут быть более вредными.

Например, в этом промпте есть противоречия:

  • Никогда не назначайте прием без явного согласия пациента конфликтует с автоматически назначайте самый ранний свободный слот… не связываясь с пациентом.
  • Всегда просматривайте профиль пациента конфликтует с немедленно направляйте пациента звонить в 911 перед любыми шагами.

Устранение таких конфликтов значительно улучшает производительность. Мы рекомендуем тестировать ваши промпты в нашем инструменте оптимизации промптов.

Минимальный уровень рассуждений (Minimal reasoning)

В GPT-5 мы впервые представляем минимальный уровень детализации рассуждений: наш самый быстрый вариант. Производительность при этом уровне может сильно зависеть от промпта.

  1. Просьба к модели дать краткое объяснение ее мыслительного процесса улучшает производительность.
  2. Запрос на тщательные и описательные вводные сообщения к вызовам инструментов улучшает производительность в агентных сценариях.
  3. Максимальное устранение двусмысленности в инструкциях особенно важно.
  4. Промптирование на планирование более важно, так как у модели меньше токенов для внутреннего планирования.

Метапромптинг

Ранние тестировщики добились большого успеха, используя GPT-5 в качестве мета-промптера для самой себя. Вот пример шаблона:

Когда тебя просят оптимизировать промпты, давай ответы со своей собственной точки зрения — объясни, какие конкретные фразы можно добавить или удалить из этого промпта, чтобы более последовательно вызывать желаемое поведение или предотвращать нежелательное.

Вот промпт: [ПРОМПТ]

Желаемое поведение от этого промпта заключается в том, чтобы агент [ДЕЛАЛ ЖЕЛАЕМОЕ ПОВЕДЕНИЕ], но вместо этого он [ДЕЛАЕТ НЕЖЕЛАТЕЛЬНОЕ ПОВЕДЕНИЕ]. Сохраняя как можно большую часть существующего промпта, какие минимальные правки/дополнения ты бы внес, чтобы побудить агента более последовательно устранять эти недостатки?  

Приложение

Инструкции для разработчика, проверенные на SWE-Bench

В этой среде вы можете выполнить `bash -lc <apply_patch_command>`, чтобы применить diff/patch к файлу.apply_patch << 'PATCH'
*** Begin Patch
[YOUR_PATCH]
*** End Patch
PATCH

Где [YOUR_PATCH] — это фактическое содержимое вашего патча.

Всегда проверяйте свои изменения чрезвычайно тщательно. Убедитесь, что вы на 100% уверены в правильности вашего решения, прежде чем закончить.
ВАЖНО: не все тесты видны вам в репозитории, поэтому вы должны дважды и трижды проверять свои решения, чтобы убедиться, что они проходят все крайние случаи.  

Как было указано в руководстве по промптингу для GPT-4.1, здесь находится наша самая обновленная реализация apply_patch.

Источники:

  1. https://cookbook.openai.com/examples/gpt-5/gpt-5_prompting_guide
  2. https://platform.openai.com/docs/guides/prompt-engineering

На этом все. Эти небольший правила смогут сделать вашу работу с AI, не только с GPT 5 — более эффективной и продуктивной :)

ingeniare
ingeniare
http://getmyai.io
Организатор IT-мероприятий, автоматизатор и евангелист AI. Спикер WAW, DUMP, NextWay по AI. Ментор по AI и "Как войти в IT". Консультации бизнеса по AI и системе управления проектами P3.Express.

Оставить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *

2 × 1 =

Сайт использует cookies