March 11

Промпты

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

Как написать промпт

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

Пример

1. Попросим YandexGPT посоветовать нам фильм.

2. Нолана мы уважаем, но научную фантастику сегодня смотреть что-то не хочется. Изменим промпт.

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

Правила хорошего промпта

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

Пример № 1

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

Пример № 2

Нейросеть может выдать ответ в определённом формате. Оформим ответ на вопрос «На что способна нейросеть?» в виде таблицы.

Пример № 3

Может быть, и на вакансии получится откликаться с помощью нейросети? Или, как в нашем случае, отказываться от работы.

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

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

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

Структура промта

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

Если при соблюдении всех этих рекомендаций модель всё равно генерирует ответ, который не соответствует ожиданиям, можно попробовать сформировать промпт по такому шаблону:

Пример № 1

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

Пример № 2

В данном примере из структуры промта остались лишь общая инструкция и сам вопрос.

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

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

Пример № 3

Задание

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

Вариант решения

Галлюцинации и контекст

Что такое галлюцинации

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

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

Пример № 1

Песни «Красная подводная лодка» не существует, но есть известная песня группы The Beatles «Жёлтая подводная лодка», которую действительно написал Пол Маккартни, но группа исполнила её впервые в 1966 году.

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

Пример № 2

В данном примере нейросеть допускает ошибку при анализе исходной информации, что в итоге приводит к ошибочному ответу.

Галлюцинации модели появляются по многим причинам. Вот несколько из них:

  • Нехватка контекста — когда модели не хватает информации для ответа на запрос.
  • Неправильно сформулированный вопрос или инструкция в промпте.
  • Неверные настройки внутренних параметров генерации ответа. Например, «Температура».
  • Недостаточный объём данных при обучении модели.
  • Отсутствие возможности выполнять проверку данных (фактчекинг) перед формированием итогового ответа.

Важно! Относитесь к ответам нейросети критически. Если вы используете YaGPT для принятия важного решения, выполните проверку достоверности ответа по другим доступным источникам, прежде чем принимать окончательное решение.

YaGPT обучалась на огромном объёме информации. Нейросеть видела различные книги, статьи, посты из соцсетей и многое другое. Однако, несмотря на это, может возникнуть ситуация, когда на ваш вопрос или инструкцию модель не даст верного ответа. В этом случае нейросеть либо ответит «У меня нет ответа на ваш вопрос» (или что-то подобное), либо начнёт галлюцинировать.

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

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

  • Дообучить нейросеть на новых данных, но это долго и дорого. Обучение нейросетей занимает недели и месяцы и требует тысячи специальных высокопроизводительных карт-ускорителей.
  • Воспользоваться промптом и передать контекстную информацию при запросе в нейросеть.

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

Суммаризация текстов

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

Пример № 1

Очень удобно! Нет необходимости внимательно изучать весь текст стенограммы — достаточно прочитать краткое саммари. Ещё можно комбинировать различные сценарии работы в одном запросе.

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

Пример № 2

...

Чтобы ответ YaGPT включал краткую справку (саммари) вашего текста, необходимо при формировании промпта использовать такие инструкции:

  • «выполни суммаризацию»,
  • «подготовь короткую справку»,
  • «выдели наиболее важную информацию» и так далее.

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

Текст статьи скомпонован по материалам курса YandexGPT для начинающих (Яндекс.Практикум)