Основы промпт-инжиниринга
Промпт-инжиниринг — это процесс создания эффективных и точных промптов для работы с большими языковыми моделями (LLM).
Промпт (от англ. prompt — «подсказка») — это текстовое описание задачи, которую необходимо выполнить с помощью ИИ-модели. Это запрос, который задается модели для генерации текста, изображений, кода или других видов контента.
Например, если вы хотите получить изображе ние в стиле картины «Звездная ночь» Ван Гога, то ваш промпт может выглядеть так: «Ты — профессиональный иллюстратор. Тебе хорошо известны стиль и манера письма популярных художников. Твоя задача — создавать изображения в манере выбранного художника. Создай изображение ночного неба в стиле Ван Гога». Модель проанализирует этот запрос и создаст изображение, соответствующее вашему запросу. О том, из каких элементов состоит промпт, мы расскажем ниже.
Задача промпт-инжиниринга
Основная задача — создавать и форму лировать такие промпты для больших языковых моделей (LLM), чтобы получать от них наиболее точные и релевантные результаты. Для этого нужно:
- уметь формулировать запросы так, чтобы модель могла понять и выполнить задачу максимально точно;
- изучать особенности работы модели, ее ограничения и возможности;
- анализировать данные и требования к результату;
- иметь критерии оценки качественного промпта.
В процессе промпт-инжиниринга может быть собрана библиотека промптов.
Библиотека промптов — это набор качественных промптов, которые можно использовать для обучения или тестирования языковой модели. Промпты в библиотеке могут быть сгруппированы по темам, стилям или другим параметрам, что упрощает их поиск и использование.
Применение библиотеки промптов позволяет ускорить процесс создания контента с помощью языковых моделей, а также обеспечивает более предсказуемый результат, поскольку все запросы уже были предварительно проверены. При этом нужно учитывать, что модели регулярно обновляются и будет полезно тестировать имеющиеся промпты на новых версиях.
Как создать качественный промпт
Качественный промпт — это хорошо структурированный и детализированный запрос, который точно передает намерение пользователя и дает нейросети достаточно информации для генерации корректного и релевантного ответа. Такой промпт повышает вероятность получения желаемого результата.
Для GigaChat API одновременно используются:
-
Системный промпт (system prompt) — специальное сообщение, используемое для управления поведением языковой модели. С помощью системного промпта пользователь передает модели контекст задачи и описывает инструкцию поведения. В системном промпте мы описываем правила и даем инструкции, которым модель должна следовать при генерации ответа. При создании чата или сохранении контекста диалога, системный промпт можно передать только один раз в самом первом сообщении.
-
Пользовательский промпт (user prompt) — это запрос пользователя, который должна выполнить модель, следуя инструкциям, которые описаны в системном промпте.
Вместе они составляют один запрос к нейросети.
Например:
Системный промпт