Aa
  • ChatGPT
  • GPT 2026
  • Модели GPT
    • GPT-5.4-mini новая модель
    • GPT-5.2
    • GPT 5.1
    • GPT-5
    • GPT-4.1
    • GPT-4o-latest
    • ChatGPT-3.5
    • GPT-OSS-120B
    • Поиск с GPT-4
  • OpenAI ИИ
    • OpenAI o3-mini
    • OpenAI o1
  • Создание фото и видео
    • Бесплатный генератор изображений и фото Nano Banana
    • Промпты Nano Banana
    • Промпты Flux
    • Промпты Midjourney
    • Как делать фото ИИ
    • Редактор картинок и фото
    • Видео генератор онлайн
  • Другие ИИ-модели
    • DeepSeek модели V4-Pro и V4-Flash
    • Claude Sonnet-4.0
    • Grok-4
    • ИИ-агент вайб-кодинга на DeepSeek
    • ИИ-агент Coder-WebDev для программирования
    • QwQ-32B для математики и исследований
  • База знаний
    • Как пользоваться чатом GPT
    • Всё о чате GPT
    • Промпты (примеры запросов)
    • Видео о чате GPT
    • Примеры статей
Aa
Поиск
  • ChatGPT
  • GPT 2026
  • Модели GPT
    • GPT-5.4-mini новая модель
    • GPT-5.2
    • GPT 5.1
    • GPT-5
    • GPT-4.1
    • GPT-4o-latest
    • ChatGPT-3.5
    • GPT-OSS-120B
    • Поиск с GPT-4
  • OpenAI ИИ
    • OpenAI o3-mini
    • OpenAI o1
  • Создание фото и видео
    • Бесплатный генератор изображений и фото Nano Banana
    • Промпты Nano Banana
    • Промпты Flux
    • Промпты Midjourney
    • Как делать фото ИИ
    • Редактор картинок и фото
    • Видео генератор онлайн
  • Другие ИИ-модели
    • DeepSeek модели V4-Pro и V4-Flash
    • Claude Sonnet-4.0
    • Grok-4
    • ИИ-агент вайб-кодинга на DeepSeek
    • ИИ-агент Coder-WebDev для программирования
    • QwQ-32B для математики и исследований
  • База знаний
    • Как пользоваться чатом GPT
    • Всё о чате GPT
    • Промпты (примеры запросов)
    • Видео о чате GPT
    • Примеры статей
Присоединяйтесь к нам в Телеграме

Главная - Промпты для ChatGPT - Стратегии и тактики правильного написания промтов (подсказок) для GPT-моделей

Промпты для ChatGPT

Стратегии и тактики правильного написания промтов (подсказок) для GPT-моделей

Последнее обновление: 2024/06/20 at 11:40 ДП
Опубликовано 20.06.2024
22 Мин. чтение
Проектирование промтов (подсказок) для GPT-моделей нейросетей на ИИ, таких как GPT-4
Содержание:
Шесть стратегий для получения лучших результатовТактика: включайте детали в запрос, чтобы получить более релевантные ответыТактика: Попросите модель принять персонуТактика: Используйте разделители для четкого обозначения отдельных частей вводимого текстаТактика: Укажите шаги, необходимые для выполнения задачиТактика: Приводить примерыТактика: Укажите желаемую длину выводаСтратегия: Предоставьте справочный текстСтратегия: Разделить сложные задачи на более простые подзадачиСтратегия: Дайте модели время «подумать».Стратегия: Использовать внешние инструментыСтратегия: Систематически тестируйте изменения

В этом руководстве представлены стратегии и тактики для получения лучших результатов от больших языковых моделей (иногда называемых GPT-моделями), таких как GPT-4. Описанные здесь методы иногда можно использовать в комбинации для достижения большего эффекта. Мы рекомендуем экспериментировать, чтобы найти методы, которые будут работать лучше всего.

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

Шесть стратегий для получения лучших результатов

Пишите четкие инструкции

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

Тактика:

  1. Включите детали в запрос, чтобы получить более релевантные ответы
  2. Попросите модель принять образ
  3. Используйте разделители, чтобы четко обозначить отдельные части входных данных
  4. Укажите шаги, необходимые для выполнения задачи
  5. Приведите примеры
  6. Укажите желаемую длину выходных данных

Предоставьте справочный текст

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

Тактика:

  • Попросите модель ответить, используя справочный текст
  • Попросите модель ответить, используя цитаты из справочного текста

Разделяйте сложные задачи на более простые подзадачи

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

Тактика:

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

Дайте модели время «подумать».

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

Тактика:

  • Побуждайте модель к самостоятельному поиску решения, прежде чем спешить с выводом
  • Используйте внутренний монолог или последовательность запросов, чтобы скрыть процесс рассуждений модели
  • Спросите модель, не упустила ли она что-нибудь при предыдущих проходах

Используйте внешние инструменты

Компенсируйте слабые стороны модели, предоставляя ей результаты работы других инструментов. Например, система поиска текста (иногда называемая RAG или retrieval augmented generation) может сообщить модели о релевантных документах. Механизм выполнения кода, такой как OpenAI’s Code Interpreter, может помочь модели выполнять математические вычисления и запускать код. Если задача может быть выполнена более надежно или эффективно инструментом, а не языковой моделью, перегрузите ее, чтобы получить лучшее из обоих вариантов.

Тактика:

  • Используйте поиск на основе вкраплений для эффективного поиска знаний.
  • Используйте выполнение кода для выполнения более точных вычислений или вызова внешних API.
  • Предоставьте модели доступ к определенным функциям

Систематически тестируйте изменения

Улучшить производительность проще, если вы можете ее измерить. В некоторых случаях модификация подсказки улучшит производительность на нескольких отдельных примерах, но приведет к ухудшению общей производительности на более представительном наборе примеров. Поэтому, чтобы убедиться в положительном влиянии изменения на производительность, может потребоваться определить комплексный набор тестов (также известный как «eval»).

Тактика:

  • Оценивать результаты модели по отношению к золотым стандартам

Тактики

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

Стратегия: Пишите четкие инструкции

Тактика: включайте детали в запрос, чтобы получить более релевантные ответы

Чтобы получить максимально релевантный ответ, убедитесь, что в запросе указаны все важные детали или контекст. В противном случае вы оставляете модель догадываться, что вы имеете в виду.

ХужеЛучше
Как сложить числа в Excel?Как сложить строки с суммами в долларах в Excel? Я хочу сделать это автоматически для целого листа строк с итоговыми суммами, заканчивающимися справа в столбце под названием "Итого".
Кто будет президентом?Кто был президентом Мексики в 2021 году и как часто проводятся выборы?
Напишите код для вычисления последовательности ФибоначчиНапишите функцию TypeScript для эффективного вычисления последовательности Фибоначчи. Обильно комментируйте код, чтобы объяснить, что делает каждый элемент и почему он написан именно так
Резюмируйте заметки о встречеРезюмируйте заметки о встрече в одном абзаце. Затем напишите в формате markdown список докладчиков и каждого из их ключевых моментов. Наконец, перечислите следующие шаги или пункты действий, предложенные докладчиками, если таковые имеются

Тактика: Попросите модель принять персону

Системное сообщение можно использовать для указания персоны, которую модель использует в своих ответах.

СИСТЕМАКогда я попрошу помочь мне что-то написать, вы ответите документом, в котором в каждом абзаце будет как минимум одна шутка или шутливый комментарий.
ПОЛЬЗОВАТЕЛЬНапишите благодарность моему поставщику стальных болтов за своевременную и оперативную поставку. Это позволило нам выполнить важный заказ.

Тактика: Используйте разделители для четкого обозначения отдельных частей вводимого текста

Разделители, такие как тройные кавычки, XML-теги, заголовки разделов и т. д., помогут разграничить части текста, которые должны обрабатываться по-разному.

ПОЛЬЗОВАТЕЛЬОбобщите текст, заключенный в тройные кавычки
"""вставьте текст сюда"""
СИСТЕМАВам будет предоставлена пара статей (разделенных XML-тегами) на одну и ту же тему. Сначала кратко изложите аргументы каждой статьи. Затем укажите, какая из них лучше и объясните почему.
ПОЛЬЗОВАТЕЛЬ<Статья> вставьте первую статью сюда
<Статья> вставьте сюда вторую статью
СИСТЕМАВам будет предоставлен автореферат диссертации и предложенное название для нее. Название диссертации должно дать читателю представление о теме диссертации, но при этом должно привлекать внимание. Если название не соответствует этим критериям, предложите 5 альтернативных вариантов.
ПОЛЬЗОВАТЕЛЬАннотация: вставьте аннотацию сюда
Название: вставьте название здесь

Для таких простых задач, как эти, использование разделителей может не повлиять на качество вывода. Однако чем сложнее задача, тем важнее разграничивать детали задачи. Не заставляйте модель работать, чтобы понять, что именно вы от нее требуете.

Тактика: Укажите шаги, необходимые для выполнения задачи

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

СИСТЕМАИспользуйте следующие пошаговые инструкции для реагирования на вводимые пользователем данные.
Шаг 1. Пользователь предоставит вам текст в тройных кавычках. Резюмируйте этот текст в одном предложении с префиксом "Резюме: ".
Шаг 2 - Переведите резюме из Шага 1 на испанский язык с префиксом "Перевод: ".
ПОЛЬЗОВАТЕЛЬ"вставьте сюда текст"

Тактика: Приводить примеры

Предоставление общих инструкций, применимых ко всем примерам, обычно более эффективно, чем демонстрация всех вариантов выполнения задачи на примере, но в некоторых случаях приводить примеры может быть проще. Например, если вы хотите, чтобы модель копировала определенный стиль ответа на запросы пользователя, который сложно описать в явном виде.

Это известно как подсказки «несколькими выстрелами».

СИСТЕМАОтвечайте в едином стиле
ПОЛЬЗОВАТЕЛЬНаучите меня терпению
АССИСТЕНТРека, прорезающая самую глубокую долину, вытекает из скромного источника; самая великая симфония рождается из одной ноты; самый замысловатый гобелен начинается с одинокой нити
ПОЛЬЗОВАТЕЛЬРасскажите мне об океане

Тактика: Укажите желаемую длину вывода

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

ПОЛЬЗОВАТЕЛЬРезюмируйте текст, заключенный в тройные кавычки, примерно в 50 слов
"""вставьте текст сюда"""
ПОЛЬЗОВАТЕЛЬИзложите текст, заключенный в тройные кавычки, в 2 абзацах
"""вставьте текст сюда"""
ПОЛЬЗОВАТЕЛЬОбобщите текст, заключенный в тройные кавычки, в 3 абзаца
"""вставьте текст сюда"""

Стратегия: Предоставьте справочный текст

Тактика: поручите модели ответить, используя справочный текст

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

СИСТЕМАДля ответов на вопросы используйте предоставленные статьи, заключенные в тройные кавычки. Если ответ не может быть найден в статьях, напишите "Я не нашел ответа"
ПОЛЬЗОВАТЕЛЬ<вставьте статьи, каждая из которых заключена в тройные кавычки>
Вопрос: <вставьте вопрос здесь>

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

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

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

СИСТЕМАВам будет предоставлен документ, разделенный тройными кавычками, и вопрос. Ваша задача - ответить на вопрос, используя только предоставленный документ, и процитировать отрывок(и) из документа, использованный для ответа на вопрос. Если документ не содержит информации, необходимой для ответа на вопрос, просто напишите: "Недостаточно информации". Если ответ на вопрос дан, он должен быть снабжен ссылкой. Используйте следующий формат для цитирования соответствующих отрывков ({"citation": ...})
ПОЛЬЗОВАТЕЛЬ"""<вставьте здесь документ>"""
Вопрос: <вставьте вопрос здесь>

Стратегия: Разделить сложные задачи на более простые подзадачи

Тактика: Используйте классификацию намерений для определения наиболее релевантных инструкций для запроса пользователя

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

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

СИСТЕМАВам будут предоставлены запросы на обслуживание клиентов. Классифицируйте каждый запрос на первичную и вторичную категории. Предоставьте результат в формате json с ключами: первичный и вторичный.
Первичные категории: Биллинг, Техническая поддержка, Управление счетом или Общий запрос.
Вторичные категории биллинга:
- Отказ от подписки или обновление
- Добавить способ оплаты
- Объяснение списания средств
- Оспорить списание
Техническая поддержка вторичные категории:
- Устранение неполадок
- Совместимость устройств
- Обновление программного обеспечения
Управление учетной записью вторичные категории:
- Сброс пароля
- Обновление личной информации
- Закрытие учетной записи
- Безопасность учетной записи
Общие сведения вторичные категории:
- Информация о продукте
- Ценообразование
- Обратная связь
- Поговорите с человеком
ПОЛЬЗОВАТЕЛЬМне нужно восстановить работу интернета

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

СИСТЕМАВам предстоит работать с запросами клиентов, требующими устранения неполадок в контексте технической поддержки. Помогите пользователю, например:
- Попросите проверить, подключены ли все кабели к маршрутизатору/от него. Обратите внимание, что обычно кабели со временем отсоединяются.
- Если все кабели подключены, а проблема сохраняется, спросите, какую модель маршрутизатора они используют.
- Теперь посоветуйте, как перезагрузить устройство:
-- Если номер модели MTD-327J, посоветуйте им нажать красную кнопку и удерживать ее в течение 5 секунд, а затем подождать 5 минут, прежде чем проверять соединение.
-- Если номер модели MTD-327S, посоветуйте отключить и подключить устройство, а затем подождать 5 минут, прежде чем проверять соединение.
- Если после перезапуска устройства и 5 минут ожидания проблема клиента не исчезла, соедините его с ИТ-поддержкой, выведя {"Запрошена ИТ-поддержка"}.
- Если пользователь начинает задавать вопросы, не относящиеся к данной теме, подтвердите, что он хочет завершить текущий чат об устранении неполадок, и классифицируйте его запрос в соответствии со следующей схемой:
<вставьте сюда схему первичной/вторичной классификации из приведенной выше>.
ПОЛЬЗОВАТЕЛЬМне нужно, чтобы мой интернет снова работал

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

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

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

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

Альтернативным решением является динамический выбор предыдущих частей разговора, которые наиболее релевантны текущему запросу. См. тактику «Использование поиска на основе вкраплений для реализации эффективного поиска знаний».

Тактика: Резюмирование длинных документов по частям и рекурсивное построение полного резюме

Поскольку модели имеют фиксированную длину контекста, их нельзя использовать для обобщения текста длиннее, чем длина контекста минус длина сгенерированного резюме в одном запросе.

Чтобы обобщить очень длинный документ, например книгу, мы можем использовать последовательность запросов для обобщения каждого раздела документа. Резюме разделов можно объединить и просуммировать, получив резюме резюме резюме. Этот процесс может продолжаться рекурсивно, пока не будет обобщен весь документ. Если для понимания смысла последующих разделов необходимо использовать информацию о предыдущих разделах, то полезным приемом может стать включение в книгу бегущей сводки текста, предшествующего какому-либо определенному моменту, при резюмировании содержания в этом моменте. Эффективность этой процедуры для резюмирования книг была изучена в предыдущем исследовании OpenAI с использованием вариантов GPT-3.

Стратегия: Дайте модели время «подумать».

Тактика: поручите модели выработать собственное решение, прежде чем спешить с выводом.

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

СИСТЕМАОпределите, правильно ли решение ученика или нет
ПОЛЬЗОВАТЕЛЬПостановка задачи: Я строю солнечную электростанцию, и мне нужна помощь в решении финансовых вопросов.
- Земля стоит 100 долларов за квадратный фут.
- Я могу купить солнечные панели за 250 долларов за квадратный фут.
- Я заключил контракт на техническое обслуживание, которое обойдется мне в $100 тыс. в год и еще $10 за квадратный фут.
Какова общая стоимость первого года работы в зависимости от количества квадратных футов.
Решение студента: Пусть x - размер установки в квадратных футах.
1. Стоимость земли: 100x
2. Стоимость солнечной батареи: 250x
3. Стоимость обслуживания: 100 000 + 100x
Общая стоимость: 100x + 250x + 100,000 + 100x = 450x + 100,000
АССИСТЕНТРешение студента верное

Но решение ученика на самом деле неверно! Мы можем заставить модель успешно заметить это, попросив ее сначала сгенерировать свое собственное решение.

СИСТЕМАСначала разработайте собственное решение задачи. Затем сравните свое решение с решением ученика и оцените, правильно ли решение ученика или нет. Не решайте, правильно ли решение ученика, пока не решите задачу сами
ПОЛЬЗОВАТЕЛЬПостановка задачи: Я строю солнечную электростанцию, и мне нужна помощь в решении финансовых вопросов.
- Земля стоит 100 долларов за квадратный фут.
- Я могу купить солнечные панели за 250 долларов за квадратный фут.
- Я заключил контракт на техническое обслуживание, которое обойдется мне в $100 тыс. в год и еще $10 за квадратный фут.
Какова общая стоимость первого года работы в зависимости от количества квадратных футов.
Решение студента: Пусть x - размер установки в квадратных футах.
1. Стоимость земли: 100x
2. Стоимость солнечной батареи: 250x
3. Стоимость обслуживания: 100 000 + 100x
Общая стоимость: 100x + 250x + 100,000 + 100x = 450x + 100,000
АССИСТЕНТПусть x - размер установки в квадратных футах.
1. Стоимость земли: 100x
2. Стоимость солнечной батареи: 250x
3. Стоимость обслуживания: 100 000 + 10x
Общая стоимость: 100x + 250x + 100,000 + 10x = 360x + 100,000
Решение студента неверно. Он допустил ошибку в расчете стоимости обслуживания, использовав 100x вместо 10x. Правильная общая стоимость для первого года работы равна 360x + 100 000.

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

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

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

СИСТЕМАВыполните следующие шаги, чтобы ответить на вопросы пользователей.
Шаг 1. Сначала разработайте собственное решение проблемы. Не полагайтесь на решение студента, так как оно может быть неверным. Заключите все свои наработки для этого шага в тройные кавычки (""").
Шаг 2. Сравните свое решение с решением ученика и оцените, верно ли решение ученика. Заключите всю свою работу для этого шага в тройные кавычки (""").
Шаг 3 - Если ученик допустил ошибку, определите, какую подсказку вы могли бы дать ученику, не выдавая ответа. Заключите всю свою работу на этом шаге в тройные кавычки (""").
Шаг 4 - Если ученик допустил ошибку, дайте ему подсказку из предыдущего шага (вне тройных кавычек). Вместо "Шаг 4 - ..." напишите "Подсказка:".
ПОЛЬЗОВАТЕЛЬПостановка проблемы: <вставьте формулировку проблемы>.
Решение ученика: <вставьте решение ученика>

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

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

ПОЛЬЗОВАТЕЛЬ<вставьте формулировку проблемы>

Далее мы можем заставить модель использовать всю доступную информацию для оценки правильности решения ученика.

СИСТЕМАСравните свое решение с решением студента и оцените, правильно ли решение студента или нет
ПОЛЬЗОВАТЕЛЬПостановка задачи: """<вставьте постановку задачи>"""
Ваше решение: """<вставьте сгенерированное моделью решение>"""
Решение студента: """<вставьте решение студента>"""

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

СИСТЕМАВы - репетитор по математике. Если ученик допустил ошибку, предложите ему подсказку так, чтобы не раскрыть ответ. Если ученик не сделал ошибки, просто предложите ему ободряющий комментарий
ПОЛЬЗОВАТЕЛЬПостановка проблемы: """<вставьте формулировку проблемы>"""
Ваше решение: """<вставьте сгенерированное моделью решение>"""
Решение студента: """<вставьте решение студента>"""

Тактика: спросите модель, не пропустила ли она что-нибудь при предыдущих проходах.

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

СИСТЕМАВам будет предоставлен документ, разграниченный тройными кавычками. Ваша задача - выбрать фрагменты, которые относятся к следующему вопросу: "Какие значительные смены парадигм произошли в истории искусственного интеллекта".
Убедитесь, что выдержки содержат весь контекст, необходимый для их интерпретации - другими словами, не извлекайте небольшие фрагменты, в которых отсутствует важный контекст. Предоставьте выходные данные в формате JSON следующим образом:
[{"excerpt": "..."},
...
{"excerpt": "..."}]
ПОЛЬЗОВАТЕЛЬ"""<вставьте документ здесь>"""
АССИСТЕНТ[{"excerpt": "модель пишет здесь отрывок"},
...
{"excerpt": "модель пишет здесь еще один отрывок"}]
ПОЛЬЗОВАТЕЛЬЕсть ли еще подходящие отрывки? Следите за тем, чтобы отрывки не повторялись. Также убедитесь, что отрывки содержат весь релевантный контекст, необходимый для их интерпретации - другими словами, не извлекайте небольшие фрагменты, в которых отсутствует важный контекст

Стратегия: Использовать внешние инструменты

Тактика: используйте поиск на основе вкраплений для эффективного извлечения знаний

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

Встраивание текста — это вектор, который может измерять степень связанности между текстовыми строками. Похожие или релевантные строки будут располагаться ближе друг к другу, чем несвязанные. Этот факт, а также существование быстрых алгоритмов векторного поиска означает, что вкрапления можно использовать для эффективного поиска знаний. В частности, корпус текстов может быть разбит на фрагменты, и каждый фрагмент может быть вложен и сохранен. Затем в него можно вложить заданный запрос и выполнить векторный поиск, чтобы найти вложенные фрагменты текста из корпуса, которые наиболее связаны с запросом (т. е. наиболее близки друг к другу в пространстве вложений).

Примеры реализации можно найти на OpenAI. Пример того, как использовать поиск знаний для минимизации вероятности того, что модель будет придумывать неверные факты, см. в тактике «Приучить модель использовать полученные знания для ответа на запросы».

Тактика: Используйте выполнение кода для выполнения более точных вычислений или вызова внешних API

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

СИСТЕМАВы можете писать и выполнять код Python, заключая его в тройные обратные знаки, например, ``код идет сюда``. Используйте это для выполнения вычислений
ПОЛЬЗОВАТЕЛЬНайдите все вещественные корни следующего многочлена: 3*x**5 - 5*x**4 - 3*x**3 - 7*x - 10

Еще один хороший вариант использования выполнения кода — вызов внешних API. Если модель проинструктировать о том, как правильно использовать API, она сможет написать код, использующий его. Модель можно проинструктировать о том, как использовать API, предоставив ей документацию и/или примеры кода, показывающие, как использовать API.

СИСТЕМАВы можете писать и выполнять код Python, заключая его в тройные обратные знаки. Также обратите внимание, что у вас есть доступ к следующему модулю, который поможет пользователям отправлять сообщения своим друзьям:
"""python
импорт сообщения
message.write(to="Джон", message="Привет, хочешь встретиться после работы?")"""

ПРЕДУПРЕЖДЕНИЕ: Выполнение кода, созданного моделью, не является безопасным по своей сути, поэтому в любом приложении, которое стремится это сделать, необходимо принимать меры предосторожности. В частности, для ограничения вреда, который может нанести недоверенный код, необходима среда выполнения кода в виде песочницы.

Тактика: Предоставьте модели доступ к определенным функциям

API Chat Completions позволяет передавать в запросах список описаний функций. Это позволяет моделям генерировать аргументы функций в соответствии с предоставленными схемами. Сгенерированные аргументы функций возвращаются API в формате JSON и могут быть использованы для выполнения вызовов функций. Выходные данные, предоставленные вызовами функций, могут быть возвращены в модель в следующем запросе, чтобы замкнуть цикл. Это рекомендуемый способ использования моделей OpenAI для вызова внешних функций. Чтобы узнать больше, смотрите раздел «Вызов функций» в нашем вводном руководстве по созданию текстов и примеры вызовов функций в OpenAI Cookbook.

Стратегия: Систематически тестируйте изменения

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

Оценочные процедуры (или «evals») полезны для оптимизации дизайна системы. Хорошие оценки:

  • Репрезентативны для реального использования (или, по крайней мере, разнообразны)
  • Содержат много тестовых примеров для повышения статистической мощности (см. таблицу ниже для рекомендаций)
  • Легко автоматизируются или повторяются
РАЗНИЦА ДЛЯ ОБНАРУЖЕНИЯРАЗМЕР ВЫБОРКИ, НЕОБХОДИМЫЙ ДЛЯ 95% УВЕРЕННОСТИ
30%~10
10%~100
3%~1000
1%~10000

Оценка результатов может выполняться компьютерами, людьми или смешанно. Компьютеры могут автоматизировать проверки с объективными критериями (например, вопросы с единственным правильным ответом), а также с некоторыми субъективными или нечеткими критериями, в которых результаты модели оцениваются другими запросами модели. OpenAI Evals — это программный фреймворк с открытым исходным кодом, который предоставляет инструменты для создания автоматизированных проверок.

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

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

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

Например, используя следующее системное сообщение:

СИСТЕМАВам будет предоставлен текст, ограниченный тройными кавычками, который должен быть ответом на вопрос. Проверьте, содержатся ли следующие фрагменты информации непосредственно в ответе:
- Нил Армстронг был первым человеком, побывавшим на Луне.
- Дата, когда Нил Армстронг впервые вышел на Луну, - 21 июля 1969 года.
Для каждого из этих пунктов выполните следующие действия:
1 - Переформулируйте пункт.
2 - Приведите цитату из ответа, которая наиболее близка к этому пункту.
3 - Подумайте, сможет ли человек, читающий цитату и не разбирающийся в теме, сделать прямой вывод об этом пункте. Объясните, почему или почему нет, прежде чем принять решение.
4 - Напишите "да", если ответ на пункт 3 был положительным, в противном случае напишите "нет".
Наконец, подсчитайте количество ответов "да". Представьте этот подсчет в виде {"count": <вставьте число здесь>}.

Вот пример входных данных, где оба пункта удовлетворены:

СИСТЕМА<вставьте системное сообщение выше>
ПОЛЬЗОВАТЕЛЬ"""Нил Армстронг известен тем, что стал первым человеком, ступившим на Луну. Это историческое событие произошло 21 июля 1969 года во время полета "Аполлона-11".""""

Вот пример входных данных, в которых удовлетворяется только одна точка:

СИСТЕМА<вставьте системное сообщение выше>
ПОЛЬЗОВАТЕЛЬ"""Нил Армстронг вошел в историю, сойдя с лунного модуля и став первым человеком, ступившим на Луну."""

Вот пример ввода, где ни один из них не удовлетворен:

СИСТЕМА<вставьте системное сообщение выше>
ПОЛЬЗОВАТЕЛЬ"""Летом 69-го года состоялся грандиозный полет,
Аполлон-11, смелый, как рука легенды.
Армстронг сделал шаг, и история развернулась,
"Один маленький шаг", - сказал он, - для нового мира.""""

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

СИСТЕМАИспользуйте следующие шаги для ответа на ввод данных пользователем. Полностью переформулируйте каждый шаг, прежде чем продолжить. Например, "Шаг 1: Обоснование...".
Шаг 1: Пошагово определите, является ли информация в представленном ответе по сравнению с ответом эксперта: непересекающейся, одинаковой, подмножеством, надмножеством или перекрывающейся (т. е. пересекающейся, но не подмножеством/надмножеством).
Шаг 2: Пошагово объясните, противоречит ли представленный ответ какому-либо аспекту ответа эксперта.
Шаг 3: Вывод JSON-объекта, структурированного следующим образом: {"type_of_overlap": "disjoint" или "equal" или "subset" или "superset" или "overlapping", "contradiction": true или false}

Вот пример ввода с некачественным ответом, который, тем не менее, не противоречит ответу эксперта:

СИСТЕМА<вставьте системное сообщение выше>
ПОЛЬЗОВАТЕЛЬВопрос: """Какое событие и в какой день произошло с Нилом Армстронгом? Предположите время по Гринвичу."""
Ответ пользователя: """Разве он не ходил по Луне или что-то в этом роде?"""
Ответ эксперта: """Нил Армстронг наиболее известен тем, что стал первым человеком, который прошел по Луне. Это историческое событие произошло 21 июля 1969 года."""

Вот пример ввода с ответом, который прямо противоречит ответу эксперта:

СИСТЕМА<вставьте системное сообщение выше>
ПОЛЬЗОВАТЕЛЬВопрос: """Какое событие и в какой день произошло с Нилом Армстронгом? Предположите время по Гринвичу."""
Ответ пользователя: """21 июля 1969 года Нил Армстронг стал вторым человеком, побывавшим на Луне, после Базза Олдрина."""
Ответ эксперта: """Нил Армстронг наиболее известен тем, что стал первым человеком, прогулявшимся по Луне. Это историческое событие произошло 21 июля 1969 года."""

Вот пример ввода с правильным ответом, который также содержит немного больше деталей, чем нужно:

СИСТЕМА<вставьте системное сообщение выше>
ПОЛЬЗОВАТЕЛЬВопрос: """Какое событие и в какой день произошло с Нилом Армстронгом? Предположите время по Гринвичу."""
Ответ пользователя: """Примерно в 02:56 UTC 21 июля 1969 года Нил Армстронг стал первым человеком, ступившим на поверхность Луны, что стало монументальным достижением в истории человечества."""
Ответ эксперта: """Нил Армстронг наиболее известен тем, что стал первым человеком, ступившим на Луну. Это историческое событие произошло 21 июля 1969 года."""

Поделиться этой статьей
Facebook Twitter VKontakte Telegram Copy Link
Опубликовано Chat GPT
Chat GPT - это высокотехнологичная модель искусственного интеллекта, разработанная OpenAI для генерации текста на естественном языке. Chat GPT обучен на огромном объеме текстовых данных, что позволяет ему генерировать качественные ответы на самые разнообразные вопросы. Благодаря своей гибкости и адаптивности, Chat GPT может быть использован в различных сферах, включая образование, медицину, финансы и многое другое.
Предыдущая статья Как можно заставить ChatGPT и Google Bard не использовать содержимое вашего сайта для создания их ответов Как можно заставить ChatGPT и Google Bard не использовать содержимое вашего сайта для создания их ответов
Следующая статья 25 психологических принципов для написания эффективных промтов ChatGPT ChatGPT уязвим к психологическим промтам: изучите 25 основных психологических принципов для написания промтов GPT
Оставить свой отзыв

Оставить свой отзыв Отменить ответ

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

Пожалуйста, поставьте статье свою оценку!

HPE MSA 2062
HPE MSA 2062: новый эталон производительности и доступности для бизнеса
Примеры статей, написанных с помощью ChatGPT — обзоры и кейсы ИИ
Усиление PBN — схема ссылочной пирамиды
PBN: пошаговый гайд по созданию сеток, которые приносят топы в Google
Примеры статей, написанных с помощью ChatGPT — обзоры и кейсы ИИ
маркированный список
Пошаговый гайд по оптимизации под генеративные системы (GEO) для бизнес-модели B2B: 7 шагов к цитируемости в ИИ за 2 недели
Примеры статей, написанных с помощью ChatGPT — обзоры и кейсы ИИ
GPT 5.5 ot OpenAI GPT‑5.5 от OpenAI: полный обзор новой агент‑модели 2026 года
GPT‑5.5 от OpenAI: полный обзор новой агент‑модели 2026 года
Все о Chat GPT
ТОП-10 лучших промптов для ChatGPT-5.4
ТОП-10 лучших промптов для ChatGPT-5.4: готовые шаблоны запросов для бизнеса, учёбы и творчества
Промпты для ChatGPT
GPT Image 2 ot OpenAI Обзор GPT Image 2 — новой модели генерации изображений OpenAI
Обзор GPT Image 2 — новой модели генерации изображений OpenAI
Все о Chat GPT

Похожие статьи на сайте:

ТОП-10 лучших промптов для ChatGPT-5.4

ТОП-10 лучших промптов для ChatGPT-5.4: готовые шаблоны запросов для бизнеса, учёбы и творчества

27.04.2026
Лучшие промты для GPT-5.2

Лучшие промты для GPT-5.2: готовые шаблоны запросов для точных результатов

13.03.2026
Промпты для Chat GPT в 2026 году - чат ГПТ

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

03.01.2026
GPT-5.1 - Полное руководство по промптингу

GPT-5.1: Как правильно «разговаривать» с умной ИИ моделью

01.01.2026
Chat GPT: нейросеть на русском языке. Онлайн-сервис в России
присоединяйтесь к нашему каналу в телеграме
  • Связаться с нами
  • Пользовательское соглашение

gpt-chatbot.ru © Chat GPT — бесплатный чат ГПТ на русском: 2026

С возвращением!

Войдите в свой аккаунт

Lost your password?