Бесплатный урок Официальный курс Google Skills на русском
Урок 01 · Текст · ~5 мин

Разработка промптов в Agent Platform

Урок 1 из 5 курса «Промпт-дизайн в Google Agent Platform (Vertex AI)»: официальный курс Google Skills (Google Cloud) (Гугл) на русском языке. Этот урок бесплатный.

Обзор

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

Ознакомьтесь с другими материалами программы Gemini Enterprise Agent Ready (GEAR).

Gemini

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

Gemini API в Agent Platform

Gemini API в Agent Platform предоставляет единый интерфейс для взаимодействия с моделями Gemini. Благодаря этому разработчики могут легко интегрировать эти мощные возможности ИИ в свои приложения. Самые актуальные сведения и подробное описание возможностей последних версий можно найти в официальной документации по Gemini.

Модели Gemini

  • Gemini Pro: спроектирована для сложных рассуждений и решения комплексных задач, включая:
    • анализ и обобщение больших объёмов информации;
    • сложные рассуждения между разными модальностями (текст, код, изображения и так далее);
    • эффективное решение задач при работе со сложными базами кода.
  • Gemini Flash: оптимизирована для высокой скорости и эффективности, обеспечивая:
    • время отклика менее секунды и высокую пропускную способность;
    • высокое качество при меньших затратах для широкого спектра задач;
    • расширенные мультимодальные возможности, включая улучшенное пространственное понимание, новые модальности вывода (текст, аудио, изображения) и встроенную поддержку инструментов (Google Search, выполнение кода и сторонние функции).

Предварительные требования

Перед выполнением этой лабораторной работы вам потребуются базовые знания и навыки в следующих областях:

  • Основы программирования на Python.
  • Общие концепции работы с API.
  • Запуск кода на Python в блокноте Jupyter в Agent Platform Workbench.

Цели работы

В этой лабораторной работе вы узнаете, как:

  • Начать работу с промпт-инжинирингом с помощью Google Gen AI SDK
  • Применять рекомендации по промпт-дизайну, включая лаконичность, конкретность и четкую постановку задачи
  • Изучить различные сценарии генерации текста с помощью Google Gen AI SDK, такие как:
    • Генерация идей
    • Ответы на вопросы
    • Классификация текста
    • Извлечение текста
    • Суммаризация текста

Подготовка и требования

В оригинале Google выдаёт для лабораторной временный учебный проект и аккаунт. Здесь вы выполняете те же шаги в своём проекте Google Cloud: войдите в консоль console.cloud.google.com, создайте или выберите проект с включённой оплатой (подойдёт пробный период с бесплатными кредитами) и откройте Cloud Shell. После работы удалите созданные ресурсы, чтобы за них не списывались деньги.

Задание 1. Откройте блокнот в Agent Platform Workbench

  1. В Google Cloud console в навигационном меню (Иконка навигационного меню) выберите Agent Platform > Notebooks > Workbench.

  2. Найдите инстанс project_0.startup_script.workbench_name и нажмите кнопку Open JupyterLab.

Интерфейс JupyterLab для вашего инстанса Workbench откроется в новой вкладке браузера.

Задание 2. Настройте блокнот

  1. Откройте файл project_0.startup_script.notebook_name.

  2. В диалоговом окне Select Kernel выберите Python 3 (Local) из списка доступных ядер.

  3. Выполните ячейки в разделе Getting Started блокнота. Параметры Project ID и Location уже настроены заранее.

Примечание: если при выполнении любой из ячеек блокнота возвращается ответ с кодом 429, подождите одну минуту и запустите ячейку повторно.

Задание 3. Лучшие практики промпт-инжиниринга

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

В этом разделе вы рассмотрите следующие лучшие практики промпт-инжиниринга:

  • Будьте лаконичны
  • Формулируйте мысли конкретно и четко
  • Задавайте одну задачу за раз
  • Улучшайте качество ответов с помощью примеров
  • Преобразуйте генеративные задачи в задачи классификации для повышения безопасности
  1. Пройдите раздел Be concise в блокноте.
  2. Пройдите раздел Be specific, and well-defined в блокноте.
  3. Пройдите раздел Ask one task at a time в блокноте.
  4. Пройдите раздел Watch out for hallucinations в блокноте.

Задание 4. Снижение вариативности ответов

Как снизить вероятность нерелевантных ответов и галлюцинаций? Один из способов заключается в том, чтобы передать в большую языковую модель (LLM) системные инструкции. В этом разделе вы увидите, как работают системные инструкции и как их можно использовать для уменьшения числа галлюцинаций или не относящихся к делу вопросов в чат-боте для путешествий.

  1. Пройдите раздел блокнота Using system instructions to guardrail the model from irrelevant responses.
  2. Пройдите раздел блокнота Turn generative tasks into classification tasks to reduce output variability.
  3. Пройдите раздел блокнота Classification tasks reduces output variability.

Задание 5. Повышение качества ответов с помощью примеров

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

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

  1. Выполните шаги в разделе Improve response quality by including examples рабочего блокнота.

Поздравляем!

Поздравляем! В этой лабораторной работе вы изучили лучшие практики промпт-инжиниринга при работе с генеративным ИИ на базе Gemini. Вы рассмотрели практические сценарии, в которых соблюдаются основные правила генерации ответов с помощью LLM: формулировать запросы кратко, точно и четко, приводить примеры и задавать вопросы последовательно, по одному за раз.

Что дальше: полезные ресурсы

Ознакомьтесь со следующими ресурсами, чтобы узнать больше о генеративном ИИ и платформе Gemini Enterprise Agent Platform:

Перевод официального курса Google «Промпт-дизайн в Google Agent Platform (Vertex AI)». Оригинал на английском.

Полезные гиды