Создание агентов ИИ с помощью Vertex AI Agent Builder

О практической работе
schedule45 минут
subjectПоследнее обновление: 7 марта 2025 г.
account_circleАвторы: Thu Ya Kyaw (Googler), Abhishek Sharma (GDE)

В этом учебном пособии для самостоятельного обучения вы узнаете, как создавать агенты искусственного интеллекта с помощью Vertex AI Agent Builder от Google Cloud. На каждом этапе будет выделена конкретная функция Agent Builder и объяснено ее назначение.

  • Как создать простой AI-агент с помощью Vertex AI Agent Builder
  • Как заземлить созданный агент, подключив хранилище данных
  • Как интегрировать AI Agent на ваш сайт (необязательно)
  • Любопытный ум
  • Рабочий компьютер и надежный Wi-Fi.
  • Проект Google Cloud с прикрепленными платежными данными.

Примечание. Если у вас еще нет проекта Google Cloud, вы можете создать его, следуя инструкциям . Вы также можете воспользоваться услугами Google Cloud Free Tier Services .

2. Разработка вашего первого ИИ-агента

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

  • Какую проблему это решит? Будет ли он автоматизировать задачи, предоставлять информацию, предлагать развлечения или способствовать творческому исследованию?
  • Каковы его основные функции? Будет ли он выполнять задачи или делегировать задачи? Будет ли он генерировать текст или создавать комбинацию различных медиа?
  • Каковы его ограничения? Сможет ли он все делать автономно?
  • Какой личностью или личностью он должен обладать? Будет ли оно формальным, неформальным, юмористическим, полезным или информативным?
  • Каковы показатели успеха? Как вы будете измерять эффективность агента?

Чтобы ускорить процесс, вот ответы на эти вопросы для турагента, которого вы создадите сегодня:

  • Какую проблему это решит?
  • Планирование поездки может занять много времени и утомить. Этот турагент поможет пользователям находить направления, планировать маршруты, бронировать авиабилеты и проживание.
  • Каковы его основные функции?
  • Агент должен иметь возможность
  • ответить на вопросы о направлениях, например о визовых требованиях
  • планировать маршруты, которые соответствуют графикам и целям пользователей
  • забронировать авиабилеты и проживание
  • Каковы его ограничения?
  • По умолчанию агент может быть не в состоянии отвечать на сложные запросы.
  • Агент не сможет генерировать визуальные изображения
  • Знания агента будут ограничены базовой моделью.
  • Какой личностью или личностью он должен обладать?
  • Этот агент должен быть знающим, полезным и с энтузиазмом относиться к путешествиям. Он должен уметь четко и лаконично передавать информацию.
  • Каковы показатели успеха?
  • Успех этого агента можно измерить тем, насколько пользователи удовлетворены его рекомендациями (изучение, планирование, бронирование).

3. Создание ИИ-агента с помощью Vertex AI Agent Builder

С помощью Vertex AI Agent Builder агенты AI можно создать всего за несколько шагов.

Шаг 1:

  • Перейдите в Vertex AI Agent Builder .
  • Вы должны увидеть страницу приветствия. 833886ce0d2645ba.png
  • Нажмите кнопку ПРОДОЛЖИТЬ И АКТИВИРОВАТЬ API .

Шаг 2:

  • Вы будете перенаправлены на страницу создания приложения. f2d45cc76d62edeb.png
  • Нажмите кнопку СОЗДАТЬ НОВОЕ ПРИЛОЖЕНИЕ .

Шаг 3:

  • Выберите «Разговорный агент» и нажмите «СОЗДАТЬ».

732d2cd9e10c9a79.png

Примечание:

  1. После того, как вы нажмете « СОЗДАТЬ» , откроется новая вкладка диалоговых агентов Diaglogflow .
  2. Если вам будет предложено выбрать проект Google Cloud , выберите проект Google Cloud, связанный с вашей правильной учетной записью Gmail .
  3. Если вы выполняете эту лабораторную работу в новой учетной записи, вам будет предложено включить API Dialogflow. Нажмите «Включить API» , чтобы включить его.

238281df06301db0.png

  • Если нажатие кнопки не работает, вы можете включить ее вручную, перейдя непосредственно на страницу API .
  • На вновь открытой странице Diaglogflow нажмите «Создать агент» .

42515e46bc63506d.png

  • Теперь вам будет предложено несколько вариантов создания агента, выберите «Создать свой».

8af6bf0853f20768.png

Шаг 4:

  • Выберите отображаемое имя (например, Travel Buddy).
  • В разделе «Местоположение» выберите «Глобальный» (глобальное обслуживание, хранящиеся данные в США) в качестве «Регион».
  • Сохранить другую конфигурацию по умолчанию
  • Нажмите кнопку СОЗДАТЬ

4e0dea29e5d8acde.png

Шаг 5:

  • Выберите имя Playbook (например, информационный агент)
  • Добавьте цель (например, помочь клиентам ответить на вопросы, связанные с путешествиями).
  • Определите инструкцию (например, поприветствуйте пользователей, а затем спросите, чем вы можете им помочь сегодня).
  • Нажмите « Сохранить», как только все будет завершено.

f8bfd605ddd97cf8.png

Шаг 6:

  • Нажмите на значок «Переключить симулятор». 72588cbe8734f54e.png
  • Выберите только что созданного агента (например, информационный агент ).
  • Выберите базовую модель генеративного ИИ для вашего агента (например , Gemini-1.5-flash ).
  • Проверьте своего агента, поговорив с ним (например, введите что-нибудь в текстовое поле «Введите пользовательский ввод»)

3ac3cf54a1e2098.png

Поздравляем! Вы только что успешно создали AI-агент с помощью Vertex AI Agent Builder.

4. Подключение хранилищ данных к агенту

Попробуйте спросить своего агента о том, как добраться до Ваканды (например: «Как лучше всего добраться до Ваканды?»), и вы получите такой ответ:

5baa2dbabe2941a2.png

Хотя на самом деле это верно, вместо того, чтобы просто заявить «Я не могу предоставить информацию» и завершить разговор, для пользователя было бы более полезно, если бы агент предлагал похожие места. Такой подход потенциально может привести к тому, что пользователи фактически бронируют поездку через агента.

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

Примечание. Если вы хотите закрыть симулятор, еще раз щелкните значок переключения симулятора.

Создать хранилище данных очень просто: нажмите кнопку «+ Хранилище данных» внизу страницы «Основные сведения об агенте».

6c3ef19fefc46af7.png

Заполните следующую информацию:

  • Название инструмента: Альтернативное расположение
  • Тип: Хранилище данных
  • Описание. Используйте этот инструмент, если запрос пользователя содержит несуществующее местоположение.

Нажмите «Сохранить» , когда закончите.

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

65c790a87de8fba8.png

7648d478a6f35cf0.png

После того, как вы нажмете «Создать новое хранилище данных» , вы будете перенаправлены на страницу создания агента Vertex AI, как показано ниже.

Выберите опцию «Облачное хранилище».

bff5455fac531509.png

Как только вы закончите этот шаг,

  • нажмите ФАЙЛ (это очень важно , иначе импорт не удастся)
  • введите ai-workshops/agents/data/wakanda.txt
  • нажмите ПРОДОЛЖИТЬ

d1983baa579eb78c.png

Если вам интересно, вот содержимое предоставленного текстового файла:

Places that are similar to Wakanda

- Oribi Gorge in South Africa: The rock formations here are reminiscent of the Warrior Falls in Wakanda.

- Iguazu Falls: Located on the border of Argentina and Brazil, these massive waterfalls were a major inspiration for the Warrior Falls.

- Immerse yourself in Wakandan culture: Read the Black Panther comics, watch the movies, and explore online resources to learn more about Wakandan culture, language, and technology.

- Visit a Disney theme park: While there isn't a dedicated Wakanda land yet, you might be able to meet Black Panther at Disneyland or on a Marvel Day at Sea Disney cruise.

На следующей странице назовите свое хранилище данных (например, Wakanda Alternative) и нажмите СОЗДАТЬ .

93eb71e8d019ae24.png

В качестве последнего шага ВЫБЕРИТЕ только что созданный источник данных и нажмите «СОЗДАТЬ». Вы можете увидеть ход импорта вашего хранилища данных, нажав на свое хранилище данных**.**

de1ac9256cc96f29.png

Примечание. Для успешного завершения импорта потребуется некоторое время, поэтому пока это действие продолжается, вы можете изучить дополнительные варианты хранилища данных, доступные для вашего агента Vertex AI, здесь.

9b5c4a2831728a6b.png

Если все прошло гладко, вернитесь на вкладку диалогового потока и нажмите « Обновить» . Вы должны увидеть хранилище данных, созданное на странице «Доступные хранилища данных» .

a44373b78bd95ff0.png

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

c1605bd076258050.png

Теперь выберите добавленное хранилище данных, нажмите «Подтвердить» , затем нажмите «Сохранить».

40082aebe8b82d7c.png

Теперь вернитесь на страницу «Основные сведения об агенте» , в нижней части конфигурации playbook вы увидите, что ваше вновь созданное хранилище данных (например, альтернативное местоположение) будет доступно для использования, проверьте хранилище данных (например, альтернативное местоположение) и нажмите кнопку «Сохранить» вверху страницы.

1b6b82fd7f30a598.png

e09af18697b0fd7f.png

Вы почти у цели! Последний шаг — включить в инструкции агента инструмент « Альтернативное местоположение ». Добавьте в инструкции агента строку — Использовать ${TOOL: Альтернативное местоположение}, если запрос пользователя содержит несуществующее местоположение , а затем нажмите «Сохранить» .

3134d9eadca34e21.png

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

6cdee598391fc82a.png

Поздравляем! Теперь ваш агент рекомендует места, используя предоставленную информацию из текстового файла.

Вот и все, мы закончили с созданием нашего собственного AI-агента для создания агентов. Если вы хотите узнать больше о настройке вашего агента для лучшего опыта, ознакомьтесь с дополнительными действиями ниже.

5. Дополнительные действия: оживите своего ИИ-агента.

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

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

В правом верхнем углу вкладки Dialogflow нажмите меню «Переполнение» , а затем «Опубликовать агент».

a1b109fa9d7cb51d.png

Оставьте все настройки по умолчанию и нажмите «Включить неаутентифицированный API» .

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

ef0f24db780a185e.png

При нажатии вы должны увидеть небольшой фрагмент кода CSS:

c40d12f6207bf5b4.png

Просто скопируйте фрагмент кода . Позже вы интегрируете этот фрагмент кода в веб-сайт.

Для создания веб-сайта вы будете использовать среду Cloud Editor. Вот шаги, чтобы открыть Cloud Editor:

  1. Откройте Google Cloud Console на другой вкладке.
  2. Нажмите кнопку «Активировать Cloud Shell» в правом верхнем углу.
  3. Нажмите кнопку «Открыть редактор» .

Если появится запрос на авторизацию Cloud Shell, нажмите «Авторизовать» , чтобы продолжить.

d23192eca480f00c.png

В следующем разделе вы будете использовать Gemini Code Assist для создания примера веб-приложения Python flask для интеграции с фрагментом вашего агента.

После открытия редактора Cloud Shell нажмите Gemini Code Assist и войдите в свой проект Google Cloud . Если вас попросят включить API, нажмите «Включить».

93112cce3e8d963b.png

После этого давайте попросим Gemini Code Assist создать приложение flask и интегрировать в него фрагмент кода агента AI.

Вот пример приглашения, вы можете использовать

Here my buddy Travel , agent builder agent Vertex AI is publish фрагмент code snippet,

<REPLACE IT WITH YOUR AI AGENT PUBLISH CODE SNIPPET>

can you create a app flask to use it sample

Примечание. Здесь мы запросили приложение Python Flask. Если вы предпочитаете любой другой язык программирования или фреймворк, смело используйте его. Gemini Code Assist имеет возможность создавать различные языки программирования. Дополнительные сведения см. в разделе Поддерживаемые языки, IDE и интерфейсы .

Вы увидите, что предоставленный фрагмент кода уже интегрирован с AI-агентом. Чтобы проверить, действителен ли предоставленный код и работает ли он должным образом, вы можете следовать инструкциям Gemini Code Assist о том, как запустить этот раздел кода выходного ответа.

Пример фрагмента кода выходного ответа —

from flask import Flask, render_template_string

app = Flask(__name__)

# string HTML code template with provided the Dialogflow Messenger

html_template = """

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>Travel Buddy Chatbot</title>

<link rel="stylesheet" href="https://www.gstatic.com/dialogflow-console/fast/df-messenger/prod/v1/themes/df-messenger-default.css">

<script src="https://www.gstatic.com/dialogflow-console/fast/df-messenger/prod/v1/df-messenger.js"></script>

<style>

df-messenger {

z-index: 999;

position: fixed;

--df-messenger-font-color: #000;

--df-messenger-font-family: Google Sans;

--df-messenger-chat-background: #f3f6fc;

--df-messenger-message-user-background: #d3e3fd;

--df-messenger-message-bot-background: #fff;

bottom: 16px;

right: 16px;

}

body {

font-family: sans-serif;

margin: 20px;

}

</style>

</head>

<body>

<h1>Welcome to Travel Buddy!</h1>

<p>Start chatting with our buddy, AI Travel in the bottom right corner.</p>

<df-messenger

project-id="<SAMPLE>"

agent-id="<SAMPLE>"

language-code="en"

max-query-length="-1">

<df-messenger-chat-bubble

chat-title="Travel Buddy">

</df-messenger-chat-bubble>

</df-messenger>

</body>

</html>

"""

@app.route("/")

индекс def index():

"""Renders the HTML template with the Messenger.""" Dialogflow

return render_template_string(html_template)

if __name__ == "__main__":

app.run(debug=True)

3dd3246c5fceb1d4.png

Согласно данной инструкции

  1. Скопируйте предоставленный пример фрагмента кода приложения Flask,
  2. Создайте новый файл с именем app.py и сохраните его.

4e58cfcf95f65d38.png

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

b657b535710fd8f3.png

Сохраните файл (Ctrl + S или CMD + S), а затем нажмите «Открыть терминал» , где вы запустите предоставленный код.

В терминале выполните приведенную ниже команду

python app.py

Примечание. Убедитесь, что вы находитесь в правильной папке, где находится ваш файл app.py.

Приложение Python Flask будет работать на порту 5000 . Чтобы просмотреть предварительный просмотр этого веб-приложения, щелкните значок веб-просмотра в облачной оболочке. Затем вы можете нажать «Изменить порт», ввести 5000 и нажать «Изменить и просмотреть» , чтобы сохранить его.

59ed7b08133b82bf.png

Появится образец веб-сайта, и уже будет доступен ИИ-агент. Просто нажмите на ИИ-агента и начните с ним общаться.

35a4b5abdd299efe.png

Не стесняйтесь тестировать его с различными подсказками. Вы также можете попросить Gemini Code Assist украсить ваш веб-сайт или добавить дополнительные данные в агент искусственного интеллекта и сделать его более изобретательным.

Когда вы будете готовы, в качестве следующего шага вы можете попробовать разместить этот ИИ-агент в Google Cloud, чтобы к нему мог получить доступ кто угодно и где угодно. Что касается напоминания об этой лаборатории кода, вы будете развертывать этот пример приложения flask в Cloud Run в качестве контейнера.

Примечание. Он не ограничивается только запуском в облаке (если вы не знаете, что такое запуск в облаке, даже вы можете спросить об этом), вы можете попросить помощника по коду Gemini помочь вам развернуть это в Google Cloud или где-либо еще с лучшими практиками, он также может помочь вам с этой частью.

Вернитесь в терминал Cloud Shell и нажмите Ctrl + C, чтобы завершить процесс. Снова нажмите «Открыть редактор» и попросите Gemini Code Assist помочь нам с контейнеризацией приложения и его развертыванием в облаке .

Can you help me deploy this sample app flask to cloud service run ?

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

Вот пример выходного ответа

Действия по развертыванию в Cloud Run

  1. Предпосылки:
  • Учетная запись Google Cloud: вам понадобится учетная запись Google Cloud с включенной оплатой.
  • gcloud CLI: установите и инициализируйте Google Cloud SDK (gcloud CLI) на локальном компьютере. Вы будете использовать это для взаимодействия с Google Cloud со своего терминала.
  • Docker: установите Docker на свой локальный компьютер. Cloud Run использует Docker для контейнеризации вашего приложения.
  • Настройка проекта: убедитесь, что в интерфейсе командной строки gcloud выбран проект Google Cloud. Вы можете проверить gcloud config list project и установить его с помощью gcloud config set project YOUR_PROJECT_ID

Примечание. Поскольку все эти действия выполняются в облачной оболочке, нет необходимости настраивать проекты.

  1. Создайте** requirements.txt ****:**
  • В этом файле перечислены все пакеты Python, необходимые вашему приложению. В каталоге вашего проекта (где находится main.py ) создайте файл с именем requirements.txt и добавьте следующую строку
  1. Создать** Dockerfile ****:**
  • Dockerfile определяет, как создать образ Docker для вашего приложения. Создайте файл с именем Dockerfile (без расширения) в каталоге вашего проекта и добавьте следующий контент:

# Use an runtime Python official as a imageFROM python:3.9-slim-buster parent

# Set the working to /appWORKDIR /app directory

# Copy contents the directory into the at /app current container

COPY . /app

# Install any needed packages specified in requirements.txt

RUN pip install --no-cache-dir -r requirements.txt

# Make port 5000 available to the world outside this container

EXPOSE 5000

# Define variable environment

ENV NAME World

# Run app.py when launches the container

CMD ["python", ".py"]

  1. Создайте образ Docker:
  • Откройте терминал, перейдите в каталог вашего проекта и запустите:

Сборки gcloud отправляются –tag gcr.io/bgr-workshop-23rd/travel-buddy

  1. Развертывание в Cloud Run:
  • После создания и загрузки образа разверните его в Cloud Run с помощью следующей команды:

gcloud run deploy travel-buddy --image gcr.io/bgr-workshop-23rd/travel-buddy --region us-central1

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

Поздравляем и желаем приятного обучения.

6. Очистка

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

  1. В консоли Google Cloud перейдите на страницу «Управление ресурсами» .
  2. В списке проектов выберите проект, который хотите удалить, и нажмите «Удалить» .
  3. В диалоговом окне введите идентификатор проекта, а затем нажмите «Завершить работу» , чтобы удалить проект.
  4. Альтернативно вы можете перейти в Cloud Run на консоли, выбрать только что развернутую службу и удалить ее.