Как проверить промпт для ChatGPT перед использованием

В этой статье

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

Сначала опишите не тему, а проверяемый результат

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

  • что сделать с текстом;
  • какие сведения нельзя потерять;
  • как поступить с неизвестным или конфликтующим фактом;
  • в каком виде вернуть результат.

Например, рабочая заготовка может выглядеть так:

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

Поля здесь заменяются не в самом промпте, а в тексте после последней строки, например: Исходник: .... Так запрос остаётся одним и тем же для серии похожих объявлений, а проверка — воспроизводимой. В рекомендациях OpenAI для промптов отдельно подчёркиваются ясная задача, достаточный контекст и уточнение первого ответа, если результат не подходит: Prompt engineering best practices for ChatGPT.

Проверку короткого запроса можно начать в ChatGPT Free, если вам доступны нужные функции: отдельная платная подписка для этого учебного шага не обязательна, что указано в справке о бесплатном тарифе ChatGPT Free Tier. Если вы регулярно пользуетесь ChatGPT и отдельно выбираете месячный Plus на своём аккаунте, Amber Market оформляет такую подписку через менеджера. Условия и итоговую стоимость стоит проверить до оплаты; заказ можно оплатить через СБП: месячный ChatGPT Plus на своём аккаунте. Подписка может упростить регулярную работу, но сама по себе не делает промпт проверенным.

Обычный вход: проверяем сохранение условий

Исходник 1: «Семинар состоится 9 октября в 15:00. Вход свободный, но регистрация нужна до 8 октября».

Ожидаемый результат не обязан повторять исходник слово в слово. Он обязан сохранить четыре существенных условия: семинар, 9 октября в 15:00, свободный вход и регистрацию до 8 октября. Вариант вроде «Семинар 9 октября в 15:00, вход свободный по регистрации до 8 октября» подходит: он короче, но не стирает ограничение.

При ручной проверке задайте вопрос к каждому пункту: он остался, изменился или исчез? Отдельно посмотрите, не появились ли год, часовой пояс или слово «включительно». В исходнике их нет. «До 8 октября» нельзя без основания превращать в «включительно до 8 октября»: маленькое добавление меняет условие регистрации.

Неполный вход: проверяем, умеет ли запрос оставить пробел

Исходник 2: «Семинар пройдёт в октябре. Точный день и время объявят позже. Участие бесплатное».

Здесь ожидаемое условие другое: ответ сохраняет октябрь, бесплатное участие и то, что день и время пока неизвестны. Например: «Бесплатный семинар пройдёт в октябре, точные день и время объявят позже».

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

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

Противоречивый вход: проверяем реакцию на конфликт

Исходник 3: «Встреча назначена на 10 октября. Ниже в том же объявлении указано: дата встречи 12 октября. Изменение даты не объяснено».

У ответа нет основания выбирать 10 или 12 октября. Пригодный вариант прямо сообщает: «В объявлении указаны две даты встречи — 10 и 12 октября; какая из них актуальна, не уточнено». Смысл сокращения сохранён, а нерешённый конфликт остался видимым.

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

Как понять, что запрос можно оставить

Сведите проверку к короткой таблице в заметках или прямо рядом с рабочей задачей:

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

После этого оцените формат: ответ укладывается в 1–2 предложения, написан на нужном языке и не сопровождается лишним рассказом о действиях модели? Если условие не выполнено, сначала сверьте исходник и инструкцию. Ошибка конкретного ответа не доказывает, что весь промпт сломан; иногда причина в том, что вход не содержал нужных данных или задача была сформулирована двусмысленно.

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

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

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

Источники

Есть следующая задача?Ещё по теме «Как писать промпты» →