Промпт Инженерия by Lee Boonstra (Часть 10)

Управление длиной ответа LLM

Чтобы контролировать длину сгенерированного ответа языковой модели, вы можете либо установить ограничение на максимальное количество токенов в настройках, либо явно указать желаемую длину в промте. Например:
«Объясните квантовую физику в сообщении длиной с твит».

Использование переменных в промтах

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

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

Пример:

ПРОМТ:{city} = «Амстердам»
«Вы — гид по путешествиям. Расскажите интересный факт о городе: {city}»
Вывод:«Амстердам — красивый город с каналами, мостами и узкими улочками. Он славится богатой историей, культурой и ночной жизнью».

Таблица 20. Использование переменных в промтах.

Экспериментируйте с форматами и стилями

Разные модели, их настройки, формулировки промтов и ключевые слова могут давать разные результаты. Важно тестировать:

  • Стиль (вопрос, утверждение, инструкция).
  • Тип промта (zero-shot, few-shot, системный промт).

Пример для консоли Sega Dreamcast:

  • Вопрос: «Что такое Sega Dreamcast и почему она была революционной?»
  • Утверждение: «Sega Dreamcast — игровая консоль шестого поколения, выпущенная в 1999 году…»
  • Инструкция: «Опишите Sega Dreamcast и её революционность в одном абзаце».

Few-shot-промтинг для классификации

При few-shot-промтинге для задач классификации меняйте порядок классов в примерах, чтобы модель не запоминала последовательность, а училась определять ключевые признаки. Это повысит точность на новых данных.

Совет: Начните с 6 примеров и проверяйте точность.

Адаптация к обновлениям моделей

Следите за изменениями в архитектуре моделей, новых данных и возможностях. Тестируйте свежие версии и корректируйте промты под новые функции. Инструменты вроде Vertex AI Studio помогают хранить и сравнивать версии промтов.

Эксперименты с форматами вывода

Для не творческих задач (извлечение, сортировка, категоризация) пробуйте структурированные форматы, например JSON или XML.

Преимущества JSON:

  • Единообразие стиля.
  • Фокус на нужных данных.
  • Меньше «галлюцинаций».
  • Поддержка типов данных и сортировки.

Таблица 4 в разделе few-shot-промтинга показывает пример структурированного вывода.

Проблемы с JSON и их решение

Недостаток JSON — больший объём токенов, что увеличивает время обработки и стоимость. Обрыв вывода из-за лимита токенов может повредить структуру (например, пропадут закрывающие скобки).

Решение: Библиотека json-repair (доступна в PyPI) автоматически исправляет некорректный JSON, что особенно полезно при обрывах генерации.

Совместная работа над промтами

Если нужно создать эффективный промт, привлеките нескольких специалистов. Когда все следуют лучшим практикам (как в этой главе), сравнение разных вариантов поможет выбрать оптимальный.

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

один × 3 =

Прокрутить вверх