В этом руководстве мы создаём агента для бронирования путешествий с участием человека, который рассматривает пользователя как партнёра, а не пассивного наблюдателя. Мы проектируем систему так, чтобы агент сначала открыто рассуждал, составляя структурированный план путешествия, а затем намеренно приостанавливал выполнение любых действий.
Шаги по созданию системы
1. Установка среды выполнения:
* Устанавливаем все необходимые библиотеки и утилиты, необходимые для управления агентами и отображения пользовательского интерфейса.
* Собираем ключ API OpenAI во время выполнения, чтобы он никогда не был жёстко запрограммирован или утечка в ноутбуке.
* Настраиваем выбор модели заранее, чтобы сохранить остальную часть конвейера чистой и воспроизводимой.
2. Определение основных функций приложения Streamlit:
* Реализуем безопасные, детерминированные функции инструментов, которые имитируют полёты, отели и составление маршрутов.
* Разрабатываем эти инструменты так, чтобы они вели себя как реальные API, при этом полностью работая в среде Colab.
* Убеждаемся, что все выходные данные инструментов структурированы, чтобы их можно было проверить перед выполнением.
3. Формализация рассуждений агента:
* Используем строгую схему, которая требует от модели вывода явного плана путешествия, а не свободного текста.
* Генерируем план с помощью модели OpenAI и проверяем его перед включением в рабочий процесс.
* Автоматически внедряем вызовы инструментов, если модель их опускает, чтобы гарантировать полный путь выполнения.
4. Построение рабочего процесса LangGraph:
* Разделяем планирование, утверждение и выполнение на отдельные узлы.
* Преднамеренно прерываем график после планирования, чтобы можно было просмотреть и контролировать намерения агента.
* Разрешаем выполнение инструментов только при явном одобрении человека.
Запуск приложения
* Подключаем агентский рабочий процесс к живому интерфейсу Streamlit, который поддерживает редактирование, утверждение и отклонение планов.
* Сохраняем состояние между запусками с помощью идентификатора потока, чтобы агент вёл себя последовательно во время взаимодействия.
* Запускаем приложение и делаем его общедоступным, обеспечивая реальное сотрудничество с участием человека.
В заключение мы продемонстрировали, как агенты планирования и выполнения становятся значительно более надёжными, когда люди остаются в цикле в нужный момент. Мы показали, что прерывания — это не просто техническая функция, а конструкторский примитив для построения доверия, подотчётности и сотрудничества в агентских системах.
Присоединяйтесь к нам в Telegram, Twitter и подписывайтесь на нашу рассылку. Полный код можно найти здесь.
1. Какие основные шаги необходимо выполнить для создания агента для бронирования путешествий с участием человека в планировании и выполнении действий?
Ответ: для создания агента для бронирования путешествий с участием человека в планировании и выполнении действий необходимо выполнить следующие основные шаги:
* установка среды выполнения (установка всех необходимых библиотек и утилит, сбор ключа API OpenAI во время выполнения, настройка выбора модели заранее);
* определение основных функций приложения Streamlit (реализация безопасных, детерминированных функций инструментов, разработка инструментов так, чтобы они вели себя как реальные API, структурирование выходных данных инструментов);
* формализация рассуждений агента (использование строгой схемы, требующей от модели вывода явного плана путешествия, генерация плана с помощью модели OpenAI и проверка его перед включением в рабочий процесс);
* построение рабочего процесса LangGraph (разделение планирования, утверждения и выполнения на отдельные узлы, прерывание графика после планирования для просмотра и контроля намерений агента, разрешение выполнения инструментов только при явном одобрении человека).
2. Какие преимущества даёт использование прерываний в агентских системах?
Ответ: использование прерываний в агентских системах позволяет построить доверие, подотчётность и сотрудничество. Прерывания обеспечивают возможность просмотра и контроля намерений агента, что делает агентские системы более надёжными и предсказуемыми.
3. Какие инструменты и библиотеки используются для создания агента для бронирования путешествий?
Ответ: для создания агента для бронирования путешествий используются следующие инструменты и библиотеки:
* OpenAI для генерации плана путешествия;
* Streamlit для создания пользовательского интерфейса;
* Colab для работы с инструментами, имитирующими полёты, отели и составление маршрутов.
4. Как обеспечивается последовательность поведения агента во время взаимодействия?
Ответ: последовательность поведения агента во время взаимодействия обеспечивается сохранением состояния между запусками с помощью идентификатора потока. Это позволяет агенту вести себя последовательно во время взаимодействия с пользователем.
5. Какие функции выполняет агент в системе бронирования путешествий?
Ответ: агент в системе бронирования путешествий выполняет следующие функции:
* планирование путешествия (генерирует структурированный план путешествия с помощью модели OpenAI);
* утверждение плана (приостанавливает выполнение любых действий до явного одобрения пользователя);
* выполнение действий (реализует запланированные действия после получения одобрения пользователя).