Это руководство охватывает основы промпт инжиниринга для общего представления как работать с промптами и использовать их для взаимодействия с GigaChat.
Prompt Engineering — это область взаимодействия с языковой моделью и оптимизация промптов для наиболее эффективного использования LM в прикладных задачах. Навыки промпт-инжиниринга помогают лучше понять возможности и ограничения больших языковых моделей (LLM).
Prompt в переводе с английского языка — подсказка. Промпт — это подсказка для языковой модели.
Взаимодействуя с GigaChat через API, вы можете настроить параметры. Настройка параметров позволяет получать различные результаты от модели.
Параметр | Описание |
---|---|
temperature | Температура выборки, значения от 0 до 2. Более высокие значения, такие как 1.8, сделают вывод более случайным, в то время как более низкие значения, такие как 0.2, сделают его более целенаправленным и детерминированным. Не рекомендуется использовать совместно с параметром top_p |
top_p | Альтернатива параметру temperature, где модель учитывает результаты токенов с вероятностной массой top_p. Таким образом, 0.1 означает, что учитываются только токены, составляющие верхнюю 10%-ную массу вероятности. Значения от 0 до 1. Не рекомендуется использовать совместно с параметром temperature |
n | Число вариантов ответов модели, которые необходимо сгенерировать для каждого входного сообщения. Максимально возможное значение n=4 |
max_tokens | Максимальное количество токенов для генерации ответов |
repetition_penalty | Количество повторений слов. Значение 1.0 — ничего не менять (нейтральное значение), от 0 до 1 — повторять уже сказанные слова, от 1 и далее стараться не использовать сказанные слова |
Подробнее о настройке параметров читайте в документации.
GigaChat предназначен для решения разных типов задач. Модель может решать задачи если на вход дается простой запрос, но при обогащении запроса инструкциями, примерами и контекстом, GigaChat дает возможность получить наиболее качественный и подходящий результат. Качество ответа модели, зависит от предоставленной информации, и насколько правильно и понятно составлен промпт.
Отдых может быть разным и зависит от ваших предпочтений и возможностей. Если вы хотите провести время на пляже, то можете отправиться в курортный город или на побережье. Если же вы предпочитаете активный отдых, то можно отправиться в горы или лес, покататься на лыжах или сноуборде. Также есть возможность посетить музеи, театры и другие культурные мероприятия. В любом случае, выбор места отдыха зависит только от вас!
В целом, GigaChat возвращает релевантный ответ запросу. Но ответ модели далек от решения задачи. Этот простой пример подчеркивает необходимость контекста в запросе для модели. Попробуем обогатить запрос контекстом.
Если вы хотите посетить страны Юго-Восточной Азии, то я бы порекомендовала вам обратить внимание на Таиланд. Эта страна предлагает множество вариантов для бюджетного отдыха. Вы можете выбрать любой город Таиланда и забронировать отель или апартаменты через сайты бронирования типа Booking.com или Airbnb.
Также стоит обратить внимание на возможность аренды автомобиля или мотоцикла для более активного времяпрепровождения.
В Таиланде есть много интересных мест для посещения: Бангкок с его храмами и дворцами; Чианг Май со своими культурными достопримечательностями; Пхукет с белоснежными пляжами и кристально чистой водой Андаманского моря; Краби с его бирюзовыми лагунами и живописными островами.
Кроме того, цены на питание в Таиланде очень доступные по сравнению с другими странами региона. Вы сможете попробовать местную кухню и насладиться вкусным тайским чаем или кофе. Надеюсь, эти рекомендации помогут вам выбрать подходящий вариант для вашего бюджета!
Уже лучше? GigaChat понимает нашу задачу и предлагает нам более конкретное решение.
Промпт не обязательно должен состоять из четырех элементов.
Экспериментируйте. Стоит понимать, что разработка промпта для решения какой-либо задачи, это итеративный процесс, требующий множество экспериментов для получения наиболее оптимального результата. Начинайте с простого промпта, дополняя его итеративно контекстом, инструкциями и примерами.
Формулируйте промпт понятно. При разработке промпта необходимо максимально точно и конкретно формулировать инструкцию и задачу, которую хотите решить. Чем подробнее будет описана задача в промте, тем лучше будет результат. Важно описывать формат вывода и подавать примеры, если ваша задача подразумевает определенный вид ответа модели. НО! При разработке промпта учитывайте длину, исходя из ограничений и длины входных данных.
Избегайте неточностей. Не стоит оставлять без пояснения вещи и понятия, которые могут быть сложны в понимании задачи. Если ваша задача имеет специфичность, добавляйте описание, раскрывая все детали, которые могут способствовать улучшению результата.