GenAI-Agent in Slack für Fragen und Antworten zu Dokumenten und Aktionen mit API-Aufrufen

1. Übersicht

In diesem Lab erstellen Sie einen GenAI-Agenten, verbinden ihn mit der Cloud Run-Anwendung und binden ihn in den Slack-Workspace ein.

3301e2bb69be325.png

Lerninhalte

Das Lab besteht aus mehreren Hauptteilen:

  • Cloud Run-Anwendung zur Integration in Gemini APIs bereitstellen
  • Konversations-Agent in AI Applications erstellen und bereitstellen
  • Agent in Slack einbinden
  • Datenspeicher für Fragen und Antworten zu PDF-Dokumenten konfigurieren

Vorbereitung

  • Für dieses Lab wird davon ausgegangen, dass Sie mit der Cloud Console und mit Cloud Shell-Umgebungen vertraut sind.

2. Einrichtung und Anforderungen

Cloud-Projekt einrichten

  1. Melden Sie sich in der Google Cloud Console an und erstellen Sie ein neues Projekt oder verwenden Sie ein vorhandenes. Wenn Sie noch kein Gmail- oder Google Workspace-Konto haben, müssen Sie eines erstellen.

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • Der Projektname ist der Anzeigename für die Teilnehmer dieses Projekts. Es handelt sich um einen String, der nicht von Google APIs verwendet wird. Sie können sie jederzeit aktualisieren.
  • Die Projekt-ID ist für alle Google Cloud-Projekte eindeutig und unveränderlich (kann nach dem Festlegen nicht mehr geändert werden). In der Cloud Console wird automatisch ein eindeutiger String generiert. Normalerweise ist es nicht wichtig, wie dieser String aussieht. In den meisten Codelabs müssen Sie auf Ihre Projekt-ID verweisen (in der Regel als PROJECT_ID angegeben). Wenn Ihnen die generierte ID nicht gefällt, können Sie eine andere zufällige ID generieren. Alternativ können Sie es mit einem eigenen Namen versuchen und sehen, ob er verfügbar ist. Sie kann nach diesem Schritt nicht mehr geändert werden und bleibt für die Dauer des Projekts bestehen.
  • Zur Information: Es gibt einen dritten Wert, die Projektnummer, die von einigen APIs verwendet wird. Weitere Informationen zu diesen drei Werten
  1. Als Nächstes müssen Sie die Abrechnung in der Cloud Console aktivieren, um Cloud-Ressourcen/-APIs zu verwenden. Die Durchführung dieses Codelabs kostet wenig oder gar nichts. Wenn Sie Ressourcen herunterfahren möchten, um Kosten zu vermeiden, die über diese Anleitung hinausgehen, können Sie die erstellten Ressourcen oder das Projekt löschen. Neue Google Cloud-Nutzer können am kostenlosen Testzeitraum mit einem Guthaben von 300$ teilnehmen.

Umgebung einrichten

Öffnen Sie den Gemini-Chat.

e1e9ad314691368a.png

Aktivieren Sie die Gemini for Google Cloud API:

933612a23648361c.png

b366894eb450f862.png

Klicken Sie auf „Start chatting“ und folgen Sie einer der Beispielanfragen oder geben Sie einen eigenen Prompt ein, um die Funktion auszuprobieren.

ed120d672468b412.png

Probiere folgende Prompts aus:

  • Erkläre Cloud Run in fünf wichtigen Punkten.
  • Du bist Google Cloud Run Product Manager und sollst einem Studenten Cloud Run in fünf kurzen Stichpunkten erklären.
  • Du bist Google Cloud Run Product Manager. Erkläre einem zertifizierten Kubernetes-Entwickler Cloud Run in fünf kurzen Stichpunkten.
  • Du bist Google Cloud Run Product Manager. Erkläre einem Senior Developer in fünf kurzen Stichpunkten, wann du Cloud Run und wann GKE verwenden würdest.

Weitere Informationen zum Verfassen besserer Prompts finden Sie im Leitfaden für Prompts.

Verwendung Ihrer Daten durch Gemini for Google Cloud

Datenschutzverpflichtung von Google

Google war einer der ersten Anbieter in der Branche, der eine KI-/ML-Datenschutzverpflichtung veröffentlicht hat. Diese legt fest, dass Kunden die höchste Sicherheit und Kontrolle über ihre Daten haben sollten, die in der Cloud gespeichert werden.

Daten, die Sie senden und empfangen

Die Fragen, die Sie Gemini stellen, einschließlich aller eingegebenen Informationen oder des Codes, den Sie zur Analyse oder Vervollständigung an Gemini senden, werden als Prompts bezeichnet. Die Antworten oder Codevorschläge, die Sie von Gemini erhalten, werden als Antworten bezeichnet. Gemini verwendet Ihre Prompts und seine Antworten nicht als Daten zum Trainieren seiner Modelle.

Verschlüsselung von Prompts

Wenn Sie Prompts an Gemini senden, werden Ihre Daten während der Übertragung verschlüsselt und als Eingabe für das zugrunde liegende Modell in Gemini verwendet.

Von Gemini generierte Programmdaten

Gemini wurde mit eigenem Google Cloud-Code sowie mit ausgewähltem Drittanbieter-Code trainiert. Sie sind für die Sicherheit, das Testen und die Funktionsfähigkeit Ihres Codes verantwortlich, einschließlich aller Vervollständigungen, Generierungen oder Analysen von Code, die Gemini Ihnen bereitstellt.

Weitere Informationen

3. Optionen zum Testen von Prompts

Es gibt mehrere Möglichkeiten, Prompts zu testen.

Vertex AI Studio ist Teil der Vertex AI-Plattform von Google Cloud und wurde speziell entwickelt, um die Entwicklung und Verwendung generativer KI-Modelle zu vereinfachen und zu beschleunigen.

Google AI Studio ist ein webbasiertes Tool zum Erstellen von Prototypen und Experimentieren mit Prompt-Engineering und der Gemini API.

Die Google Gemini Web-App (gemini.google.com) ist ein webbasiertes Tool, mit dem Sie die Leistungsfähigkeit der Gemini-KI-Modelle von Google erkunden und nutzen können.

4. Repository klonen

Kehren Sie zur Google Cloud Console zurück und aktivieren Sie Cloud Shell, indem Sie rechts neben der Suchleiste auf das Symbol klicken.

3e0c761ca41f315e.png

Wenn Sie zur Autorisierung aufgefordert werden, klicken Sie auf „Autorisieren“, um fortzufahren.

6356559df3eccdda.png

Führen Sie im geöffneten Terminal die folgenden Befehle aus:

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

cd genai-for-developers

git checkout slack-agent-jira-lab

Klicken Sie auf „Editor öffnen“.

63e838aebfdd2423.png

Öffnen Sie über das Menü File / Open Folder die Option genai-for-developers.

e3b9bd9682acf539.png

Neues Terminal öffnen

4d9c41ab01ff4e97.png

5. Dienstkonto erstellen

Erstellen Sie ein neues Dienstkonto. Sie verwenden dieses Dienstkonto, um API-Aufrufe an die Vertex AI Gemini API über die Cloud Run-Anwendung auszuführen.

Konfigurieren Sie die Projektdetails mit Ihren Qwiklabs-Projektdetails.

Beispiel: qwiklabs-gcp-00-2c10937585bb

gcloud config set project YOUR_QWIKLABS_PROJECT_ID

Erstellen Sie ein Dienstkonto.

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

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

Rollen zuweisen

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"

Aktivieren Sie die erforderlichen Dienste, um Vertex AI APIs und Gemini Chat zu verwenden.

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

Aktivieren Sie die erforderlichen Dienste, um Vertex AI APIs und Gemini Chat zu verwenden.

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

Code mit Gemini Code Assist erklären lassen

Öffnen Sie die Datei „devai-api/app/routes.py“, klicken Sie dann mit der rechten Maustaste auf eine beliebige Stelle in der Datei und wählen Sie im Kontextmenü „Gemini Code Assist > Explain this"“ aus.

427ed40dd44cab8a.png

Sehen Sie sich die Erläuterung von Gemini für die ausgewählte Datei an.

a286d1e85bc42960.png

6. Devai-API in Cloud Run bereitstellen

Prüfen Sie, ob Sie sich im richtigen Ordner befinden.

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

In diesem Lab folgen wir den Best Practices und verwenden Secret Manager, um die Werte für das Zugriffstoken und den LangChain-API-Schlüssel in Cloud Run zu speichern und darauf zu verweisen.

Umgebungsvariablen festlegen Führen Sie diesen Befehl unverändert aus.

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"

Erstellen und speichern Sie mehrere Secrets in Secret Manager.

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=-

Stellen Sie die Anwendung in Cloud Run bereit.

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

Antworten Sie mit Y, um das Docker-Repository für Artifact Registry zu erstellen.

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

Gemini bitten, den Befehl zu erklären:

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

Sehen Sie sich den gcloud run deploy SERVICE_NAME --source=.-Ablauf unten an. Weitere Informationen

5c122a89dd11822e.png

Im Hintergrund verwendet dieser Befehl buildpacks und Cloud Build von Google Cloud, um automatisch Container-Images aus Ihrem Quellcode zu erstellen, ohne Docker auf Ihrem Computer installieren oder Buildpacks oder Cloud Build einrichten zu müssen. Das heißt, der einzige oben beschriebene Befehl würde die Befehle gcloud builds submit und gcloud run deploy ausführen.

Wenn Sie ein Dockerfile bereitgestellt haben(wie in diesem Repository), verwendet Cloud Build es zum Erstellen von Container-Images, anstatt sich auf die Buildpacks zu verlassen, um Container-Images automatisch zu erkennen und zu erstellen. Weitere Informationen zu Buildpacks

Sehen Sie sich die Cloud Build-Logs in der Console an.

Prüfen Sie das erstellte Docker-Image in Artifact Registry.

Sehen Sie sich die Cloud Run-Instanzdetails in der Cloud Console an.

Testen Sie den Endpunkt, indem Sie den curl-Befehl ausführen.

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

Die Antwort wird im Markdown-Format ausgegeben. Zur besseren Lesbarkeit wird der Vorschaumodus verwendet.

bda86deaa1c449a8.png

7. AI Applications

Geben Sie in der Suchleiste der Google Cloud Console „AI Applications“ ein und öffnen Sie das Ergebnis.

3f8540f5c946e199.png

Conversational Agent-App erstellen:

6f372cbe4935c507.png

Wähle „Build your own“ aus.

5305cb9a8320f468.png

Geben Sie „Agent“ als Anzeigenamen ein und klicken Sie auf „Erstellen“.

e0056adc2f8af87.png

Playbook-Name festlegen:

Agent

Ziel festlegen:

Help users with questions about JIRA project

Anweisungen festlegen:

- 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.

Klicken Sie auf „Save“:

bb2569de77cd1f06.png

Testen Sie den Agent mit dem Simulator-Chat auf der rechten Seite:

593dd4b8fc4c20d9.png

Führen Sie ähnliche Unterhaltungen wie unten gezeigt:

66a7569835ebc7e7.png

Toolkonfiguration des Agents

Bewegen Sie den Mauszeiger auf das Schraubenschlüsselsymbol auf der linken Seite. Öffnen Sie das Menü „Tools“ und erstellen Sie ein neues Tool:

ff635e2d135ea6d8.png

Wählen Sie im Drop-down-Menü „Typ“ die Option OpenAPI aus.

Name des Tools festlegen:

jira-project-status

Set Description:

Provides JIRA project status

Wechseln Sie die Tabs und sehen Sie sich die Konsolenausgabe für die Cloud Run-Dienst-URL an. Kopieren Sie den Wert der Dienst-URL.

Schema festlegen (YAML): Ersetzen Sie YOUR CLOUD RUN URL.

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

Speichern Sie die Tool-Konfiguration:

ae78c21f48754d7a.png

Kehren Sie zur Agent-Konfiguration zurück, indem Sie im Menü links „Playbooks“ auswählen, und aktualisieren Sie die Anleitung zur Verwendung des Tools:

Fügen Sie eine Anleitung zur Verwendung des neuen Tools hinzu und klicken Sie auf „Save“:

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

16755dd3aaf3888.png

Wechseln Sie zum Tab „Examples“ und fügen Sie ein neues Beispiel hinzu:

a74004679865ab6e.png

Anzeigenamen festlegen:

jira-project-flow

Stellen Sie die Unterhaltung zwischen Nutzer und Agent über das Menü unten dar:

Beispiel:

Antwort des Kundenservicemitarbeiters: What's the project id?

Nutzereingabe: TEST-PROJECT-100

Tool-Nutzung: jira-project-status

Antwort des KI-Agenten: Details zum Projektstatus.

6d54f90f1dc630fc.png

Verwenden Sie die Referenz unten, um das Beispiel zu erstellen.

c80eef4210256e5a.png

5affaee4cd54616e.png

Klicken Sie auf Save. Kehren Sie zum Agent-Simulator zurück und setzen Sie alle vorhandenen Unterhaltungen zurück. Testen Sie den Flow.

ac9db60831b0f684.png

a9fbafd45139d434.png

Glückwunsch! Durch die Integration von Tools, die mit der in Cloud Run bereitgestellten Anwendung(API) verknüpft sind, haben Sie dem Agent erfolgreich ermöglicht, Aktionen auszuführen und seine Funktionen zu erweitern.

e8b113e0cc1b8ad6.png

Best Practices für Conversational Agents

Verfügbare Agent-Einstellungen prüfen

  • Logging-Einstellungen – Cloud Logging aktivieren
  • Git-Integration: Mit der Git-Integration können Sie Ihren Agent in ein Git-Repository übertragen und daraus abrufen.
  • Auswahl des generativen Modells
  • Tokenlimits(Eingabe und Ausgabe)

f914db1d8a5d5447.png

Bedienelemente des KI-Agentensimulators:

d1c4712603d4a8a2.png

8. Slack-Integration

Öffnen Sie das Menü „Integrationen“ und klicken Sie auf der Slack-Kachel auf Connect.

6fc0ad95c28cb6c8.png

e7ee0826668bfa2b.png

b29574fd2a0f9725.png

Öffnen Sie den Link und erstellen Sie eine neue Slack-App unter https://api.slack.com/apps.

cbf13edc1b284899.png

Wählen Sie unter „Manifest“ Folgendes aus:

7721feb295693ea2.png

Arbeitsbereich für die Entwicklung Ihrer App auswählen

99a3d5b37cdf8f76.png

Wechseln Sie zu YAML und fügen Sie dieses Manifest ein:

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

Klicken Sie auf „Erstellen“:

5f0b3d2c44022eb9.png

Im Arbeitsbereich installieren:

aa1c2ea1b700c838.png

Wählen Sie den Kanal „#general“ aus und klicken Sie auf „Zulassen“.

18eba659946fc65f.png

Kopieren Sie unter „Allgemeine Informationen / App-Anmeldedaten“ das „Signatur-Secret“ und legen Sie es in der Slack-Integration des Agenten als Wert für das Feld „Signatur-Token“ fest.

31d62babb57e523d.png

bd9f7e3be3b9ea4e.png

Öffnen Sie „OAuth & Permissions“ (OAuth und Berechtigungen), kopieren Sie „Bot User OAuth Token“ (OAuth-Token des Bot-Nutzers) und legen Sie es in der Slack-Integration des Agenten als Wert für das Feld „Access token“ (Zugriffstoken) fest.

e74c7e003c31258.png

Legen Sie die erforderlichen Felder fest und klicken Sie auf „Starten“.

Der Wert des Zugriffstokens des Kundenservicemitarbeiters ist das OAuth-Token des Bot-Nutzers von Slack.

Der Wert des Signatur-Tokens des Agents ist das „Signatur-Secret“ von Slack.

8ea9f6856efa62cf.png

7e71e37750fd063a.png

Kopieren Sie die Webhook-URL und kehren Sie zur Slack-App-Konfiguration zurück.

Öffnen Sie den Bereich „Ereignisabos“ und fügen Sie die URL ein.

a1e7271934c714d9.png

Speichern Sie die Änderungen.

e6d9b43b3787b6e7.png

Öffnen Sie Slack und fügen Sie einen Agenten hinzu, indem Sie „@Agent“ eingeben.

Beispiel: Sie fügen eine App mit dem Namen „@CX“ hinzu.

72313066707f947b.png

63becbd80824f8d8.png

c98e193062b096f0.png

Bitten Sie den Agenten um eine Zusammenfassung des JIRA-Projekts.

6edfdb74760548ad.png

Glückwunsch! Der Agent wurde erfolgreich in den Slack-Workspace eingebunden.

703a3bf5754680fa.png

9. Fragen und Antworten zu PDF-Dokumenten

In diesem Abschnitt wird beschrieben, wie Sie einen Datenspeicher mit einem PDF-Dokument erstellen und ihn mit dem Agent verknüpfen, um Fragen und Antworten auf Grundlage des Dokumentinhalts zu ermöglichen.

Cloud Storage-Bucket erstellen

Cloud Shell öffnen: https://shell.cloud.google.com/

Legen Sie den Bucket-Namen mit den letzten fünf Ziffern Ihres GCP-Projekts fest. Beispiel: pdf-docs-3dw21

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

Bucket erstellen und PDF-Dokument hochladen

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

Datenspeicherkonfiguration

Kehren Sie zur Agent Console zurück, öffnen Sie „Agent“, scrollen Sie nach unten und klicken Sie auf „+ Data store“.

9a5e4d6d1e040b86.png

Verwenden Sie die folgenden Werte:

Tool name: pdf-docs

Typ: Data store

Beschreibung: pdf-docs

Klicken Sie auf „Save“.

60096b1c597347fa.png

Klicken Sie unten auf der Seite auf „Add data stores“. Klicken Sie dann auf „Create new data store“.

abb9e513ac905e75.png

Wählen Sie „Cloud Storage“ als Datenquelle aus.

Auswahlmöglichkeit: Unstructured documents

Wählen Sie Ihren GCS-Bucket bzw. -Ordner aus.

42dec238c1d0ac2f.png

Wählen Sie „us“ als Speicherort für den Datenspeicher aus.

Geben Sie als Namen des Datenspeichers „pdf-docs“ ein.

Wählen Sie im Drop-down-Menü „Digital parser“ aus.

Erweitertes Chunking aktivieren

Ancestor-Überschriften in Blöcken aktivieren.

Klicken Sie auf "Create".

1a5222b86ee6c58e.png

3119b5fec43c9294.png

Klicken Sie auf den Datenspeicher und sehen Sie sich die Dokumente, die Aktivität und die Verarbeitungskonfiguration an.

872d9142615e90c9.png

Der Import dauert etwa 5 bis 10 Minuten.

d9739a4af2244e03.png

Optionen für das Parsen und Aufteilen

Sie haben folgende Möglichkeiten, das Parsen von Inhalten zu steuern:

  • Digitaler Parser: Der digitale Parser ist standardmäßig für alle Dateitypen aktiviert, sofern kein anderer Parser angegeben ist. Der digitale Parser verarbeitet aufgenommene Dokumente, wenn kein anderer Standardparser für den Datenspeicher angegeben ist oder wenn der angegebene Parser den Dateityp eines aufgenommenen Dokuments nicht unterstützt.
  • OCR-Parser für PDFs: Öffentliche Vorschau. Wenn Sie gescannte PDFs oder PDFs mit Text in Bildern hochladen möchten, können Sie den OCR-Parser aktivieren, um die PDF-Indexierung zu verbessern. Weitere Informationen finden Sie unter OCR-Parser für PDFs.
  • Layoutparser: Aktivieren Sie den Layoutparser für HTML-, PDF- oder DOCX-Dateien, wenn Sie Vertex AI Search für RAG verwenden möchten. Weitere Informationen zu diesem Parser und dazu, wie Sie ihn aktivieren, finden Sie unter Dokumente für RAG in Blöcke aufteilen.

Weitere Informationen zum Parsen und Aufteilen von Dokumenten.

Toolkonfiguration

Kehren Sie zum Bildschirm „Tool-Konfiguration des Agenten“ zurück und aktualisieren Sie die verfügbaren Datenspeicher.

Wählen Sie den soeben erstellten Datenspeicher aus und klicken Sie auf Confirm.

2922f7d9bdb7b2bc.png

Fundierung konfigurieren.

Geben Sie „Google Cloud“ als Unternehmensnamen ein.

Nutzlasteinstellungen: Setzen Sie den Wert auf 5.Include snippets in Conversational Messenger response payload"

Klicken Sie auf "Speichern".

484e99caa7d1bc07.png

Konfiguration der Anweisungen für KI-Agenten

Kehren Sie zur Agent-Konfiguration zurück.

Neue Anleitung hinzufügen:

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

f6d27e58b68f9f7.png

Speichern Sie die Konfiguration.

Beispiel für das Tool „PDF-Dokumente“ erstellen

Wechseln Sie zum Tab „Beispiele“. Neues Beispiel erstellen: Guide to generative AI

Aktionen „+“ verwenden:

ee4f85ba3f47fda0.png

„Nutzereingabe“ hinzufügen:

What are the main capabilities for generative AI?

Fügen Sie „Tool-Nutzung“ hinzu.

  • Tool und Aktion: „pdf-docs

Eingabe (requestBody)

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

Tool-Ausgabe:

{
  "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"
    }
  ]
}

„Antwort des Kundenservicemitarbeiters“ hinzufügen

Detailed answer about main capabilities. 

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

Konfiguriertes Beispiel:

d1da4c1d18709ea6.png

Konfiguration des Toolaufrufs:

a0d47a9dc04bb2f1.png

Wechseln Sie zum Testen der Konfiguration zum Simulator.

Frage:

What are the 10 steps in the exec guide?

e682480a959125bc.png

Wählen Sie im Drop-down-Menü „Aufrufe“ die Option „Agent“ aus und klicken Sie auf „Save as example“.

582759df60b9a342.png

Geben Sie einen Namen an: „user-question-flow“.

Legen Sie die Zusammenfassung auf „Agent helped user answer question based on the pdf document“ fest und klicken Sie auf „Speichern“.

Formatieren Sie die Antwort des Agents und fügen Sie im Abschnitt mit der Tool-Ausgabe einen Link zum PDF-Dokument ein.

6ba5011ed26793f3.png

Speichern Sie das Beispiel.

Kehren Sie zum Simulator zurück und klicken Sie auf „Replay conversation“. Prüfen Sie das aktualisierte Antwortformat. Wenn nach dem Speichern des Beispiels ein Fehler angezeigt wird, müssen Sie möglicherweise Ihr Browserfenster aktualisieren und die Konversation neu starten, indem Sie den Prompt noch einmal senden:

What are the 10 steps in the exec guide?

51698c5f1fbd2770.png

Weitere Frage stellen:

What are the main capabilities in the exec guide?

7b636f489c05a13.png

Quell-PDF-Dokument.

5b3e6d2ceda99247.png

Frage:

What should I consider when evaluating projects?

1155edfbffcd14b2.png

Quell-PDF-Dokument.

57a0d331aa91f04b.png

Frage:

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

92264121fc8f06e.png

Quell-PDF-Dokument.

b4d07e6e7d9adc00.png

Glückwunsch! Der Agent kann jetzt fundierte Antworten auf Grundlage der PDF-Dokumente geben.

e11d020a9cfa36d1.png

10. Vordefinierte Agents

Als Nächstes sehen Sie sich die vordefinierten Agents im Menü auf der linken Seite an.

de49672bbb8112fd.png

Wählen Sie einen der Agents aus und stellen Sie ihn bereit. Einrichtung, Anweisungen und Tools des Agents ansehen

1e00ed8ef4887efb.png

11. Glückwunsch!

Sie haben das Lab abgeschlossen.

Behandelte Themen:

  • Conversational Agents erstellen und bereitstellen
  • Tool für den Agent hinzufügen, der von der Cloud Run-Anwendung unterstützt wird
  • KI‑Agent in den Slack-Workspace einbinden
  • Datenspeicher für Fragen und Antworten zu PDF-Dokumenten konfigurieren

Nächste Schritte:

Bereinigen

Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, können Sie entweder das Projekt löschen, das die Ressourcen enthält, oder das Projekt beibehalten und die einzelnen Ressourcen löschen.

Projekt löschen

Am einfachsten vermeiden Sie weitere Kosten durch Löschen des für die Anleitung erstellten Projekts.

© 2024 Google LLC. Alle Rechte vorbehalten. Google und das Google-Logo sind Marken von Google LLC. Alle anderen Unternehmens- und Produktnamen können Marken der jeweils mit ihnen verbundenen Unternehmen sein.