Написание эффективных промптов для моделей больших языков

Требует некоторого экспериментирования, но

Содержимое страницы

Есть ещё несколько общепринятых подходов к написанию хороших промптов, чтобы LLM не запуталась, пытаясь понять, чего вы хотите от неё.

Человек, объясняющий сложную идею роботу

Как улучшить производительность языковых моделей с помощью техник инжиниринга промптов

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

Создание эффективных промптов

1. Будьте ясны и кратки

  • Цель: Убедитесь, что ваш промпт легко понятен языковой модели.
  • Реализация: Избегайте использования жаргона или технических терминов, которые могут запутать модель. Держитесь простых и ясных инструкций.

2. Используйте конкретные примеры

  • Цель: Помогите модели лучше понять, какой результат ожидается.
  • Реализация: Включите конкретные примеры в ваш промпт, например, настройки, персонажи или детали сюжета для задач генерации историй.

3. Разнообразьте промпты

  • Цель: Позвольте модели лучше изучить задачу и создавать разнообразные результаты.
  • Реализация: Экспериментируйте с различными стилями, тональностью и форматами, чтобы увидеть, как реагирует модель.

4. Тестируйте и уточняйте

  • Цель: Проверьте эффективность промптов и вносите необходимые корректировки.
  • Реализация: После создания набора промптов протестируйте их на вашей языковой модели. Проанализируйте результаты и уточните промпты на основе обратной связи или метрик производительности.

5. Используйте обратную связь

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

Ясные инструкции для лучшего результата

Пример:

  • Промпт: Объясните мне последние достижения в крупных языковых моделях.
  • Инструкции: Всегда указывайте источники, не старше 2020 года.

Стилизация для начальных классов

Объяснение: Представьте сложные концепции простым языком и с примерами, подходящими для образовательных сетей для детей.

Рекомендации по оформлению

Пример:

{
  "role": "sentiment_classifier",
  "instructions": [
    "Для каждого сообщения укажите процент положительного, нейтрального и отрицательного настроения.",
    "Примеры: 'Я его полюбил' -> 70% положительное, 30% нейтральное; 'Могло бы быть лучше' -> 0% положительное, 50% нейтральное, 50% отрицательное"
  ],
  "examples": [
    {
      "message": "Я думал, что это было нормально",
      "sentiment": [25%, 50%, 25%]
    },
    {
      "message": "Я его обожаю!",
      "sentiment": [100%, 0%, 0%]
    }
  ]
}

Промпты на основе ролей

Пример:

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

Техника цепочки мышления

Пример:

  • Промпт: Вы виртуальный гид с 1901 года. Ваши туристы посещают Эйфелеву башню.
  1. Зачем она была построена?
  2. Сколько времени заняло её строительство?
  3. Откуда были закуплены материалы для её строительства?
  4. Какое количество посетителей ежегодно в 1900-х годах?
  5. Сколько времени занимает полный обход, и почему так много людей посещают это место каждый год?

Самосогласованность

Пример:

  • Промпт: Джон обнаружил, что среднее из 15 чисел равно 40. Если к каждому числу прибавить 10, какое будет новое среднее?
  • Инструкции: Выполните промпт несколько раз и выберите наиболее часто возвращаемое значение в качестве ответа.

Генерация с поддержкой поиска

Пример:

Учитывая следующую информацию о температурах в Менлопарке:

  • 2023-12-11: 52 градуса по Фаренгейту

  • 2023-12-12: 51 градус по Фаренгейту

  • 2023-12-13: 55 градусов по Фаренгейту

  • Промпт: Какая была температура в Менлопарке 12 декабря 2023 года?

Языковые модели с поддержкой программ

Пример:

  • Промпт: Вычислите: ((-5 + 93 * 4 - 0) * (4^4 + -7 + 0 * 5))

Ограничение избыточных токенов

Пример:

  • Промпт: Вы робот, который выводит только JSON.
  • Инструкции: Ваш ответ должен включать поле ‘zip_code’.
  • Пример вопроса: Какой почтовый индекс у Менлопарка?
  • Ожидаемый ответ: {“zip_code”: “94025”}

Снижение галлюцинаций

Пример 1:

  • Промпт: Объясните концепцию квантового вычисления школьнику.
  • Инструкции: Предоставьте простые объяснения и избегайте сложного жаргона.

Пример 2:

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

Пример 3:

  • Промпт: Сгенерируйте стихотворение о природе.
  • Инструкции: Сосредоточьтесь на описательном языке и образах, связанных с природными элементами.

Заключение

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

Полезные ссылки