Большинство из нас использует ChatGPT неправильно. Мы не включаем примеры в наши запросы. Мы игнорируем то, что мы можем управлять поведением ChatGPT с помощью ролей. Мы позволяем ChatGPT догадываться вместо того, чтобы предоставлять ему некоторую информацию. Это происходит потому, что мы в основном используем стандартные запросы, которые могут помочь нам выполнить работу один раз, но не всегда. Нам нужно научиться создавать запросы высокого качества, чтобы получить лучшие результаты. Нам нужно изучить технологию создания запросов! В этом руководстве мы изучим 4 техники, используемые в технологии создания запросов.
Few Shot Standard Prompts (Запросы с несколькими примерами)
Few Shot Standard Prompts - это стандартные запросы, которые мы видели ранее, но с примерами задач внутри них.
Зачем нужны примеры? Чтобы увеличить вероятность получения желаемого результата, необходимо добавлять примеры задач, которые запрос должен решать.
Запросы с несколькими примерами включают описание задачи, примеры и сам запрос. В данном случае запрос является началом нового примера, который модель должна завершить, генерируя недостающий текст.
Вот компоненты запросов с несколькими примерами.
Давайте создадим еще один запрос. Скажем, мы хотим извлечь коды аэропортов из текста «Я хочу полететь из Орландо в Бостон».
Вот стандартный запрос, который, как предполагается, используют большинство людей.
Извлеките коды аэропортов из этого текста: «Я хочу полететь из Орландо в Бостон».
Это может выполнить задачу, но иногда этого может быть недостаточно. В таких случаях необходимо использовать запросы с несколькими примерами.
Извлеките коды аэропортов из этого текста:
- «Я хочу полететь из Лос-Анджелеса в Майами». Коды аэропортов: LAX, MIA
- «Я хочу полететь из Нэшвилла в Канзас-Сити». Коды аэропортов: BNA, MCI
- «Я хочу полететь из Орландо в Бостон». Коды аэропортов:
Если мы попробуем использовать предыдущий запрос в ChatGPT, мы получим коды аэропортов в формате, который указали в примере (MCO, BOS).
Имейте в виду, что ранее проводившиеся исследования показали, что фактические ответы в примерах не важны, но важно пространство меток. Пространство меток - это все возможные метки для данной задачи. Вы можете улучшить результаты своих запросов, даже предоставляя случайные метки из пространства меток.
Давайте проверим это, введя случайные коды аэропортов в нашем примере.
Извлеките коды аэропортов из этого текста:
- «Я хочу полететь из Лос-Анджелеса в Майами». Коды аэропортов: DEN, OAK
- «Я хочу полететь из Нэшвилла в Канзас-Сити». Коды аэропортов: DAL, IDA
- «Я хочу полететь из Орландо в Бостон». Коды аэропортов:
Если вы попробуете использовать предыдущий запрос в ChatGPT, вы все равно получите правильные коды аэропортов MCO и BOS.
Независимо от того, являются ли ваши примеры правильными.
Role Prompting (ввод ролей)
Иногда стандартное поведение ChatGPT недостаточно, чтобы получить то, что вам нужно. В этом случае вам нужно задать роль для ChatGPT.
Предположим, вы хотите потренироваться перед собеседованием на работу. С помощью указания ChatGPT "действовать в качестве менеджера по найму" и добавления более подробной информации в запрос, вы сможете симулировать собеседование на любую должность.
Как вы можете видеть, ChatGPT ведет себя так, будто интервьюирует меня на работу.
Точно так же вы можете превратить ChatGPT в языкового наставника для тренировки иностранного языка, например, испанского, или в кинокритика для анализа любого фильма, который вам интересен. В этой статье я подробнее расскажу о том, как превратить ChatGPT в вашего языкового наставника или друга по языку.
Вам нужно только начать ваш запрос со слов "Действовать в качестве ..." и добавить как можно больше деталей. Если вам нужна вдохновение, проверьте этот репозиторий, где вы найдете запросы, чтобы ChatGPT вел себя как стендап-комик, доктор и многое другое.
Добавьте личности в свои запросы и создавайте знания.
Два подхода к формулированию запросов, описанные выше, могут быть полезны при генерации текста для электронных писем, блогов, историй, статей и т. д.
Первый подход, "добавление личности к запросам", подразумевает добавление стиля и описательных признаков. Добавление стиля может помочь тексту получить определенный тон, формальность, предметную область писателя и многое другое.
Например, можно использовать следующий запрос: "Напишите [тему] в стиле эксперта в [области] с опытом работы более 10 лет".
Чтобы настроить вывод еще больше, можно добавить описательные признаки. Описательный признак - это просто прилагательное, которое можно добавить, чтобы настроить запрос.
Например, если вы хотите написать 500-значный блог-пост о том, как искусственный интеллект заменит людей, то если вы создадите стандартный запрос с фразой "написать 500-значный блог-пост о том, как искусственный интеллект заменит людей", вы, вероятно, получите очень общий пост.
Однако, если вы добавите прилагательные, такие как остроумный, саркастический, любопытный и занимательный, результат значительно изменится.
Давайте добавим описательные признаки к предыдущему запросу:
Напишите остроумный блог-пост на 500 слов о том, почему искусственный интеллект не заменит людей. Напишите в стиле эксперта в области искусственного интеллекта с опытом работы более 10 лет. Объясните с помощью забавных примеров.
В нашем примере стиль эксперта в области искусственного интеллекта и прилагательные, такие как остроумный и забавный, добавляют в текст, созданный ChatGPT, другое звучание. Кроме того, наш текст будет труднее определить детекторами ИИ (в этой статье я рассказываю о других способах обмануть детекторы ИИ).
Наконец, можно использовать подход генерации знаний, чтобы улучшить блог-пост. Это заключается в том, чтобы генерировать потенциально полезную информацию о теме перед генерацией конечного ответа.
Цепочка мыслей
В отличие от стандартного подхода к формулированию запросов, при использовании подхода цепочки мыслей модель обязана произвести промежуточные шаги рассуждений перед тем, как дать окончательный ответ на поставленную проблему. Другими словами, модель объяснит свои рассуждения вместо того, чтобы непосредственно давать ответ на проблему.
Зачем нужно рассуждение? Объяснение рассуждения часто приводит к более точным результатам.
Для использования подхода цепочки мыслей необходимо предоставить примеры few-shot, где рассуждение объясняется в том же примере. Таким образом, процесс рассуждения также будет продемонстрирован при ответе на запрос.
Вот сравнение между стандартным и подходом цепочки мыслей.
Как мы видим, факт того, что модель была обязана объяснить своё рассуждение для решения этой математической задачи, привёл к более точным результатам в методе "Chain of Thought Prompting".
Обратите внимание, что "Chain of Thought Prompting" эффективен в улучшении результатов на задачах арифметики, здравого смысла и символического рассуждения.
Обновление: После публикации этой статьи был выпущен GPT-4. GPT-4 превосходит старый ChatGPT в продвинутых возможностях рассуждения, поэтому вам может понадобиться или не понадобиться "Chain of Thought Prompting" в GPT-4. Я настоятельно рекомендую вам протестировать его самостоятельно. Вот 4 способа получить доступ к новому GPT-4.
Шпаргалка
Если вам нравится читать подобные статьи и вы хотите поддержать меня как писателя подписывайтесь на канал и оставляйте комментарии об интересной вам теме, что бы я знал какие темы развивать. Вторая часть о ChatGPT уже в работе и скоро будет готова, где будут конкретные инструкции в виде шпаргалки.