Агент GenAI для вопросов и ответов по документам и действиям с вызовами API

1. Обзор

В ходе этой лабораторной работы вы создадите агент GenAI, подключите его к приложению Cloud Run и интегрируете агент в рабочую область Slack.

8541c95a7fbc9be7.png

Что вы узнаете

Лаборатория состоит из нескольких основных частей:

  • Разверните приложение Cloud Run для интеграции с API Gemini.
  • Создание и развертывание диалогового агента
  • Интегрируйте агент в Slack
  • Настройка хранилища данных для вопросов и ответов в документах PDF

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

  • Эта лабораторная работа предполагает знакомство со средами Cloud Console и Cloud Shell.

2. Настройка и требования

Настройка облачного проекта

  1. Войдите в Google Cloud Console и создайте новый проект или повторно используйте существующий. Если у вас еще нет учетной записи Gmail или Google Workspace, вам необходимо ее создать .

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • Имя проекта — это отображаемое имя для участников этого проекта. Это строка символов, не используемая API Google. Вы всегда можете обновить его.
  • Идентификатор проекта уникален для всех проектов Google Cloud и является неизменяемым (невозможно изменить после его установки). Cloud Console автоматически генерирует уникальную строку; обычно тебя не волнует, что это такое. В большинстве лабораторий кода вам потребуется указать идентификатор проекта (обычно идентифицируемый как PROJECT_ID ). Если вам не нравится сгенерированный идентификатор, вы можете создать другой случайный идентификатор. Альтернативно, вы можете попробовать свой собственный и посмотреть, доступен ли он. Его нельзя изменить после этого шага и он сохраняется на протяжении всего проекта.
  • К вашему сведению, есть третье значение — номер проекта , которое используют некоторые API. Подробнее обо всех трех этих значениях читайте в документации .
  1. Затем вам необходимо включить выставление счетов в Cloud Console, чтобы использовать облачные ресурсы/API. Прохождение этой кодовой лаборатории не будет стоить много, если вообще что-то стоить. Чтобы отключить ресурсы и избежать выставления счетов за пределами этого руководства, вы можете удалить созданные вами ресурсы или удалить проект. Новые пользователи Google Cloud имеют право на участие в программе бесплатной пробной версии стоимостью 300 долларов США .

Настройка среды

Откройте чат Близнецов.

e1e9ad314691368a.png

Включите Gemini для Google Cloud API:

990a0ceea7d05531.png

Нажмите « Start chatting » и ответьте на один из примеров вопросов или введите собственное приглашение, чтобы попробовать его.

ed120d672468b412.png

Предлагает попробовать:

  • Объясните Cloud Run в 5 ключевых моментах.
  • Вы являетесь менеджером по продукту Google Cloud Run и объясните студенту Cloud Run в 5 коротких ключевых моментах.
  • Вы являетесь менеджером по продукту Google Cloud Run и объясните Cloud Run сертифицированному разработчику Kubernetes в 5 коротких ключевых моментах.
  • Вы являетесь менеджером по продукту Google Cloud Run. Объясните старшему разработчику, когда вы будете использовать Cloud Run, а не GKE, в пяти кратких ключевых моментах.

Ознакомьтесь с Руководством по подсказкам, чтобы узнать больше о написании более эффективных подсказок.

Как Gemini для Google Cloud использует ваши данные

Обязательства Google по конфиденциальности

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

Данные, которые вы отправляете и получаете

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

Шифрование подсказок

Когда вы отправляете запросы в Gemini, ваши данные при передаче шифруются и становятся входными данными для базовой модели в Gemini.

Данные программы, генерируемые Gemini

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

Узнайте больше , как Google обрабатывает ваши запросы.

3. Варианты проверки подсказок

У вас есть несколько вариантов проверки подсказок.

Vertex AI Studio — это часть платформы Vertex AI от Google Cloud, специально разработанная для упрощения и ускорения разработки и использования генеративных моделей искусственного интеллекта.

Google AI Studio — это веб-инструмент для создания прототипов и экспериментов с быстрым проектированием и API Gemini.

Веб-приложение Google Gemini (gemini.google.com) — это веб-инструмент, разработанный, чтобы помочь вам изучить и использовать возможности моделей искусственного интеллекта Gemini от Google.

4. Клонируйте репозиторий

Вернитесь в Google Cloud Console и активируйте Cloud Shell, щелкнув значок справа от панели поиска.

3e0c761ca41f315e.png

В открывшемся терминале выполните следующие команды

git clone https://github.com/GoogleCloudPlatform/genai-for-developers.git

cd genai-for-developers

git checkout slack-agent-jira-lab

Нажмите «Открыть редактор»

63e838aebfdd2423.png

С помощью пункта меню « File / Open Folder » откройте « genai-for-developers ».

e3b9bd9682acf539.png

Открыть новый терминал

4d9c41ab01ff4e97.png

5. Создайте учетную запись службы.

Создайте новую учетную запись службы. Вы будете использовать эту учетную запись службы для вызовов API Vertex AI Gemini API из приложения Cloud Run.

Настройте детали проекта, используя сведения о проекте qwiklabs.

Пример: qwiklabs-gcp-00-2c10937585bb

gcloud config set project YOUR_QWIKLABS_PROJECT_ID

Создайте учетную запись службы и назначьте роли.

export LOCATION=us-central1
export PROJECT_ID=$(gcloud config get-value project)
export SERVICE_ACCOUNT_NAME='vertex-client'
export DISPLAY_NAME='Vertex Client'
export KEY_FILE_NAME='vertex-client-key'

gcloud iam service-accounts create $SERVICE_ACCOUNT_NAME --project $PROJECT_ID --display-name "$DISPLAY_NAME"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/aiplatform.admin"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/aiplatform.user"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/cloudbuild.builds.editor"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/artifactregistry.admin"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/storage.admin"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/run.admin"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/secretmanager.secretAccessor"

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

6356559df3eccdda.png

Включите необходимые службы для использования API-интерфейсов Vertex AI и чата Gemini.

gcloud services enable \
    generativelanguage.googleapis.com \
    aiplatform.googleapis.com \
    cloudaicompanion.googleapis.com \
    run.googleapis.com \
    cloudresourcemanager.googleapis.com

Включите необходимые службы для использования API-интерфейсов Vertex AI и чата Gemini.

gcloud services enable \
    artifactregistry.googleapis.com \
    cloudbuild.googleapis.com \
    runapps.googleapis.com \
    workstations.googleapis.com \
    servicemanagement.googleapis.com \
    secretmanager.googleapis.com \
    containerscanning.googleapis.com

Используйте Gemini Code Assist для объяснения кода.

Откройте файл « devai-api/app/routes.py », затем щелкните правой кнопкой мыши в любом месте файла и выберите « Gemini Code Assist > Explain this" в контекстном меню.

427ed40dd44cab8a.png

Просмотрите объяснение Gemini для выбранного файла.

a286d1e85bc42960.png

6. Развертывание Devai-API в Cloud Run

Убедитесь, что вы находитесь в правильной папке.

cd ~/genai-for-developers/devai-api

В этой лабораторной работе мы следуем передовым практикам и используем Secret Manager для хранения и ссылки на значения токена доступа и ключа API LangChain в Cloud Run.

Установите переменные среды. Запустите эту команду как есть, без каких-либо изменений.

export JIRA_API_TOKEN=your-jira-token
export JIRA_USERNAME="YOUR-EMAIL"
export JIRA_INSTANCE_URL="https://YOUR-JIRA-PROJECT.atlassian.net"
export JIRA_PROJECT_KEY="YOUR-JIRA-PROJECT-KEY"
export JIRA_CLOUD=true

export GITLAB_PERSONAL_ACCESS_TOKEN=your-gitlab-token
export GITLAB_URL="https://gitlab.com"
export GITLAB_BRANCH="devai"
export GITLAB_BASE_BRANCH="main"
export GITLAB_REPOSITORY="GITLAB-USERID/GITLAB-REPO"

export LANGCHAIN_API_KEY=your-langchain-key
export LANGCHAIN_TRACING_V2=true
export LANGCHAIN_ENDPOINT="https://api.smith.langchain.com"

Создайте и сохраните несколько секретов в Менеджере секретов.

echo -n $JIRA_API_TOKEN | \
 gcloud secrets create JIRA_API_TOKEN \
 --data-file=-

echo -n $GITLAB_PERSONAL_ACCESS_TOKEN | \
 gcloud secrets create GITLAB_PERSONAL_ACCESS_TOKEN \
 --data-file=-

echo -n $LANGCHAIN_API_KEY | \
 gcloud secrets create LANGCHAIN_API_KEY \
 --data-file=-

Разверните приложение в Cloud Run.

gcloud run deploy devai-api \
  --source=. \
  --region="$LOCATION" \
  --allow-unauthenticated \
  --service-account vertex-client \
  --set-env-vars PROJECT_ID="$PROJECT_ID" \
  --set-env-vars LOCATION="$LOCATION" \
  --set-env-vars GITLAB_URL="$GITLAB_URL" \
  --set-env-vars GITLAB_REPOSITORY="$GITLAB_REPOSITORY" \
  --set-env-vars GITLAB_BRANCH="$GITLAB_BRANCH" \
  --set-env-vars GITLAB_BASE_BRANCH="$GITLAB_BASE_BRANCH" \
  --set-env-vars JIRA_USERNAME="$JIRA_USERNAME" \
  --set-env-vars JIRA_INSTANCE_URL="$JIRA_INSTANCE_URL" \
  --set-env-vars JIRA_PROJECT_KEY="$JIRA_PROJECT_KEY" \
  --set-env-vars JIRA_CLOUD="$JIRA_CLOUD" \
  --set-env-vars LANGCHAIN_TRACING_V2="$LANGCHAIN_TRACING_V2" \
  --update-secrets="LANGCHAIN_API_KEY=LANGCHAIN_API_KEY:latest" \
  --update-secrets="GITLAB_PERSONAL_ACCESS_TOKEN=GITLAB_PERSONAL_ACCESS_TOKEN:latest" \
  --update-secrets="JIRA_API_TOKEN=JIRA_API_TOKEN:latest" \
  --min-instances=1 \
  --max-instances=3

Ответьте Y , чтобы создать репозиторий Docker Artifact Registry.

Deploying from source requires an Artifact Registry Docker repository to store built containers. A repository named [cloud-run-source-deploy] in 
region [us-central1] will be created.

Do you want to continue (Y/n)?  y

Попросите Близнецов объяснить команду:

What does this command do?

gcloud run deploy devai-api \
  --source=. \
  --region="$LOCATION" \
  --allow-unauthenticated \
  --service-account vertex-client \
  --set-env-vars PROJECT_ID="$PROJECT_ID" \
  --set-env-vars LOCATION="$LOCATION" \
  --set-env-vars GITLAB_URL="$GITLAB_URL" \
  --set-env-vars GITLAB_REPOSITORY="$GITLAB_REPOSITORY" \
  --set-env-vars GITLAB_BRANCH="$GITLAB_BRANCH" \
  --set-env-vars GITLAB_BASE_BRANCH="$GITLAB_BASE_BRANCH" \
  --set-env-vars JIRA_USERNAME="$JIRA_USERNAME" \
  --set-env-vars JIRA_INSTANCE_URL="$JIRA_INSTANCE_URL" \
  --set-env-vars JIRA_PROJECT_KEY="$JIRA_PROJECT_KEY" \
  --set-env-vars JIRA_CLOUD="$JIRA_CLOUD" \
  --set-env-vars LANGCHAIN_TRACING_V2="$LANGCHAIN_TRACING_V2" \
  --update-secrets="LANGCHAIN_API_KEY=LANGCHAIN_API_KEY:latest" \
  --update-secrets="GITLAB_PERSONAL_ACCESS_TOKEN=GITLAB_PERSONAL_ACCESS_TOKEN:latest" \
  --update-secrets="JIRA_API_TOKEN=JIRA_API_TOKEN:latest" \
  --min-instances=1 \
  --max-instances=3

34ed504e0bcf697b.png

Просмотрите gcloud run deploy SERVICE_NAME --source=. поток ниже. Узнать больше .

5c122a89dd11822e.png

За кулисами эта команда использует buildpacks Google Cloud и Cloud Build для автоматического создания образов контейнеров из вашего исходного кода без необходимости устанавливать Docker на ваш компьютер или настраивать пакеты сборки или Cloud Build. То есть одна описанная выше команда делает то, что в противном случае потребовало бы команд gcloud builds submit и команд gcloud run deploy .

Если вы предоставили Dockerfile (что мы и сделали в этом репозитории), Cloud Build будет использовать его для создания образов контейнеров, а не полагаться на пакеты сборки для автоматического обнаружения и создания образов контейнеров. Чтобы узнать больше о сборочных пакетах, ознакомьтесь с документацией .

Просмотрите журналы Cloud Build в консоли .

Просмотрите созданный образ Docker в реестре артефактов .

Просмотрите сведения об экземпляре Cloud Run в Cloud Console .

Проверьте конечную точку, выполнив команду Curl.

curl -X POST \
   -H "Content-Type: application/json" \
   -d '{"prompt": "PROJECT-100"}' \
   $(gcloud  run services list --filter="(devai-api)" --format="value(URL)")/generate

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

bda86deaa1c449a8.png

7. Конструктор агентов Vertex AI

Найдите и откройте « Agent Builder ».

d189f2069d7bc7f6.png

Активируйте API:

4bf2b240bd51db8.png

Создайте приложение разговорного агента:

9ee179dbcca38234.png

Включите API Dialogflow:

75f2fd509c16ab88.png

Выберите свой проект:

bf6d60bebab949fe.png

Нажмите «Создать агента»:

42332fe32af5a74e.png

Выберите «Создать свой».

583c747540ce3217.png

Введите «Агент» в поле «Отображаемое имя» и нажмите «Создать».

e0056adc2f8af87.png

Установить имя Playbook:

Agent

Установить цель:

Help user with questions about JIRA project

Установите инструкции:

- Greet the users, then ask how you can help them today.
- Summarize the user's request and ask them to confirm that you understood correctly.
  - If necessary, seek clarifying details.
- Thank the user for their business and say goodbye.

Нажмите «Сохранить»:

bb2569de77cd1f06.png

Протестируйте Агента с помощью чата симулятора справа:

7477cf320aaec22.png

66a7569835ebc7e7.png

Наведите курсор на значок гаечного ключа слева. Откройте меню «Инструменты» и создайте новый инструмент:

ff635e2d135ea6d8.png

Выберите OpenAPI в раскрывающемся списке «Тип».

Установить имя инструмента:

jira-project-status

Описание набора:

Provides JIRA project status

Установите схему (YAML) — замените URL-адрес ВАШЕГО ОБЛАЧНОГО ЗАПУСКА. Переключите вкладки и проверьте вывод консоли на наличие URL-адреса службы Cloud Run.

openapi: 3.0.0
info:
 title: CR API
 version: 1.0.0
 description: >-
   This is the OpenAPI specification of a service.
servers:
 - url: 'https://YOUR CLOUD RUN URL'
paths:

 /generate:
   post:
     summary: Request impl
     operationId: generate
     requestBody:
       description: Request impl
       required: true
       content:
         application/json:
           schema:
             $ref: '#/components/schemas/Prompt'
     responses:
       '200':
         description: Generated
         content:
           application/json:
             schema:
               $ref: '#/components/schemas/ProjectStatus'
                  
components:
 schemas:
   Prompt:
     type: object
     required:
       - prompt
     properties:
       prompt:
         type: string
   ProjectStatus:
     type: object
     required:
       - message
     properties:
       message:
         type: string

Сохраните конфигурацию инструмента:

ae78c21f48754d7a.png

Вернитесь к настройке агента, выбрав «Playbooks» в левом меню и обновив инструкции по использованию инструмента:

Добавьте инструкции по использованию нового инструмента и нажмите «Сохранить»:

- Use ${TOOL: jira-project-status} to help the user with JIRA project status.

4dabf135b37b044b.png

Перейдите на вкладку «Примеры» и добавьте новый пример:

a74004679865ab6e.png

Установить отображаемое имя:

jira-project-flow

Используя меню внизу, смоделируйте разговор между пользователем и агентом:

Пример потока:

Ответ агента: Какой идентификатор проекта?

Пользовательский ввод: ТЕСТ-ПРОЕКТ-100

Использование инструмента: jira-project-status

Ответ агента: Подробности статуса проекта.

6d54f90f1dc630fc.png

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

c80eef4210256e5a.png

5affaee4cd54616e.png

Нажмите «Сохранить». Вернитесь в симулятор агента и проверьте поток. Сбросьте все существующие разговоры.

f96e7f711561e559.png

85d0e12acf682357.png

Поздравляем! Интегрировав инструменты, связанные с API, развернутым в Cloud Run, вы успешно предоставили агенту возможность выполнять действия.

695f18b4e5f81de8.png

Обзор лучших практик для агентов Vertex AI

Просмотр доступных настроек агента

  • Настройки ведения журнала — включить ведение журнала в облаке
  • Интеграция с Git. Интеграция с Git позволяет вам загружать и извлекать агент из репозитория Git.
  • Генеративный выбор модели
  • Лимиты токенов (вход и вывод)

f914db1d8a5d5447.png

Ознакомьтесь с элементами управления симулятора агента:

d1c4712603d4a8a2.png

8. Слабая интеграция

Откройте меню «Интеграции» и нажмите «Подключиться» на плитке Slack.

6fc0ad95c28cb6c8.png

e7ee0826668bfa2b.png

b29574fd2a0f9725.png

Откройте ссылку и создайте новое приложение Slack по адресу https://api.slack.com/apps.

cbf13edc1b284899.png

Выберите из «Манифеста»:

7721feb295693ea2.png

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

99a3d5b37cdf8f76.png

Переключитесь на YAML и вставьте этот манифест:

display_information:
  name: Agent
  description: Agent
  background_color: "#1148b8"
features:
  app_home:
    home_tab_enabled: false
    messages_tab_enabled: true
    messages_tab_read_only_enabled: false
  bot_user:
    display_name: Agent
    always_online: true
oauth_config:
  scopes:
    bot:
      - app_mentions:read
      - chat:write
      - im:history
      - im:read
      - im:write
      - incoming-webhook
settings:
  event_subscriptions:
    request_url: https://dialogflow-slack-4vnhuutqka-uc.a.run.app
    bot_events:
      - app_mention
      - message.im
  org_deploy_enabled: false
  socket_mode_enabled: false
  token_rotation_enabled: false

Нажмите «Создать»:

5f0b3d2c44022eb9.png

Установить в рабочую область:

аа1c2ea1b700c838.png

Выберите канал «#general» и нажмите «Разрешить».

18eba659946fc65f.png

В разделе «Основная информация/учетные данные приложения» скопируйте «Секрет подписи» и установите его в интеграции Slack агента в качестве значения для поля «Токен подписи».

31d62babb57e523d.png

bd9f7e3be3b9ea4e.png

Откройте «OAuth и разрешения», скопируйте «Токен OAuth пользователя бота» и установите его в интеграции Slack агента в качестве значения для поля «Токен доступа».

e74c7e003c31258.png

Задайте необходимые поля и нажмите «Начать».

Значением « Токен доступа » агента является «Токен OAUth пользователя бота» из Slack .

Значением « Токена подписи » агента является «Секрет подписи» от Slack.

8ea9f6856efa62cf.png

7e71e37750fd063a.png

Скопируйте «URL-адрес веб-перехватчика» и вернитесь к настройке приложения Slack.

Откройте раздел «Подписки на мероприятия» и вставьте URL-адрес.

a1e7271934c714d9.png

Сохраните изменения.

e6d9b43b3787b6e7.png

Откройте «Slack» и добавьте агента, набрав «@Agent».

Например, добавив приложение с именем «@CX».

72313066707f947b.png

63becbd80824f8d8.png

c98e193062b096f0.png

Попросите у агента краткое описание проекта JIRA.

6edfdb74760548ad.png

Поздравляем! Агент был успешно интегрирован в рабочее пространство Slack.

e1a792e199d697c7.png

9. Вопросы и ответы по PDF-документам

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

Создать сегмент облачного хранилища

Откройте Cloud Shell: https://shell.cloud.google.com/.

Задайте имя сегмента, используя последние 5 цифр вашего проекта GCP. Пример: pdf-docs-3dw21

BUCKET_NAME=pdf-docs-LAST-5-DIGITS-OF-YOUR-PROJECT

Создайте корзину и загрузите PDF-документ.

gcloud storage buckets create gs://$BUCKET_NAME \
    --location=us \
    --default-storage-class=STANDARD \
    --no-public-access-prevention \
    --uniform-bucket-level-access

wget https://services.google.com/fh/files/misc/exec_guide_gen_ai.pdf 

gsutil cp exec_guide_gen_ai.pdf gs://$BUCKET_NAME

Конфигурация хранилища данных

Вернитесь в консоль агента и откройте « Agent », прокрутите вниз и нажмите « + Data store ».

9a5e4d6d1e040b86.png

Используйте следующие значения:

Название инструмента: pdf-docs

Тип: Data store

Описание: pdf-docs

Нажмите « Save »

60096b1c597347fa.png

Нажмите « Add data stores » внизу страницы. Затем нажмите « Create new data store ».

abb9e513ac905e75.png

В качестве источника данных выберите « Cloud Storage ».

Выберите: Unstructured documents

И выберите сегмент/папку GCS.

42dec238c1d0ac2f.png

Выберите « us » для местоположения хранилища данных.

Для имени хранилища данных введите: « pdf-docs »

В раскрывающемся списке выберите « Digital parser ».

Включите расширенное разбиение на фрагменты.

Включите заголовки предков по частям.

Нажмите « Create ».

1a5222b86ee6c58e.png

3119b5fec43c9294.png

Нажмите на хранилище данных и просмотрите «Документы», «Действия» и «Конфигурация обработки».

872d9142615e90c9.png

Импорт займет около 5–10 минут.

d9739a4af2244e03.png

Параметры синтаксического анализа и фрагментации

Управлять парсингом контента можно следующими способами:

  • Цифровой парсер. Цифровой анализатор включен по умолчанию для всех типов файлов, если не указан другой тип анализатора. Цифровой анализатор обрабатывает вставленные документы, если для хранилища данных не указан другой синтаксический анализатор по умолчанию или если указанный синтаксический анализатор не поддерживает тип файла вставленного документа.
  • OCR-парсинг PDF-файлов . Публичный предварительный просмотр. Если вы планируете загружать отсканированные PDF-файлы или PDF-файлы с текстом внутри изображений, вы можете включить анализатор OCR, чтобы улучшить индексацию PDF-файлов. См. раздел Об анализе OCR для PDF-файлов .
  • Парсер макетов. Включите анализатор макета для файлов HTML, PDF или DOCX, если вы планируете использовать Vertex AI Search для RAG. См. документы Chunk для RAG для получения информации об этом парсере и о том, как его включить.

Узнайте больше о синтаксическом анализе и фрагментировании документов.

Конфигурация инструмента

Вернитесь к экрану конфигурации инструмента агента и обновите доступные хранилища данных.

Выберите хранилище данных, которое вы только что создали, и нажмите « Confirm ».

2922f7d9bdb7b2bc.png

Настроить заземление.

Введите « Google Cloud » в качестве названия компании.

Настройки полезной нагрузки — установите флажок « Include snippets in Conversational Messenger response payload" . Установите значение 5.

Нажмите «Сохранить».

484e99caa7d1bc07.png

Настройка инструкций агента

Вернитесь к настройке агента.

Добавить новую инструкцию:

- Provide detailed answer to users questions about the exec guide to gen ai using information in the ${TOOL:pdf-docs}

f6d27e58b68f9f7.png

Сохраните конфигурацию.

Создайте пример для инструмента PDF-Docs

Перейдите на вкладку «Примеры». Создайте новый пример: Guide to generative AI

Используя действия « + »:

ee4f85ba3f47fda0.png

Добавьте «Пользовательский ввод»:

What are the main capabilities for generative AI?

Добавьте «Использование инструмента».

  • Инструмент и действие: « pdf-docs »

Ввод (тело запроса)

{
  "query": "Main capabilities for generative AI",
  "filter": "",
  "userMetadata": {},
  "fallback": ""
}

Выход инструмента:

{
  "answer": "Detailed answer about main capabilities for generative AI",
  "snippets": [
    {
      "uri": "https://storage.cloud.google.com/pdf-docs-49ca4/exec_guide_gen_ai.pdf",
      "text": "Detailed answer about main capabilities",
      "title": "exec_guide_gen_ai"
    }
  ]
}

Добавить «Ответ агента»

Detailed answer about main capabilities. 

https://storage.cloud.google.com/pdf-docs-49ca4/exec_guide_gen_ai.pdf

Настроенный пример:

d1da4c1d18709ea6.png

Конфигурация вызова инструмента:

a0d47a9dc04bb2f1.png

Переключитесь на симулятор, чтобы проверить конфигурацию.

Вопрос:

What are the 10 steps in the exec guide?

e682480a959125bc.png

Выберите « Agent » в раскрывающемся списке «Вызовы» и нажмите « Save as example ».

582759df60b9a342.png

Укажите имя « user-question-flow ».

Установите сводку: « Agent helped user answer question based on the pdf document » и нажмите «Сохранить».

Отформатируйте ответ агента и включите ссылку на документ в формате PDF из раздела вывода инструмента.

6ba5011ed26793f3.png

Сохраните пример.

Вернитесь в симулятор и нажмите « Replay conversation ». Проверьте обновленный формат ответа. Если после сохранения примера вы видите ошибку, возможно, вам придется обновить окно браузера и перезапустить разговор, отправив запрос еще раз:

What are the 10 steps in the exec guide?

51698c5f1fbd2770.png

Задайте еще вопрос:

What are the main capabilities in the exec guide?

7b636f489c05a13.png

Исходный PDF-документ.

5b3e6d2ceda99247.png

Вопрос:

What should I consider when evaluating projects?

1155edfbffcd14b2.png

Исходный PDF-документ.

57a0d331aa91f04b.png

Вопрос:

What are the priority use cases in Retail and CPG in the exec guide?

92264121fc8f06e.png

Исходный PDF-документ.

b4d07e6e7d9adc00.png

Поздравляем! Теперь агент может предоставлять обоснованные ответы на основе PDF-документов.

197cf1ae70663fae.png

10. Готовые агенты

Далее вы собираетесь изучить готовые агенты из меню слева.

de49672bbb8112fd.png

Выберите один из агентов и разверните его. Изучите настройку, инструкции и инструменты агента.

c2f1808c30d4c17b.png

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

Поздравляем, вы закончили лабораторную работу!

Что мы рассмотрели:

  • Как создать и развернуть диалоговые агенты
  • Как добавить инструмент для агента, поддерживаемый приложением Cloud Run
  • Как интегрировать агента в рабочее пространство Slack
  • Как настроить хранилище данных для вопросов и ответов в документах PDF

Что дальше:

Очистить

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

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

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

© Google LLC, 2024. Все права защищены. Google и логотип Google являются товарными знаками Google LLC. Все остальные названия компаний и продуктов могут быть товарными знаками соответствующих компаний, с которыми они связаны.