Как создать приложение Google Chat с ИИ-агентом ADK

На этой странице рассказывается, как создать приложение Google Chat, которое взаимодействует с ИИ-агентом Agent Development Kit (ADK), размещенным в Vertex AI Agent Engine.

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

Пример мультиагентного приложения LLM Auditor в качестве приложения Chat.

На диаграмме ниже показана архитектура и шаблон обмена сообщениями.

Архитектура приложения для Chat, реализованного с помощью ИИ-агента ADK.

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

  1. Пользователь отправляет сообщение приложению Chat в чате или чат-группе.
  2. Логика приложения Chat, реализованная в Apps Script или в виде веб-сервера с конечными точками HTTP, получает и обрабатывает сообщение.
  3. ИИ-агент, реализованный с помощью ADK и размещенный в Vertex AI Agent Engine, получает и обрабатывает взаимодействие.
  4. Приложение Chat или ИИ-агент можно интегрировать с сервисами Google Workspace, такими как Календарь или Таблицы, или другими сервисами Google, например Картами или YouTube.
  5. Приложение Chat асинхронно отправляет ответы, используя Google Chat API, чтобы сообщать о прогрессе ИИ-агента.
  6. Ответы будут отправлены пользователю.

Цели

  • Настройте среду.
  • Разверните ИИ-агента ADK.
  • Разверните приложение Chat.
  • Настройте приложение Chat.
  • Проверьте приложение Chat.

Требования

Как настроить среду

Как включить API Google Cloud

Прежде чем использовать API Google, их нужно включить в облачном проекте Google Cloud. В одном облачном проекте Google Cloud можно включить один или несколько API.

Как настроить окно запроса доступа OAuth

Для всех приложений, использующих OAuth 2.0, требуется настроить окно запроса доступа. Настройте окно запроса доступа OAuth для своего приложения. Это позволит вам определить, что будет показываться пользователям и проверяющим, а также зарегистрировать приложение, чтобы опубликовать его позже.

  1. В консоли API Google нажмите на значок меню > Платформа аутентификации Google > Брендинг.

    Перейти к брендингу

  2. Если вы уже настроили платформу аутентификации Google, вы можете задать следующие настройки окна запроса доступа OAuth в разделах Брендинг, Аудитория и Доступ к данным. Если вы видите сообщение Google Auth platform not configured yet (Платформа Google Auth ещё не настроена), нажмите Get Started (Начать):
    1. В разделе Информация о приложении в поле Название приложения введите название приложения.
    2. В поле Электронный адрес службы поддержки укажите адрес, по которому пользователи смогут обращаться с вопросами о согласии.
    3. Нажмите Далее.
    4. В разделе Аудитория выберите Внутренние.
    5. Нажмите Далее.
    6. В разделе Контактная информация укажите адрес электронной почты, на который вы хотите получать уведомления об изменениях в проекте.
    7. Нажмите Далее.
    8. В разделе Завершение ознакомьтесь с Правилами в отношении пользовательских данных сервисов API Google и, если вы согласны с ними, выберите Я принимаю Правила в отношении пользовательских данных сервисов API Google.
    9. Нажмите Продолжить.
    10. Нажмите Создать.
  3. Пока вы можете пропустить добавление областей действия. В будущем, когда вы будете создавать приложение для использования за пределами организации Google Workspace, вам нужно будет изменить Тип пользователя на Внешний. Затем добавьте области авторизации, необходимые вашему приложению. Подробнее о том, как настроить согласие OAuth…

Как создать сервисный аккаунт в консоли Google Cloud

Создайте сервисный аккаунт с ролью Vertex AI User, выполнив следующие действия:

Google Cloud Console

  1. В консоли Google Cloud нажмите на значок меню > IAM и администрирование > Сервисные аккаунты.

    Перейти на страницу сервисных аккаунтов

    Остальные действия выполняются в консоли Google Cloud.

  2. Выберите проект Google Cloud.
  3. Нажмите Создать сервисный аккаунт.
  4. Введите название сервисного аккаунта, которое будет показываться в консоли Google Cloud.
  5. Если вы не хотите настраивать контроль доступа сейчас, нажмите Готово, чтобы завершить создание сервисного аккаунта. Чтобы настроить контроль доступа сейчас, нажмите Создать и продолжить и перейдите к следующему шагу.
  6. Необязательно: назначьте сервисному аккаунту роли, чтобы предоставить доступ к ресурсам проекта Google Cloud в дополнение к ресурсам Google Workspace. Подробнее об управлении доступом к проектам, папкам и организациям…
  7. Нажмите Продолжить.
  8. Необязательно: укажите пользователей или группы, которые могут управлять этим сервисным аккаунтом и выполнять с ним действия. Подробнее о представлении сервисного аккаунта…
  9. Нажмите Готово, чтобы завершить создание сервисного аккаунта.

    Запишите адрес электронной почты сервисного аккаунта.

gcloud CLI

  1. Создайте сервисный аккаунт:
    gcloud iam service-accounts create SERVICE_ACCOUNT_NAME \
      --display-name="SERVICE_ACCOUNT_NAME"
  2. Необязательно: назначьте сервисному аккаунту роли, чтобы предоставить доступ к ресурсам проекта Google Cloud в дополнение к ресурсам Google Workspace. Подробнее об управлении доступом к проектам, папкам и организациям…

Сервисный аккаунт появится на странице сервисных аккаунтов.

Как создать закрытый ключ

Чтобы создать и скачать закрытый ключ для сервисного аккаунта, выполните следующие действия:

  1. В консоли Google Cloud перейдите в меню > IAM и администрирование > Сервисные аккаунты.

    Перейти на страницу сервисных аккаунтов

    Остальные действия выполняются в консоли Google Cloud.

  2. Выберите проект Google Cloud.
  3. Нажмите на адрес электронной почты сервисного аккаунта, для которого вы хотите создать ключ.
  4. Откройте вкладку Ключи.
  5. Нажмите на раскрывающееся меню Добавить ключ и выберите Создать ключ.
  6. В качестве типа ключа выберите JSON и нажмите Создать.

    Будет сгенерирована новая пара открытого и закрытого ключей, которая будет скачана на ваш компьютер в виде файла ключа сервисного аккаунта. Сохраните скачанный JSON-файл как credentials.json в рабочем каталоге. Этот файл – единственная копия ключа. После того как вы скачаете файл ключа, повторно скачать его будет нельзя. Информацию о том, как безопасно хранить ключ, можно найти в статье Рекомендации по управлению ключами сервисных аккаунтов.

Подробнее о сервисных аккаунтах в документации по Google Cloud IAM…

Как развернуть ИИ-агента ADK

  1. Откройте образец LLM Auditor в Vertex AI Agent Garden:

    Открыть пример

  2. Нажмите Развернуть.

  3. Если появится запрос, выберите проект Google Cloud.

  4. Нажмите Deploy in Cloud Shell (Развернуть в Cloud Shell).

  5. Если появится запрос, нажмите Авторизовать и пройдите процедуру OAuth для Cloud Shell.

  6. Когда Cloud Shell будет полностью загружен, нажмите Ввод, чтобы выполнить предварительно загруженную команду и начать развертывание.

  7. Если вам будет предложено указать регион, нажмите Ввод, чтобы использовать значение по умолчанию.

  8. После этого перейдите в Vertex AI Agent Engine:

    Открыть Vertex AI Agent Engine

  9. Нажмите на значок "Копировать" Значок копирования, чтобы скопировать название ресурса недавно развернутого агента из таблицы.

Как создать и настроить проект приложения Chat

  1. Нажмите кнопку ниже, чтобы открыть проект скрипта Google Apps ADK AI Agent Quickstart.

    Как открыть проект

  2. Нажмите Обзор > Значок копирования Создать копию.

  3. В проекте Apps Script нажмите Значок настроек проекта Настройки проекта > Изменить свойства скрипта > Добавить свойство скрипта, чтобы добавить следующие свойства скрипта:

    1. REASONING_ENGINE_RESOURCE_NAME с названием ресурса ИИ-агента Vertex AI, скопированным на предыдущих шагах.
    2. SERVICE_ACCOUNT_KEY с ключом JSON из сервисного аккаунта, скачанным на предыдущих этапах, например { ... }.
  4. Нажмите Сохранить свойства скрипта.

  5. В Google API Console нажмите на значок меню > IAM и администрирование > Настройки.

    Перейти к настройкам IAM и администрирования

  6. В поле Номер проекта скопируйте значение.

  7. В проекте Apps Script нажмите Значок настроек проекта Настройки проекта.

  8. В разделе Проект Google Cloud Platform (GCP) нажмите Изменить проект.

  9. В поле Номер облачного проекта GCP вставьте номер облачного проекта Google Cloud, скопированный на предыдущих шагах.

  10. Нажмите Настроить проект. Облачный проект и проект Apps Script теперь связаны.

Как создать тестовое развертывание

Вам понадобится идентификатор развертывания для этого проекта Apps Script, чтобы использовать его на следующем шаге.

Чтобы получить идентификатор развертывания HEAD, выполните следующие действия:

  1. В проекте Apps Script для приложения Chat нажмите Развернуть > Тестовые развертывания.
  2. В разделе Идентификатор развертывания головного устройства нажмите Значок копирования Копировать.
  3. Нажмите Готово.

Как настроить приложение Chat

Чтобы развернуть приложение Google Chat для тестирования с помощью развертывания Apps Script, выполните следующие действия:

  1. В API Console выполните поиск по запросу Google Chat API и нажмите Google Chat API.
  2. Нажмите Настроить.
  3. Нажмите Настройки и настройте приложение Chat:

    1. В поле Название приложения введите ADK Quickstart.
    2. В поле Avatar URL (URL аватара) введите https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png.
    3. В поле Description (Описание) введите ADK Quickstart.
    4. В разделе Функциональность выберите Присоединяться к чат-группам и групповым чатам.
    5. В разделе "Настройки подключения" выберите Проект Apps Script.
    6. В поле Deployment ID (Идентификатор развертывания) вставьте идентификатор развертывания Head, скопированный ранее.
    7. В разделе "Видимость" выберите Определенные пользователи и группы в вашем домене и введите свой адрес электронной почты.
  4. Нажмите Сохранить.

Приложение Chat готово отвечать на сообщения.

Как протестировать приложение Chat

Чтобы протестировать приложение Chat, откройте прямую переписку с ним и отправьте сообщение:

  1. Откройте Google Chat, используя аккаунт Google Workspace, который вы указали, когда добавляли себя в качестве доверенного тестировщика.

    Перейти в Google Chat

  2. Нажмите Новый чат.
  3. В поле Добавьте одного или нескольких пользователей введите название приложения Chat.
  4. Выберите приложение Chat в результатах поиска. Откроется прямая переписка.

  5. В новой прямой переписке с приложением введите The Eiffel Tower was completed in 1900 и нажмитеenter.

    Приложение Chat ответит с помощью субагентов Критик и Редактор.

Чтобы добавить доверенных тестировщиков и узнать больше о тестировании интерактивных функций, ознакомьтесь со статьей Как тестировать интерактивные функции приложений для Google Chat.

Устранение неполадок

Если приложение Google Chat или карточка возвращает ошибку, в интерфейсе Chat появляется сообщение "Что-то пошло не так". или "Не удалось обработать запрос". Иногда в интерфейсе Chat не показывается сообщение об ошибке, но приложение Chat или карточка выдает неожиданный результат, например не появляется сообщение на карточке.

Хотя в интерфейсе Chat может не показываться сообщение об ошибке, при включенном ведении журнала ошибок для приложений Chat вам будут доступны подробные сообщения об ошибках и данные журнала, которые помогут устранить неполадки. Чтобы узнать, как просматривать, отлаживать и исправлять ошибки, ознакомьтесь с разделом Устранение неполадок в Google Chat.

Организовать

Чтобы избежать списания средств с аккаунта Google Cloud за ресурсы, использованные в этом руководстве, рекомендуем удалить облачный проект.

  1. В Google API Console перейдите на страницу Управление ресурсами. Нажмите Меню > IAM и администрирование > Управление ресурсами.

    Перейти в Менеджер ресурсов

  2. В списке проектов выберите проект, который хотите удалить, и нажмите Удалить .
  3. В диалоговом окне введите идентификатор проекта и нажмите Закрыть, чтобы удалить проект.