Mit einer Gemini AI-Chat-App Fragen basierend auf Chat-Unterhaltungen beantworten

In dieser Anleitung erfahren Sie, wie Sie eine Google Chat-App erstellen, die Antworten Fragen basierend auf Unterhaltungen in Chatbereichen mit generativer KI KI basiert auf Vertex AI mit Gemini. Die Chat App verwendet Google Workspace Events API und Pub/Sub, um Fragen zu erkennen und zu beantworten in Echtzeit gepostet werden, auch wenn sie nicht erwähnt wird.

Die Chat App verwendet alle im Gruppenbereich gesendeten Nachrichten als Datenquelle und Wissensdatenbank: Wenn jemand eine Frage stellt, Die Chat-App sucht nach zuvor geteilten Antworten und dann teilt einen. Wenn keine Antwort gefunden wird, wird gesagt, dass keine Antwort möglich ist. Bei jeder Antwort Nutzer können auf eine Aktionsschaltfläche für Zubehör klicken, um einen Administrator des Gruppenbereichs @erwähnen und eine Anfrage zu stellen um eine Antwort zu erhalten. Mithilfe von Gemini-KI passt sich die Google Chat App Durch fortlaufende Schulung von Unterhaltungen in Projektbereichen wird die Wissensdatenbank erweitert. dem sie hinzugefügt wird.

So funktioniert die Google Chat App beim Onboarding von Mitarbeitenden und Support:

  • <ph type="x-smartling-placeholder">
    </ph> Erwähnen Sie die App für den KI-Wissensassistenten, um sie einem Gruppenbereich hinzuzufügen.
    Abbildung 1: Charlie fügt einem Chatbereich den KI-Assistenten hinzu.
  • Dana stellt eine Frage.
    Abbildung 2: Dana fragt, ob das Unternehmen Schulungen für Vorträge anbietet.
  • Der KI-Wissensassistent in Chat beantwortet die Frage.
    Abbildung 3: Die Chat-App des KI-Wissensassistenten fordert Vertex AI mit Gemini auf, Danas Frage basierend auf dem Unterhaltungsverlauf des Chatbereichs zu beantworten und die Antwort dann zu teilen.

Vorbereitung

Zielsetzungen

  • Chat-App mit generativer KI erstellen Fragen zu beantworten, die auf dem Wissen basieren, das im Chatbereich geteilt wurde Unterhaltungen.
  • Mit generativer KI: <ph type="x-smartling-placeholder">
      </ph>
    • Erkennen und beantworten Sie die Fragen Ihrer Mitarbeitenden.
    • Kontinuierlich aus aktuellen Unterhaltungen in einem Chat lernen Leerzeichen.
  • Nachrichten in einem Chatbereich in Echtzeit abhören und beantworten auch wenn die Chat-App nicht direkt Nachricht gesendet.
  • Nachrichten durch Schreiben und Lesen aus einer Firestore-Datenbank beibehalten.
  • Zusammenarbeit in einem Chatbereich durch Erwähnen des Gruppenbereichs erleichtern wenn keine Antwort auf eine Frage gefunden wird.

Architektur

Das folgende Diagramm zeigt die Architektur von Google Workspace und Vom KI-Wissensassistenten verwendete Google Cloud-Ressourcen Chat-App.

Architekturdiagramm für die Chat-App des KI-Wissensassistenten

Die Chat-App des KI-Wissensassistenten funktioniert so:

  • Ein Nutzer fügt die Chat-App des KI-Wissensassistenten hinzu. mit einem Chatbereich:

    1. Die Chat-App fordert die Nutzer, der es dem Chatbereich hinzugefügt hat, um Authentifizierung und Autorisierung.

    2. Die Chat App ruft die Nachrichten des Gruppenbereichs ab, indem sie durch Aufrufen der Methode spaces.messages.list in der Chat API und und speichert die abgerufenen Nachrichten dann in einer Firestore-Datenbank.

    3. Die Chat-App ruft die subscriptions.create-Methode in der Google Workspace Events API, um zu starten auf Ereignisse wie Nachrichten im Gruppenbereich. Die Der Benachrichtigungsendpunkt des Abos ist ein Pub/Sub-Thema, Eventarc, um das Ereignis an die Chat App weiterzuleiten.

    4. Die Chat-App postet eine Einführungsnachricht an den Gruppenbereich.

  • Ein Nutzer im Chatbereich postet eine Nachricht:

    1. Die Chat-App empfängt die Nachricht in Echtzeit. aus dem Pub/Sub-Thema.

    2. Die Chat-App fügt die Nachricht Firestore hinzu. Datenbank.

      Wenn ein Nutzer die Nachricht später bearbeitet oder löscht, wird der Die Chat-App empfängt das aktualisierte oder gelöschte Ereignis in Echtzeit erstellt und anschließend in Firestore aktualisiert oder gelöscht wird. Datenbank.

    3. Die Chat-App sendet die Nachricht an Vertex AI mit Gemini:

      1. Der Prompt weist Vertex AI mit Gemini an, zu prüfen, ob die Nachricht eine Frage enthält. Falls ja, beantwortet Gemini die Fragen für den in Firestore gespeicherten Nachrichtenverlauf des Chatbereichs und die Google Chat App sendet die Nachricht dann an die Chatbereich. Falls nicht, antworte nicht.

      2. Wenn Vertex AI mit Gemini die Frage beantwortet, Die Chat-App veröffentlicht die Antworten Sie durch Aufrufen der spaces.messages.create-Methode in Chat API mit App-Authentifizierung

        Wenn Vertex AI mit Gemini die Frage nicht beantworten kann, In der Chat-App wird ein dass er keine Antwort auf diese Frage in Verlauf des Chatbereichs.

        Nachrichten enthalten immer eine zusätzliche Aktionsschaltfläche, über die Nutzer Dadurch wird die Chat-App Sie können den Administrator des Gruppenbereichs @erwähnen und ihn um eine Antwort bitten.

  • Die Chat-App erhält eine Lebenszyklusbenachrichtigung von die Google Workspace Events API, die das Chatbereich-Abo läuft bald ab:

    1. Die Chat-App sendet eine Anfrage zum Verlängern des durch Aufrufen der Methode subscriptions.patch im Google Workspace Events API
  • Die Google Chat App wird aus Google Chat entfernt Gruppenbereich:

    1. Die Chat-App löscht das Abo, indem Sie durch Aufrufen der Methode subscriptions.delete im Google Workspace Events API

    2. Die Chat-App löscht den Chat Daten des Raums aus Firestore.

Produkte ansehen, die von der Chat-App des KI-Wissensassistenten verwendet werden

Die Chat-App des KI-Wissensassistenten nutzt die folgenden Google Workspace- und Google Cloud-Produkten:

  • Vertex AI API mit Gemini: Eine auf generativer KI basierende Plattform auf Basis von Gemini. Der KI-Wissensassistent Die Chat-App nutzt die Vertex AI API mit Gemini, um erkennen, verstehen und beantworten.
  • Chat API: Eine API zum Entwickeln von Google Chat-Apps, die Nachrichten empfangen und darauf antworten Chat-Interaktionsereignisse wie Nachrichten Die KI Die Chat-App des Wissensassistenten verwendet die Chat API für Folgendes: <ph type="x-smartling-placeholder">
      </ph>
    • Von Google Chat gesendete Interaktionsereignisse empfangen und darauf reagieren.
    • In einem Gruppenbereich gesendete Nachrichten auflisten.
    • Sie können in einem Gruppenbereich Antworten auf Nutzerfragen posten.
    • Konfigurieren Sie Attribute, die bestimmen, wie sie in Chat, z. B. Name und Avatar.
  • Google Workspace Events API: Mit dieser API können Sie Ereignisse abonnieren und Änderungsbenachrichtigungen in allen Google Workspace-Anwendungen. Die Der KI-Wissensassistent in der Chat-App nutzt die Google Workspace Events API, um auf Nachrichten zu warten, die in einem Chatbereich, damit Fragen erkannt und beantwortet werden können, selbst wenn nicht erwähnt wird.
  • Firestore: Serverlose Dokumentendatenbank. Der KI-Wissensassistent Chat-App verwendet Firestore zum Speichern von Daten zu Nachrichten die in einem Chatbereich gesendet wurden.
  • Pub/Sub: Pub/Sub ist ein asynchroner und skalierbarer Messaging-Dienst, der die Nachrichten von Diensten generieren, die diese Nachrichten verarbeiten. Die Die Chat-App des KI-Wissensassistenten nutzt Pub/Sub, um Aboereignisse aus Chatbereichen empfangen.
  • Eventarc Mit Eventarc können Sie ereignisgesteuerte Architekturen erstellen, Implementierung, Anpassung oder Wartung der vorhandenen Infrastruktur. Die KI der Wissensassistent in der Chat-App nutzt Eventarc, um und Ereignisse aus Pub/Sub an einen Chatbereich weiterleiten Cloud Functions-Funktion, die die Aboereignisse empfängt und verarbeitet
  • Cloud Functions: Ein einfacher serverloser Computing-Dienst, mit dem Sie zweckgebundenen, eigenständigen Funktionen, die auf Chat reagieren können Interaktions- und Aboereignisse, ohne dass ein Server oder eine Laufzeit verwaltet werden muss. zu verbessern. Der KI-Wissensassistent in der Chat-App verwendet zwei Cloud Functions-Funktionen mit den Namen: <ph type="x-smartling-placeholder">
      </ph>
    • app: Hosten Sie den von Chat gesendeten HTTP-Endpunkt. Interaktionsereignisse an und als Computing-Plattform, um Logik auszuführen, die diese Ereignisse zu verarbeiten und darauf zu reagieren.
    • eventsApp: Empfängt und verarbeitet den Chatbereich wie Nachrichten aus einem Pub/Sub-Abo.
    Cloud Functions verwendet die folgenden Google Cloud-Produkte zum Erstellen und Host-Rechenressourcen: <ph type="x-smartling-placeholder">
      </ph>
    • Cloud Build: Eine vollständig verwaltete Plattform für Continuous Integration, Continuous Delivery und Continuous Deployment zum Ausführen automatisierter Builds.
    • Cloud Run: Eine vollständig verwaltete Umgebung zum Ausführen von Containeranwendungen

Umgebung vorbereiten

In diesem Abschnitt erfahren Sie, wie Sie ein Google Cloud-Projekt für die Chat-App.

Google Cloud-Projekt erstellen

Google Cloud Console

  1. Öffnen Sie in der Google Cloud Console das Menü . &gt; IAM und Verwaltung &gt; Projekt erstellen.

    Zur Seite „Projekt erstellen“

  2. Geben Sie im Feld Projektname einen aussagekräftigen Namen für Ihr Projekt ein.

    Optional: Klicken Sie zum Bearbeiten der Projekt-ID auf Bearbeiten. Die Projekt-ID kann nicht geändert werden nachdem das Projekt erstellt wurde, wählen Sie also eine ID, die Ihren Anforderungen für die gesamte Lebensdauer des Projekt arbeiten.

  3. Klicken Sie im Feld Standort auf Durchsuchen, um die potenziellen Standorte für Ihr Projekt arbeiten. Klicken Sie danach auf Auswählen. <ph type="x-smartling-placeholder">
  4. Klicken Sie auf Erstellen. In der Google Cloud Console wird die Dashboard-Seite aufgerufen und Ihr Projekt wurde erstellt. innerhalb weniger Minuten.

gcloud-CLI

Greifen Sie in einer der folgenden Entwicklungsumgebungen auf die Google Cloud Befehlszeile („gcloud“):

  • Cloud Shell: Onlineterminal mit der gcloud CLI verwenden aktivieren Sie Cloud Shell.
    Cloud Shell aktivieren
  • Lokale Shell: So verwenden Sie eine lokale Entwicklungsumgebung: install und Initialisieren über die gcloud CLI.
    Verwenden Sie den Befehl „gcloud projects create“, um ein Cloud-Projekt zu erstellen:
    gcloud projects create PROJECT_ID
    Ersetzen Sie PROJECT_ID, indem Sie die ID für das Projekt festlegen, das Sie erstellen möchten.

Abrechnung für das Cloud-Projekt aktivieren

<ph type="x-smartling-placeholder">

Google Cloud Console

  1. Gehen Sie in der Google Cloud Console zu Abrechnung. Klicken Sie auf Menü &gt; Abrechnung &gt; Meine Projekte.

    Zur Abrechnung für meine Projekte

  2. Wählen Sie unter Organisation auswählen die Organisation aus, die mit Ihr Google Cloud-Projekt.
  3. Öffnen Sie in der Projektzeile das Menü Aktionen. (), klicken Sie auf Abrechnung ändern und wählen Sie Cloud-Rechnungskonto.
  4. Klicken Sie auf Konto festlegen.

gcloud-CLI

  1. Führen Sie folgenden Befehl aus, um verfügbare Rechnungskonten aufzulisten:
    gcloud billing accounts list
  2. Verknüpfen Sie ein Rechnungskonto mit einem Google Cloud-Projekt:
    gcloud billing projects link PROJECT_ID --billing-account=BILLING_ACCOUNT_ID

    Ersetzen Sie Folgendes:

    • PROJECT_ID ist die Projekt-ID für das Cloud-Projekt, für das Sie die Abrechnung aktivieren möchten.
    • BILLING_ACCOUNT_ID ist die ID des Rechnungskontos, mit dem eine Verknüpfung hergestellt werden soll. des Google Cloud-Projekts.

APIs aktivieren

Google Cloud Console

  1. Aktivieren Sie in der Google Cloud Console die Google Chat API, die Vertex AI API, Cloud Functions API, Firestore API, Cloud Build API die Pub/Sub API, die Google Workspace Events API, die Eventarc API und die Cloud Run Admin API.

    APIs aktivieren

  2. Aktivieren Sie die APIs in den richtigen Cloud-Projekt und klicken Sie dann auf Weiter.

  3. Aktivieren Sie die richtigen APIs und klicken Sie dann auf Aktivieren.

gcloud-CLI

  1. Legen Sie gegebenenfalls das aktuelle Cloud-Projekt auf das Projekt fest, Erstellt:

    gcloud config set project PROJECT_ID
    

    Ersetzen Sie PROJECT_ID durch die Projekt-ID des Cloud-Projekt, das Sie erstellt haben.

  2. die Google Chat API, die Vertex AI API, die Cloud Functions API die Firestore API, die Cloud Build API, die Pub/Sub API Google Workspace Events API, Eventarc API und Cloud Run Admin API:

    gcloud services enable chat.googleapis.com \
    aiplatform.googleapis.com \
    cloudfunctions.googleapis.com \
    firestore.googleapis.com \
    cloudbuild.googleapis.com \
    pubsub.googleapis.com \
    workspaceevents.googleapis.com \
    eventarc.googleapis.com \
    run.googleapis.com
    

Authentifizierung und Autorisierung einrichten

Durch Authentifizierung und Autorisierung kann das Zugriff auf Ressourcen der Chat-App in Google Workspace und Google Cloud

In dieser Anleitung veröffentlichen Sie die Google Chat App intern, Platzhalterinformationen dürfen verwendet werden. Vor der Veröffentlichung Google Chat App extern, Platzhalterinformationen ersetzen durch für den Zustimmungsbildschirm.

  1. Gehen Sie in der Google Cloud Console zu Menü &gt; APIs und Dienste &gt; OAuth-Zustimmungsbildschirm.

    Zum OAuth-Zustimmungsbildschirm

  2. Wählen Sie unter Nutzertyp die Option Intern aus und klicken Sie dann auf Erstellen.

  3. Geben Sie unter App-Name AI knowledge assistant ein.

  4. Wählen Sie unter Nutzer-Support-E-Mail Ihre E-Mail-Adresse oder eine geeignete Google-Gruppe.

  5. Geben Sie unter Kontaktdaten des Entwicklers Ihre E-Mail-Adresse ein.

  6. Klicken Sie auf Speichern und fortfahren.

  7. Klicken Sie auf Bereiche hinzufügen oder entfernen. Ein Steuerfeld mit einer Liste der Bereiche wird angezeigt für jede API, die Sie in Ihrem Cloud-Projekt aktiviert haben.

  8. Fügen Sie unter Bereiche manuell hinzufügen den folgenden Bereich ein:

    • https://www.googleapis.com/auth/chat.messages
  9. Klicken Sie auf Zu Tabelle hinzufügen.

  10. Klicken Sie auf Aktualisieren.

  11. Klicken Sie auf Speichern und fortfahren.

  12. Sehen Sie sich die Zusammenfassung der App-Registrierung an und klicken Sie dann auf Zurück zum Dashboard.

OAuth-Client-ID-Anmeldedaten erstellen

  1. Gehen Sie in der Google Cloud Console zu Menü &gt; APIs und Dienste &gt; Anmeldedaten.

    Zu den Anmeldedaten

  2. Klicken Sie auf Anmeldedaten erstellen. &gt; OAuth-Client-ID.

  3. Klicken Sie auf Anwendungstyp. &gt; Webanwendung.

  4. Geben Sie in das Feld Name einen Namen für die Anmeldedaten ein. Dieser Name ist nur in der Google Cloud Console angezeigt.

  5. Klicken Sie unter Autorisierte Weiterleitungs-URIs auf URI hinzufügen.

  6. Geben Sie unter URIs 1 Folgendes ein:

    https://REGION-PROJECT_ID.cloudfunctions.net/app/oauth2
    

    Ersetzen Sie Folgendes:

    • REGION: Region der Cloud Functions-Funktion, z. B. us-central1 Wenn Sie später die beiden Cloud Functions-Funktionen erstellen, müssen Sie deren Region diesen Wert an.
    • PROJECT_ID: die Projekt-ID des Cloud-Projekts die Sie erstellt haben.
  7. Klicken Sie auf Erstellen.

  8. Klicken Sie im Fenster OAuth-Client erstellt auf JSON herunterladen.

  9. Speichere die heruntergeladene Datei als client_secrets.json. Später, wenn Sie die beiden Cloud Functions-Funktionen verwenden, fügen Sie jeweils die Datei client_secrets.json ein Bereitstellung.

  10. Klicken Sie auf OK.

Pub/Sub-Thema erstellen

Das Pub/Sub-Thema funktioniert mit Google Workspace Events API, um Ereignisse in einem Chat zu abonnieren Nachrichten senden und die Chat App direkt benachrichtigen .

So erstellen Sie das Pub/Sub-Thema:

Google Cloud Console

  1. Gehen Sie in der Google Cloud Console zu Menü &gt; Pub/Sub.

    Zu Pub/Sub

  2. Klicken Sie auf Thema erstellen.

  3. Geben Sie unter Themen-ID events-api ein.

  4. Hebe die Auswahl von Standardabo hinzufügen auf.

  5. Wählen Sie unter Verschlüsselung die Option Von Google verwalteter Verschlüsselungsschlüssel aus.

  6. Klicken Sie auf Erstellen. Das Pub/Sub-Thema wird angezeigt.

  7. Damit dieses Pub/Sub-Thema und die Google Workspace Events API funktionieren IAM-Nutzer für Google Chat die Berechtigung zum Posten an das Pub/Sub-Thema:

    1. Klicken Sie im Bereich events-api unter BERECHTIGUNGEN auf Hauptkonto hinzufügen.

    2. Geben Sie unter Hauptkonten hinzufügen in Neue Hauptkonten Folgendes ein: chat-api-push@system.gserviceaccount.com

    3. Wählen Sie unter Rollen zuweisen unter Rolle auswählen die Option Pub/Sub aus. &gt; Pub/Sub-Publisher.

    4. Klicken Sie auf Speichern.

gcloud-CLI

  1. Erstellen Sie ein Pub/Sub-Thema mit der Themen-ID events-api:

    gcloud pubsub topics create events-api
    
  2. Dem Chat-IAM-Nutzer die Berechtigung zum Posten von Beiträgen erteilen das Pub/Sub-Thema:

    gcloud pubsub topics add-iam-policy-binding events-api \
    --member='serviceAccount:chat-api-push@system.gserviceaccount.com' \
    --role='roles/pubsub.publisher'
    

Firestore-Datenbank erstellen

Die Firestore-Datenbank wird beibehalten und ruft Daten aus Chatbereichen, z. B. Nachrichten. Sie definieren die Daten nicht , der implizit im Beispielcode von den model/message.js- und services/firestore-service.js Dateien.

Die Datenbank der Chat-App für KI-Wissensassistent NoSQL-Datenmodell basierend auf Dokumente organisiert in Sammlungen. Weitere Informationen finden Sie unter Firestore-Datenmodell:

Das folgende Diagramm bietet einen Überblick über den KI-Wissensassistenten. Datenmodell der Chat-App:

Datenmodell der Firestore-Datenbank

Das Stammverzeichnis enthält zwei Sammlungen:

  1. spaces, wobei jedes Dokument einen Chatbereich darstellt, der der Chat-App hinzugefügt wird. Jede Nachricht wird durch dargestellt durch ein Dokument in der Untersammlung messages.

  2. users, wobei jedes Dokument einen Nutzer darstellt, der den Chat-App mit einem Chatbereich verknüpfen.

Sammlungs-, Dokument- und Felddefinitionen ansehen

spaces

Ein Chatbereich mit der Chat-App des KI-Wissensassistenten.

Felder
Document IDString
Eindeutige ID eines bestimmten Gruppenbereichs. Ein Teil des Ressourcennamens des Gruppenbereichs in der Chat API.
messagesSubcollection of Documents (messages)
Im Chatbereich gesendete Nachrichten. Entspricht dem Document ID einer message in Firebase.
spaceNameString
Der eindeutige Name des Gruppenbereichs in der Chat API. Entspricht dem Ressourcennamen des Gruppenbereichs in der Chat API.

messages

Nachrichten, die im Chatbereich gesendet wurden.

Felder
Document IDString
Eindeutige ID einer bestimmten Nachricht.
nameString
Der eindeutige Name einer Nachricht in der Chat API. Entspricht dem Ressourcennamen der Nachricht in der Chat API.
textString
Text der Nachricht.
timeString (Timestamp format)
Der Zeitpunkt, zu dem die Nachricht erstellt wurde.

users

Nutzer, die die Chat-App des KI-Wissensassistenten einem Chatbereich hinzugefügt haben.

Felder
Document IDString
Eindeutige ID eines bestimmten Nutzers.
accessTokenString
Das Zugriffstoken, das während der OAuth 2.0-Nutzerautorisierung zum Aufrufen von Google Workspace APIs gewährt wurde.
refreshTokenString
Das Aktualisierungstoken, das während der OAuth 2.0-Nutzerautorisierung gewährt wurde.

So erstellen Sie die Firestore-Datenbank:

Google Cloud Console

  1. Gehen Sie in der Google Cloud Console zu Menü &gt; Firestore.

    Firestore aufrufen

  2. Klicken Sie auf Datenbank erstellen.

  3. Klicken Sie unter Firestore-Modus auswählen auf Nativer Modus.

  4. Klicken Sie auf Weiter.

  5. Konfigurieren Sie die Datenbank:

    1. Behalten Sie unter Datenbank benennen als Datenbank-ID den Wert (default) bei.

    2. Wählen Sie unter Standorttyp die Option Region aus.

    3. Geben Sie unter Region eine Region für die Datenbank an, z. B. us-central1 Für eine optimale Leistung wählen Sie denselben oder einen Standort als Cloud Functions-Funktionen der Chat-App.

  6. Klicken Sie auf Datenbank erstellen.

gcloud-CLI

  • Erstellen Sie eine Firestore-Datenbank im nativen Modus:

    gcloud firestore databases create \
    --location=LOCATION \
    --type=firestore-native
    

    Ersetzen Sie LOCATION durch den Namen eines Firestores. Region wie als us-central1. Für eine optimale Leistung wählen Sie denselben oder einen Standort als Cloud Functions-Funktionen der Chat-App.

Chat-App erstellen und bereitstellen

Nachdem Sie Ihr Google Cloud-Projekt erstellt und konfiguriert haben, können Sie und stellen Sie die Chat-App bereit. In diesem Abschnitt führen Sie Folgendes:

  1. Zwei Cloud Functions-Funktionen erstellen und bereitstellen. Einer zum Antworten auf den Chat Interaktionsereignisse und eines zum Reagieren auf Pub/Sub-Ereignisse.
  2. Chat-App in der Google Chat API erstellen und bereitstellen Konfigurationsseite aufrufen.

Cloud Functions-Funktionen erstellen und bereitstellen

In diesem Abschnitt erstellen Sie zwei Cloud Functions-Funktionen mit den Namen:

  • app: zum Hosten und Ausführen der Code, der auf Ereignisse reagiert, die von Google Chat als HTTP empfangen werden -Anfragen.
  • eventsApp: Empfängt und verarbeitet den Chatbereich wie Nachrichten aus Pub/Sub.

Zusammen bilden diese Cloud Functions-Funktionen den KI-Wissensassistenten. Die Anwendungslogik der Chat-App.

Optional: Bevor Sie Cloud Functions-Funktionen erstellen, nehmen Sie sich einen Moment Zeit, mit dem auf GitHub gehosteten Beispielcode vertraut machen.

Auf GitHub ansehen

app erstellen und bereitstellen

Google Cloud Console

  1. Laden Sie den Code von GitHub als ZIP-Datei herunter.

    ZIP-Datei herunterladen

  2. Extrahieren Sie die heruntergeladene ZIP-Datei.

    Der extrahierte Ordner enthält alle Google Workspace-Beispiele zu erstellen.

  3. Gehen Sie im extrahierten Ordner zum google-chat-samples-main/node/ai-knowledge-assistant-Verzeichnis.

  4. Im Verzeichnis google-chat-samples/node/ai-knowledge-assistant fügen Sie die Datei client_secrets.json hinzu, die Sie beim OAuth-Client-ID-Anmeldedaten erstellt zur Authentifizierung und Autorisierung an.

  5. Inhalt des Ordners ai-knowledge-assistant in eine ZIP-Datei komprimieren -Datei.

    Das Stammverzeichnis der ZIP-Datei muss Folgendes enthalten: Dateien und Ordner:

    • .gcloudignore
    • .gitignore
    • README.md
    • deploy.sh
    • env.js
    • events_index.js
    • http_index.js
    • index.js
    • client_secrets.json
    • package-lock.json
    • package.json
    • controllers/
    • model/
    • services/
    • test/
  6. Gehen Sie in der Google Cloud Console zu Menü &gt; Cloud Functions.

    Zu Cloud Functions

    Prüfen Sie, ob das Google Cloud-Projekt für Ihr Die Chat-App ist ausgewählt.

  7. Klicken Sie auf Funktion erstellen.

  8. Richten Sie auf der Seite Funktion erstellen Ihre Funktion ein:

    1. Wählen Sie unter Umgebung die Option 2. Generation aus.
    2. Geben Sie unter Funktionsname app ein.
    3. Wählen Sie unter Region eine Region aus, z. B. us-central1. Diese Region muss mit der Region übereinstimmen, die Sie in der autorisierten Weiterleitungs-URI festgelegt haben, wenn ich OAuth-Client-ID-Anmeldedaten erstellt zur Authentifizierung und Autorisierung an.
    4. Wählen Sie unter Triggertyp die Option HTTPS aus.
    5. Wählen Sie unter Authentication (Authentifizierung) die Option Nicht authentifizierte Aufrufe zulassen
    6. Klicken Sie auf Weiter.
  9. Wählen Sie unter Laufzeit die Option Node.js 20 aus.

  10. Löschen Sie unter Einstiegspunkt den Standardtext und geben Sie app

  11. Wählen Sie unter Quellcode die Option ZIP-Upload aus.

  12. Führen Sie unter Ziel-Bucket folgende Schritte aus: Erstellen oder wählen Sie einen Bucket aus:

    1. Klicken Sie auf Durchsuchen.
    2. Wählen Sie einen Bucket aus.
    3. Klicken Sie auf Auswählen.

    Google Cloud lädt die ZIP-Datei in die Komponentendateien hoch und extrahiert sie. in diesem Bucket. Cloud Functions kopiert die Komponentendateien dann die Cloud Functions-Funktion.

  13. Laden Sie in Zip file (ZIP-Datei) die ZIP-Datei hoch, die Sie von GitHub heruntergeladen haben. extrahiert und wieder komprimiert:

    1. Klicken Sie auf Durchsuchen.
    2. Gehen Sie zur ZIP-Datei und wählen Sie sie aus.
    3. Klicken Sie auf Öffnen.
  14. Klicken Sie auf Bereitstellen.

    Die Seite Cloud Functions-Details wird geöffnet und die Funktion wird angezeigt. mit zwei Fortschrittsanzeigen: eine für den Build und eine für den Dienst. Wenn beide Fortschrittsanzeigen verschwinden und durch eine Überprüfung ersetzt werden ist die Funktion bereitgestellt und bereit.

  15. Bearbeiten Sie den Beispielcode, um Konstanten festzulegen:

    1. Klicken Sie auf der Seite Cloud Functions-Details auf Bearbeiten.
    2. Klicken Sie auf Weiter.
    3. Wählen Sie unter Quellcode den Inline-Editor aus.
    4. Öffnen und bearbeiten Sie die Datei env.js im Inline-Editor: <ph type="x-smartling-placeholder">
        </ph>
      1. Legen Sie den Wert von project auf Ihren Cloud-Projekt-ID.
      2. Legen Sie den Wert von location auf den Wert der Cloud Functions-Funktion fest. region [Region], wie us-central1.
  16. Klicken Sie auf Bereitstellen.

gcloud-CLI

  1. Klonen Sie den Code aus GitHub:

    git clone https://github.com/googleworkspace/google-chat-samples.git
    
  2. Wechseln Sie in das Verzeichnis, das den Code für dieses KI-Wissen enthält Assistant Chat-App:

    cd google-chat-samples/node/ai-knowledge-assistant
    
  3. Im Verzeichnis google-chat-samples/node/ai-knowledge-assistant fügen Sie die Datei client_secrets.json hinzu, die Sie beim OAuth-Client-ID-Anmeldedaten erstellt zur Authentifizierung und Autorisierung an.

  4. Bearbeiten Sie die Datei env.js, um Umgebungsvariablen festzulegen:

    1. Legen Sie den Wert von project auf Ihr Cloud-Projekt fest ID.
    2. Legen Sie den Wert von location auf den Wert der Cloud Functions-Funktion fest. region wie us-central1.
  5. Stellen Sie die Cloud Functions-Funktion in Google Cloud bereit:

    gcloud functions deploy app \
    --gen2 \
    --region=REGION \
    --runtime=nodejs20 \
    --source=. \
    --entry-point=app \
    --trigger-http \
    --allow-unauthenticated
    

    Ersetzen Sie REGION durch den Wert der Region , um mit der in der env.js-Datei festgelegten übereinstimmt, z. B. us-central1.

eventsApp erstellen und bereitstellen

Google Cloud Console

  1. Gehen Sie in der Google Cloud Console zu Menü &gt; Cloud Functions.

    Zu Cloud Functions

    Prüfen Sie, ob das Google Cloud-Projekt für Ihr Die Chat-App ist ausgewählt.

  2. Klicken Sie auf Funktion erstellen.

  3. Richten Sie auf der Seite Funktion erstellen Ihre Funktion ein:

    1. Wählen Sie unter Umgebung die Option 2. Generation aus.
    2. Geben Sie unter Funktionsname eventsApp ein.
    3. Wählen Sie unter Region eine Region aus, z. B. us-central1. Diese Region muss mit der Region übereinstimmen, die Sie in der autorisierten Weiterleitungs-URI festgelegt haben, wenn ich OAuth-Client-ID-Anmeldedaten erstellt zur Authentifizierung und Autorisierung an.
    4. Wählen Sie unter Triggertyp die Option Cloud Pub/Sub aus.
    5. Wählen Sie unter Cloud Pub/Sub topic (Cloud Pub/Sub-Thema) den Namen des Pub/Sub-Themas aus, mit dem Format projects/PROJECT/topics/events-api, wobei PROJECT ist die ID Ihres Cloud-Projekts.
    6. Wenn eine Nachricht angezeigt wird, die mit Service account(s) might not have enough permissions to deploy the function with the selected trigger. beginnt, klicken Sie auf Alle gewähren.
    7. Klicken Sie auf Weiter.
  4. Wählen Sie unter Laufzeit die Option Node.js 20 aus.

  5. Löschen Sie unter Einstiegspunkt den Standardtext und geben Sie eventsApp

  6. Wählen Sie unter Quellcode die Option Zip aus Cloud Storage aus.

  7. Klicken Sie unter Cloud Storage-Speicherort auf Durchsuchen.

  8. Wählen Sie den Bucket aus, in den Sie die ZIP-Datei beim Erstellen der Datei hochgeladen haben. Cloud Functions-Funktion app

  9. Klicken Sie auf die hochgeladene ZIP-Datei.

  10. Klicken Sie auf Auswählen.

  11. Klicken Sie auf Bereitstellen.

    Die Seite Cloud Functions-Details wird geöffnet und die Funktion wird angezeigt. drei Fortschrittsanzeigen: eine für den Build, eine für den Dienst, und eine für den Trigger. Wenn alle drei Fortschrittsanzeigen verschwinden und durch ein Häkchen ersetzt werden, ist die Funktion bereitgestellt und bereit.

  12. Bearbeiten Sie den Beispielcode, um Konstanten festzulegen:

    1. Klicken Sie auf der Seite Cloud Functions-Details auf Bearbeiten.
    2. Klicken Sie auf Weiter.
    3. Wählen Sie unter Quellcode den Inline-Editor aus.
    4. Öffnen und bearbeiten Sie die Datei env.js im Inline-Editor: <ph type="x-smartling-placeholder">
        </ph>
      1. Legen Sie den Wert von project auf Ihren Cloud-Projekt-ID.
      2. Legen Sie den Wert von location auf den Wert der Cloud Functions-Funktion fest. region [Region], wie us-central1.
  13. Klicken Sie auf Bereitstellen.

gcloud-CLI

  1. Wechseln Sie in der gcloud CLI zum Verzeichnis, falls Sie sich noch nicht dort befinden. der den Code für dieses KI-Wissen enthält, Assistant Chat-App, die Sie zuvor geklont aus GitHub:

    cd google-chat-samples/node/ai-knowledge-assistant
    
  2. Im Verzeichnis google-chat-samples/node/ai-knowledge-assistant fügen Sie die Datei client_secrets.json hinzu, die Sie beim OAuth-Client-ID-Anmeldedaten erstellt zur Authentifizierung und Autorisierung an.

  3. Bearbeiten Sie die Datei env.js, um Umgebungsvariablen festzulegen:

    1. Legen Sie den Wert von project auf Ihr Cloud-Projekt fest ID.
    2. Legen Sie den Wert von location auf den Wert der Cloud Functions-Funktion fest. region wie us-central1.
  4. Stellen Sie die Cloud Functions-Funktion in Google Cloud bereit:

    gcloud functions deploy eventsApp \
    --gen2 \
    --region=REGION \
    --runtime=nodejs20 \
    --source=. \
    --entry-point=eventsApp \
    --trigger-topic=events-api
    

    Ersetzen Sie REGION durch den Wert der Region , um mit der in der env.js-Datei festgelegten übereinstimmt, z. B. us-central1.

Trigger-URL der Cloud Functions-Funktion app kopieren

Im nächsten Abschnitt fügen Sie die Trigger-URL der Cloud Functions-Funktion „app“ ein wenn du Konfigurieren Sie die Chat App in der Google Cloud Console.

Google Cloud Console

  1. Gehen Sie in der Google Cloud Console zu Menü &gt; Cloud Functions.

    Zu Cloud Functions

  2. Klicken Sie in der Liste der Cloud Functions-Funktionen in der Spalte Name auf app

  3. Klickbasierter Trigger

  4. Kopieren Sie die URL.

gcloud-CLI

  1. Beschreiben Sie die Cloud Functions-Funktion app:

    gcloud functions describe app
    
  2. Kopieren Sie das Attribut url.

Chat-App in der Google Cloud Console konfigurieren

In diesem Abschnitt erfahren Sie, wie Sie die Chat API in der Google Cloud Console mit Informationen zu Ihrer Chat-App, einschließlich des Namens der Chat-App und die Trigger-URL der Cloud der Chat-App Funktion, an die Chat-Interaktionsereignisse gesendet werden.

  1. Klicken Sie in der Google Cloud Console auf das Dreistrich-Menü. &gt; Weitere Produkte &gt; Google Workspace &gt; Produktbibliothek &gt; Google Chat API &gt; Verwalten &gt; Konfiguration.

    Zur Chat API-Konfiguration

  2. Geben Sie unter App-Name AI knowledge assistant ein.

  3. Geben Sie unter Avatar-URL https://fonts.gstatic.com/s/i/short-term/release/googlesymbols/live_help/default/24px.svg ein.

  4. Geben Sie unter Beschreibung Answers questions with AI ein.

  5. Stellen Sie die Ein/Aus-Schaltfläche Interaktive Funktionen aktivieren auf „Ein“.

  6. Wählen Sie unter Funktionen die Option Gruppenbereichen und Gruppenunterhaltungen beitreten aus.

  7. Wählen Sie unter Verbindungseinstellungen die Option App-URL aus.

  8. Fügen Sie unter App-URL die Trigger-URL aus der Cloud Functions-Funktion app ein. formatiert als https://REGION-PROJECT_ID.cloudfunctions.net/app Dabei ist REGION die Region der Cloud Functions-Funktion, z. B. us-central1 PROJECT_ID ist die Projekt-ID des Cloud-Projekt, das Sie erstellt haben.

  9. Wähle unter Sichtbarkeit die Option Diese Chat-App für bestimmte Personen und Gruppen in Ihrem Workspace-Domain und geben Sie Ihre E-Mail-Adresse ein.

  10. Wählen Sie optional unter Logs die Option Fehler in Logging protokollieren aus.

  11. Klicken Sie auf Speichern. Es wird eine Meldung angezeigt, in der die Konfiguration gespeichert ist. Die Chat-App ist testen können.

Chat App testen

Teste die Chat-App des KI-Wissensassistenten in einer Chatbereich mit Nachrichten, indem Sie Fragen stellen, die die KI Wissensassistent die Chat-App beantworten kann.

So kannst du den KI-Wissensassistenten testen Chat-App:

  • Fügen Sie die Chat-App des KI-Wissensassistenten einem bestehenden Chatbereich an und stellen Sie Fragen, in diesem Bereich.
  • Erstellen Sie einen Chatbereich und posten Sie einige Nachrichten zur Verwendung als Datenquelle verwendet werden. Nachrichten können aus folgenden Quellen stammen: Gemini mit einem Prompt wie Answer 20 common onboarding questions employees ask their teams. Oder können Sie ein paar Absätze aus dem Übersicht über die Entwicklung mit Google Chat und dann Fragen dazu stellen.

Erstellen Sie für diese Anleitung einen Chatbereich Absätze aus dem Übersicht zum Entwickeln von Apps in Google Chat.

  1. Öffnen Sie Google Chat.

    Zu Google Chat

  2. So erstellen Sie einen Chatbereich:

    1. Klicken Sie auf Neuer Chat. &gt; Gruppenbereich erstellen.

    2. Geben Sie unter Name des Gruppenbereichs den Wert Testing AI knowledge assistant app ein.

    3. Wählen Sie unter Wofür ist dieser Gruppenbereich gedacht? die Option Zusammenarbeit aus.

    4. Wählen Sie unter Zugriffseinstellungen aus, wer auf den Gruppenbereich zugreifen darf.

    5. Klicken Sie auf Erstellen.

  3. Nachrichten hinzufügen, die als Datenquelle verwendet werden sollen:

    1. Rufe in einem Webbrowser die mit Chat entwickeln – Übersicht .

    2. Kopieren Sie den Inhalt des Leitfadens und fügen Sie ihn in den Chatbereich ein die Sie erstellt haben.

  4. Fügen Sie die Chat-App des KI-Wissensassistenten hinzu:

    1. Geben Sie in der Eingabezeile @AI knowledge assistant ein und in das Feld angezeigt wird, wähle den KI-Wissensassistenten aus. Chat-App und drücken Sie enter.

    2. Es erscheint eine Meldung mit der Frage, ob du den KI-Wissensassistenten hinzufügen möchtest Chat-App mit dem Gruppenbereich. Klicken Sie auf Zu Gruppenbereich hinzufügen.

    3. Wenn Sie die Chat App zum ersten Mal hinzufügen an einen Gruppenbereich senden möchten, müssen Sie die Authentifizierung und Autorisierung für die Chat-App:

      1. Klicken Sie auf Konfigurieren.
      2. Ein neues Browserfenster oder ein neuer Tab wird geöffnet, in dem Sie aufgefordert werden, eine Google-Konto. Wählen Sie das Konto aus, mit dem Sie testen möchten.
      3. Überprüfen Sie die Berechtigungen, die der KI-Wissensassistent Chat-App-Anfragen Klicken Sie auf Zulassen.
      4. Die Meldung You may close this page now. wird angezeigt. Schließen Sie das Browserfenster oder den Tab und kehren Sie zur Chatbereich.
  5. Fragen stellen:

    1. Geben Sie in der Leiste zum Verfassen von Nachrichten eine Frage wie What are Google Chat apps?

    2. Der KI-Wissensassistent in der Chat App antwortet.

    3. Optional: Wenn die Antwort nicht richtig oder nicht ausreichend ist, kann die KI Unterhaltungsverlauf verbessern, klicken Hilfe Der KI-Wissensassistent in der Chat App erwähnt ein Administrator des Gruppenbereichs und bittet ihn, die Frage zu beantworten. Beim nächsten Mal KI-Wissensassistent in der Chat-App die Antwort!

Überlegungen, alternative Architekturoptionen und nächste Schritte

In diesem Abschnitt werden weitere Möglichkeiten erläutert, wie der KI-Wissensassistent Eine Chat-App kann entwickelt werden.

Firestore, Cloud Storage oder das Aufrufen von List Messages in der Chat API

In dieser Anleitung wird empfohlen, Daten des Chatbereichs zu speichern, z. B. in einer Firestore-Datenbank zu senden, da die Leistung im Vergleich zu durch Aufrufen der Methode list für die Message mit der Chat API, sobald die Die Chat-App beantwortet eine Frage. Außerdem können Sie list messages kann wiederholt dazu führen, dass Chat-App, um API-Kontingentlimits zu erreichen.

Wenn jedoch der Unterhaltungsverlauf eines Chatbereichs kann die Nutzung von Firestore teuer werden.

<ph type="x-smartling-placeholder"></ph> Cloud Storage ist eine Alternative zu Firestore. Der KI-Wissensassistent Die Chat-App ist aktiv in erhält ihr eigenes Objekt und jedes Objekt ist eine Textdatei, die alle Nachrichten im Gruppenbereich enthält. Der Vorteil von Bei diesem Ansatz kann der vollständige Inhalt der Textdatei an Vertex und Gemini gleichzeitig nutzen. Der Nachteil ist jedoch, dass es mehr Arbeit erfordert, Sie können den Unterhaltungsverlauf aktualisieren, da Sie nicht an ein Objekt in Cloud anhängen können. Speicherplatz ersetzen. Dieser Ansatz ist nicht sinnvoll, wenn Sie regelmäßig Nachrichtenverlauf aktualisieren. Es wäre aber eine gute Wahl, wenn Sie eine Batch-Aktualisierung den Nachrichtenverlauf regelmäßig abrufen, z. B. einmal pro Woche.

Fehlerbehebung

Wenn eine Google Chat-App oder card gibt einen Fehler zurück. Der Parameter In der Chatoberfläche wird die Meldung „Ein Fehler ist aufgetreten“ angezeigt. oder „Ihre Anfrage kann nicht verarbeitet werden.“ Manchmal kann die Chat-UI Es wird zwar keine Fehlermeldung angezeigt, aber die Chat-App oder die Karte zu einem unerwarteten Ergebnis führt. z. B. wird eine Kartennachricht erscheinen.

Auch wenn in der Chat-Benutzeroberfläche möglicherweise keine Fehlermeldung angezeigt wird, beschreibende Fehlermeldungen und Protokolldaten stehen zur Fehlerbehebung zur Verfügung. wenn die Fehlerprotokollierung für Chat-Apps aktiviert ist. Hilfe bei der Anzeige: Debugging und Beheben von Fehlern finden Sie unter Google Chat-Fehler beheben

Bereinigen

Um zu vermeiden, dass Ihrem Google Cloud-Konto Gebühren für Ressourcen, die in dieser Anleitung verwendet werden, empfehlen wir, dass Sie den Cloud-Projekt

  1. Wechseln Sie in der Google Cloud Console zur Seite Ressourcen verwalten. Klicken Sie auf Menü &gt; IAM und Verwaltung &gt; Ressourcen verwalten.

    <ph type="x-smartling-placeholder"></ph> Zu Resource Manager

  2. Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie auf löschen.
  3. Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie zum Löschen auf Beenden. für das Projekt.