Глоссарий

Оперативное проектирование

Овладей искусством разработки подсказок, чтобы направлять модели ИИ, такие как LLM, для получения точных и качественных результатов в контенте, обслуживании клиентов и многом другом.

Обучай модели YOLO просто
с помощью Ultralytics HUB.

Узнай больше

Проектирование подсказок - это искусство и наука создания эффективных входных данных (подсказок), которые направляют модели искусственного интеллекта (ИИ), особенно большие языковые модели (БЯМ), на создание желаемых результатов. Она включает в себя понимание того, как эти модели интерпретируют инструкции, и итеративное проектирование подсказок, которые являются ясными, конкретными и обеспечивают достаточный контекст, чтобы вызвать точные, релевантные и полезные ответы. По мере того как модели ИИ все больше интегрируются в различные инструменты и рабочие процессы, освоение техники разработки подсказок имеет решающее значение для максимального раскрытия их потенциала и обеспечения надежной работы в самых разных задачах - от простых ответов на вопросы до создания сложных креативных текстов.

Как работает Prompt Engineering

Эффективная разработка подсказок - это зачастую итерационный процесс. Он начинается с анализа требований задачи и понимания возможностей и ограничений целевой модели ИИ. Затем инженер разрабатывает первоначальную подсказку, тестирует ее, оценивает результат и дорабатывает подсказку на основе полученных результатов. Эта доработка может включать в себя добавление более конкретных инструкций, предоставление примеров(обучение на нескольких кадрах), определение желаемого формата вывода (например, JSON), установку ограничений или настройку тона. Ключевые техники часто опираются на принципы обработки естественного языка (NLP) и требуют тщательного рассмотрения того, как формулировки влияют на поведение модели, на что влияют обучающие данные и архитектура, как, например, модель Transformer, описанная в знаменитой статье "Attention Is All You Need".

Основные техники подталкивания

В оперативной инженерии обычно используется несколько стратегий:

  • Zero-Shot Prompting: Прямая просьба к модели выполнить задание без предварительных примеров в самой подсказке. Это опирается на уже существующие знания модели, полученные во время обучения. См. Zero-Shot Learning.
  • Few-Shot Prompting: Включение небольшого количества примеров (пар "вход-выход") непосредственно в подсказку, чтобы направить модель на нужную задачу и формат.
  • Побуждение к цепочке мыслей (CoT): Побуждая модель "думать шаг за шагом", подсказывая ей разбить процесс рассуждений на части, прежде чем дать окончательный ответ, что часто улучшает производительность при выполнении сложных заданий.
  • Ролевая подсказка: Задание модели принять определенную личность или роль (например, "Выступить в роли эксперта-разработчика Python "), чтобы адаптировать стиль и содержание ответа.
  • Указание структуры выходных данных: Четко определись с желаемым форматом вывода, например, запроси нумерованный список, таблицу или код, оформленный на определенном языке. Такие ресурсы, как OpenAI Prompt Engineering Guide, предлагают лучшие практики.

Применение в реальном мире

Оперативное проектирование является основополагающим фактором для успешного внедрения многих приложений ИИ:

  1. Автоматизация обслуживания клиентов: Разработка подсказок для чат-ботов и виртуальных помощников, чтобы они точно обрабатывали запросы клиентов, поддерживали определенный голос бренда и должным образом эскалировали сложные вопросы. Компании используют эти методы для улучшения клиентского опыта, как это видно на примере таких платформ, как Zendesk AI.
  2. Создание и обобщение контента: Создание подсказок для инструментов генеративного ИИ (таких, как разработанные Cohere или Anthropic) для создания маркетинговых копий, написания электронных писем, краткого изложения длинных документов(резюмирование текста) или даже генерации фрагментов кода с помощью таких инструментов, как GitHub Copilot.

Среди других применений - работа семантических поисковых систем, интерактивные образовательные инструменты и сложный анализ данных с помощью естественно-языковых интерфейсов.

Prompt Engineering против смежных концепций

Полезно отличать оперативную инженерию от смежных терминов:

  • Обогащение подсказок: Фокусируется на автоматическом дополнении первоначальной подсказки пользователя дополнительным контекстом (например, из базы знаний с помощью RAG) до того, как она попадет в LLM. Инженерия подсказок - это ручное создание основных инструкций.
  • Prompt Tuning: Эффективная по параметрам техника тонкой настройки (PEFT), при которой обучаемые вкрапления (мягкие подсказки) добавляются на вход модели и оптимизируются, а не создаются текстовые подсказки.
  • Тонкая настройка: Она заключается в обновлении фактических весов модели путем ее дальнейшего обучения на определенном наборе данных, адаптируя саму модель, а не только входные подсказки.

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

Актуальность в компьютерном зрении

Традиционно менее заметная в компьютерном зрении (КВ) по сравнению с НЛП, разработка подсказок становится все более актуальной с появлением мультимодальных моделей и подсказывающих систем зрения. Такие модели, как CLIP, YOLO или YOLOE, могут выполнять такие задачи, как обнаружение объектов или сегментация изображений на основе текстовых описаний. Создание эффективных текстовых подсказок (например, "обнаружить все "красные машины", но игнорировать "грузовики"") - это одна из форм разработки подсказок, крайне важная для управления этими языковыми моделями зрения. Платформы вроде Ultralytics HUB облегчают взаимодействие с различными моделями, включая Ultralytics YOLO такие модели, как YOLOv8 и YOLO11где определение задач через интерфейсы может выиграть от принципов оперативной инженерии, особенно по мере того, как модели приобретают все больше интерактивных возможностей.

Читать полностью