October 20

Урок 2: Промпты или как общаться с ChatGPT эффективнее

Сегодня мы погрузимся в интересный и важный процесс, который называется "создание промптов". Что же такое промпт? Как правильно составить промпт? И что такое prompt-engineering? Давайте разберемся вместе.

Что такое промпт?

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

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

Промпты могут быть очень разнообразными. Это может быть простой вопрос, например: "Что такое квантовая физика?". Или это может быть более сложная конструкция, которая задает определенный стиль ответа, например: "Опиши квантовую физику, как если бы ты был автором детской книги". Во втором случае модель будет пытаться упростить концепции и использовать более игровой и непринужденный язык в ответах:

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

Пример:

"Напиши историю о рыцаре, который путешествует по миру, ища сокровища забытых цивилизаций." — здесь мы даем модели исходный контекст и указания о том, какую историю мы хотим увидеть:

Как ими пользоваться?

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

  • Тема: Определите, о чем должен быть ваш промпт. Это поможет сузить фокус и сделать вашу задачу более понятной для ИИ.
  • Роль: Определите, в качестве кого должен выступить ИИ. К примеру, он может "притвориться" юристом, аналитиком, копирайтером.
  • Формат: Решите, в каком формате вы хотите получить ответ. Это может быть диалог, история, рецензия, список и т. д.
  • Аудитория: Учтите интересы и предпочтения вашей аудитории, чтобы сделать промпт максимально привлекательным для них.
  • Ограничения: Определите, есть ли какие-то ограничения, которые необходимо учесть при создании промта (например, длина текста, уровень сложности и т. д.).

Кроме этих элементов, следующие рекомендации помогут вам сделать ваши промпты более эффективными:

  • Будьте конкретными: Чем более точной и конкретной будет ваша инструкция, тем более точный и конкретный будет ответ модели. Если вы просите модель "рассказать историю", она может пойти в любом направлении. Но если вы просите "рассказать историю о молодом пирате, который ищет потерянное сокровище в Южных морях", вы с большей вероятностью получите более интересный и занимательный рассказ.
  • Используйте информационно богатые промпты: Это особенно полезно, когда вы хотите получить более глубокий и подробный ответ. Например, вместо того чтобы спросить: "Что такое квантовая физика?", вы можете спросить: "В чем основные принципы квантовой механики, и как они отличаются от классической физики?"
  • Укажите желаемый стиль или формат: Если вы хотите, чтобы ответ был представлен в определенном стиле или формате, укажите это в своем промпте. Например, вы можете попросить модель "Написать стих о солнечном восходе" или "Рассказать краткую историю на тему любви в стиле драмы".
  • Экспериментируйте: Не бойтесь пробовать разные формулировки или подходы в своих промптах. Это поможет вам лучше понять, как модель реагирует на различные инструкции, и позволит вам отточить свои навыки в формулировании эффективных промптов.

К примеру, спросим: "Представь, что ты ученый, дай ответ на вопрос “Какой размер у вселенной?””. Ответ:

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

Prompt-engineering

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

Когда мы говорим о prompt-engineering, мы имеем в виду создание промптов, которые обеспечивают четкое направление для ChatGPT. Это может означать определение конкретного контекста, указание ожидаемой формы ответа или предоставление более подробных инструкций, которые AI может использовать для генерации более точных ответов.

Например, если бы вы просто попросили ChatGPT "написать историю", результаты могут быть совершенно случайными и непредсказуемыми, потому что AI может не понять контекст или ожидаемые параметры вашего запроса. Однако, если бы вы использовали prompt-engineering для формулирования запроса, например, "Напиши короткую историю о морском капитане, столкнувшемся с проклятием древних морей", то результат был бы более конкретным и соответствовал бы вашим ожиданиям:

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

  • Персонализация: Определите, какую роль должен играть ChatGPT. Например, если вы хотите, чтобы AI в качестве писателя написал главу детективного романа в стиле Агаты Кристи, укажите это в промпте. Определение роли AI поможет вам получить результат, который наиболее соответствует вашим ожиданиям.
  • Уровень детализации: Выберите уровень детализации ответа. Если вам нужен обзор, укажите это в промпте. Если вам нужны подробности, также укажите это.
  • Творческий подход: Если вам нужно создать что-то креативное или необычное, укажите это в промпте. ChatGPT способен создавать истории, шутки, головоломки, стихи и т. д.
  • Экспериментирование с промптами: С более продвинутыми версиями AI, такими как GPT-4, вы можете экспериментировать с более сложными и динамичными промптами, включая длинные промпты, промпты с несколькими вопросами или условными конструкциями.

Prompt-engineering — это искусство и наука одновременно. Это требует практики и творчества, но, как только вы его освоите, вы сможете в полной мере использовать возможности AI для решения своих задач.

Пример создания промпта

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

Ответ:

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

Ответ:

  1. Тестирование: Затем мы протестируем промпт на ChatGPT, оценим полученные результаты и при необходимости откорректируем его.

На этом уроке мы узнали, что такое промпты и как ими пользоваться, а также познакомились с основами prompt-engineering. Это ключевые компоненты эффективного общения с ChatGPT. А теперь попробуйте вы!

Практическое задание

Задача:

Придумать и написать свой собственный промпт для ChatGPT, используя принципы prompt-engineering.

Инструкция:

  1. Выберите тему, на которую вы хотели бы получить ответ от ChatGPT. Это может быть любой вопрос или задача, которую вы хотели бы решить с помощью AI.
  2. Используйте принципы prompt-engineering, которые мы обсудили в этом уроке, чтобы сформулировать ваш промпт. Укажите тему, роль, формат, аудиторию и возможные ограничения.
  3. Напишите ваш промпт и посмотрите, как отреагирует на него ChatGPT.

Пример:

Задача: я хочу, чтобы ChatGPT написал статью о последних тенденциях в области искусственного интеллекта для моего блога о технологиях.

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

Ответ:

Таким образом, вы определили тему (последние тенденции в AI), роль (технологический журналист), формат (информативная статья), аудиторию (читатели блога о технологиях, не являющиеся экспертами в области AI), и ограничения (длина статьи — около 500 слов). Этот промпт предоставляет ChatGPT четкое направление и помогает ему сгенерировать полезный и привлекательный контент.