Предыдущая часть: Перевод руководства Google по промпт инжинирингу. Часть 1. Конфигурация вывода LLM
Следующая часть: Перевод руководства Google по промпт инжинирингу. Часть 3. Техники написания промптов: Системный, контекстуальный и ролевой промптинг
Перевод руководства Google по промпт инжинирингу (Prompt engineering). Оригинал доступен по ссылке. https://www.kaggle.com/whitepaper-prompt-engineering
Перевод сделан с применением AI.
LLM настроены на выполнение инструкций и обучены работе с большими объемами данных, поэтому они могут понять запрос и сгенерировать ответ. Но LLM не идеальны; чем четче текст промпта, тем легче для них предсказать следующий вероятный текст. Кроме того, специальные методы, которые используют преимущества обучения и работы LLM, помогут вам получить соответствующие результаты от LLM.
Теперь, когда мы понимаем, что такое инжиниринг промптов и что для этого нужно, давайте рассмотрим несколько примеров наиболее важных методов создания промптов.
Общий промпт / Zero-shot
Zero-shot промпт - это самый простой тип промпта. Он содержит только описание задачи и некоторый текст, с которым LLM может начать работу. Это может быть что угодно: вопрос, начало рассказа или инструкции. Название zero-shot означает ’без примеров’.
Давайте используем Vertex AI Studio (для языка) в Vertex AI, которая предоставляет площадку для тестирования промптов. В таблице 1 вы увидите пример zero-shot промпта для классификации обзоров фильмов.
Формат таблицы, используемый ниже, — отличный способ документировать промпты. Ваши промпты, скорее всего, пройдут через множество итераций, прежде чем попадут в базу решений, поэтому важно вести дисциплинированный и структурированный учёт работы над промптами. Подробнее об этом формате таблицы, важности учёта работы над промптами и процессе разработки промптов читайте в разделе «Лучшие практики» далее в главе «Документируйте все попытки создания промптов».
Температуру модели следует установить на низкий уровень, так как творчество не требуется, и мы используем значения top-K и top-P по умолчанию для gemini-pro, которые фактически отключают обе настройки (см. главу «Конфигурацию вывода LLM»). Обратите внимание на сгенерированный вывод. Слова «тревожный» и «шедевр» должны немного усложнить прогнозирование, так как оба слова используются в одном предложении.
Если zero-shot не работает, вы можете предоставить примеры в промпте, что приведёт к «One-shot» и «few-shot» промптингу.
One-shot и few-shot
При создании промптов для моделей ИИ полезно приводить примеры. Эти примеры могут помочь модели понять, о чём вы просите. Примеры особенно полезны, когда вы хотите получить от модели вывод по определённой структуре или шаблону.
One-shot промпт содержит один пример, отсюда и название «One-shot». Идея в том, что у модели есть пример, который она может имитировать для наилучшего выполнения задачи.
Few-shot промпт содержит несколько примеров для модели. Такой подход показывает модели шаблон, которому она должна следовать. Идея похожа на One-shot, но несколько примеров желаемого шаблона увеличивают вероятность того, что модель будет следовать шаблону.
Количество примеров, необходимых для few-shot промпта, зависит от нескольких факторов, включая сложность задачи, качество примеров и возможности используемой вами модели генерирующего ИИ (gen AI). Как правило, вы должны использовать по крайней мере три - пять примеров для few-shot промпта. Однако для более сложных задач вам может потребоваться больше примеров, или же вам может потребоваться меньше примеров из-за ограничений по длине входных данных вашей модели.
В таблице 2 показан пример few-shot промпта. Давайте использовать те же настройки конфигурации модели gemini-pro, что и раньше, за исключением увеличения лимита токенов, чтобы обеспечить более длинный ответ.
При выборе примеров для промпта используйте примеры, соответствующие задаче, которую вы хотите решить. Примеры должны быть разнообразными, качественными и хорошо написанными. Одна небольшая ошибка может сбить модель с толку и привести к нежелательному результату.
Если вы пытаетесь получить результат, устойчивый к различным входным данным, важно включить в примеры крайние случаи. Крайние случаи — это необычные или неожиданные входные данные, с которыми модель всё равно должна справляться.
Все части перевода руководства Google по промпт инжинирингу
Перевод руководства Google по промпт инжинирингу. Часть 1. Конфигурация вывода LLM
Перевод руководства Google по промпт инжинирингу. Часть 7. Лучшие практики для написания промптов, 1
Перевод руководства Google по промпт инжинирингу. Часть 8. Лучшие практики для написания промптов, 2
Перевод руководства Google по промпт инжинирингу. Часть 9. Лучшие практики для написания промптов, 3
Перевод руководства Google по промпт инжинирингу. Часть 10. Резюме и полезные ссылки