Dialogflow CX Google Chat-App erstellen, die natürliche Sprache versteht und antwortet
Auf dieser Seite erfahren Sie, wie Sie eine Google Chat-App erstellen, mit der Sie
und antworten mit natürlicher Sprache,
Dialogflow. In diesem Leitfaden werden
Dialogflow CX, die mit
eine direkte Integration in Google Chat. Sie können auch
Dialogflow ES zum Erstellen eines
Dialogflow ES Google Chat-Anwendung, indem Sie dieser Anleitung folgen
die
Dialogflow ES – Google Chat
.
Stellen Sie sich z. B. eine Chat-App vor, mit der sich Mieter
Autos. Ein Nutzer schreibt vielleicht: „Ich möchte ein Auto mieten“. Die
Die Chat-App antwortet möglicherweise mit einer Frage wie
„Wo möchten Sie das Fahrzeug abholen?“ das eine menschenähnliche
mit dem Nutzer, in dem die Chat-App
versteht und reagiert beim Buchen der Autovermietung mit menschlicher Sprache.
Dies ist nur ein Beispiel. Dialogflow Chat-Apps sind in allen Bereichen nützlich,
Arten von Interaktionen. Wenn eine natürliche menschliche Sprache erforderlich ist,
Dialogflow Chat-App Die
vordefinierte Agents
helfen Ihnen den schnellen Einstieg und zeigen Ihnen, was Dialogflow alles kann, zum Beispiel:
Flüge buchen
Arzttermine planen
Lebensmittel bestellen
Fragen zu einem Einzelhandelskatalog beantworten, z. B. ob Artikel
sind in anderen Farben verfügbar.
<ph type="x-smartling-placeholder"></ph>
Abbildung 1: Vordefinierten Agent für eine Dialogflow Chat-Anwendung auswählen
Abbildung 2: Testen Sie den Agent in Dialogflow CX, um sicherzustellen, dass die Logik und die Konfiguration des Agents wie vorgesehen funktionieren. Das Diagramm zeigt eine Reihe von Themenseiten, die bestimmte Schritte der Unterhaltung betreffen, z. B. das Festlegen eines Abhol- und Rückgabeorts für einen Mietwagen und die Konfiguration der Logik für die Verknüpfung. Die Unterhaltung wird in einem Simulator getestet.
Abbildung 3: Chat-App auf der Konfigurationsseite der Chat API in der Google Cloud Console konfigurieren, um Antworten mit dem Dialogflow CX-Agent zu verarbeiten
Abbildung 4: Ein Gespräch über die Buchung eines Mietwagens mit der Dialogflow Chat App in Google Chat
Das folgende Diagramm zeigt die Architektur eines
Mit Dialogflow erstellte Chat-App:
Im obigen Diagramm interagiert ein Nutzer mit einem Dialogflow-Konto
Die Chat-App umfasst den folgenden Informationsfluss:
Ein Nutzer sendet in Google Chat eine Nachricht an einen
Chat-App, entweder in einer Direktnachricht oder in einer
Chatbereich.
Ein virtueller Dialogflow-Kundenservicemitarbeiter in Google Cloud empfängt
und verarbeitet die Nachricht,
um eine Antwort zu generieren.
Optional können Sie mit einem
Dialogflow-Webhook
kann der Dialogflow-Agent mit externen Diensten von Drittanbietern interagieren, z. B.
Projektmanagementsystem
oder Ticketing-Tool ist.
Der Dialogflow-Agent sendet eine Antwort an den
Chat-App-Dienst in Google Chat.
Die Antwort wird an den Chatbereich gesendet.
Umgebung einrichten
Bevor Sie Google APIs verwenden können, müssen Sie sie in einem Google Cloud-Projekt aktivieren.
Sie können eine oder mehrere APIs in einem einzelnen Google Cloud-Projekt aktivieren.
Aktivieren Sie in der Google Cloud Console die Google Chat API und die Dialogflow API.
Aktivieren Sie die APIs in den richtigen
Cloud-Projekt und klicken Sie dann auf Weiter.
Aktivieren Sie die richtigen APIs und klicken Sie dann auf Aktivieren.
Dialogflow CX-Agent erstellen
A
Dialogflow CX-Agent
ist ein virtueller Kundenservicemitarbeiter, der gleichzeitige Unterhaltungen übernimmt
mit Ihren Endnutzern. Es ist ein Modul zum Verständnis natürlicher Sprache,
die Nuancen der menschlichen Sprache versteht. Dialogflow übersetzt den Text des Endnutzers
mit strukturierten Daten, die Ihre Apps und Dienste
verstehen können. Sie entwerfen und erstellen einen Dialogflow-Agent, der die Arten von
Konversationen, die für Ihr System erforderlich sind.
Ein Dialogflow-Agent ist wie ein menschlicher Callcenter-Agent. Ihr schult beide
erwartete Gesprächsszenarien durchspielen können.
zu explizit sind.
So erstellen Sie den Dialogflow CX-Agent:
Öffnen Sie in der Dialogflow CX-Konsole die Dialogflow CX-Konsole. Klicken Sie auf
Menümenu>Dialogflow CX.
Wählen Sie ein Google Cloud-Projekt aus. Um Ihr Projekt zu finden, müssen Sie möglicherweise
klicken Sie auf Alle und suchen Sie dann danach.
Jetzt können Sie einen vordefinierten Agent oder
und erstellen Sie Ihre eigenen. Wenn Sie den Kundenservicemitarbeiter
später im Detail beschreiben möchten, wählen Sie eine der
vordefinierte Agents
die auch hilfreich sind, um zu erfahren,
was Kundenservicemitarbeiter tun können.
So wählen Sie einen vordefinierten Agent aus:
Klicken Sie auf Use vorkonfigurierte Agents (Vordefinierte Agents verwenden).
Wählen Sie einen vordefinierten Agent aus. Wählen Sie für diesen Leitfaden
Reisen: Autovermietung
Agents werden als "Anfänger" eingestuft,
fortgeschritten oder fortgeschritten, je nachdem, wie viele Funktionen der Agent verwendet
und der Ausgereiftheit der Gesprächslogik. Auswählen eines
Agent für fortgeschrittene Nutzer oder fortgeschrittener Agent ist möglicherweise agent-spezifisch
Anpassungen und Einstellungen vornehmen, einschließlich der Aktivierung von Funktionen und APIs in
Google Cloud Console
Klicken Sie auf Import as agent (Als Agent importieren).
So erstellen Sie einen eigenen Agent:
Klicken Sie auf Agent erstellen.
Wählen Sie Automatisch generieren aus, um
Datenspeicher-Agent
Sie können auch Build your own (Eigene erstellen) auswählen, um andere Arten von Agents zu erstellen.
Konfigurieren Sie die grundlegenden Agent-Einstellungen:
Geben Sie unter Anzeigename einen Anzeigenamen ein.
Wählen Sie den bevorzugten Standort aus.
Wenn Sie die erweiterten Einstellungen
Standorteinstellungen
Klicken Sie auf Bearbeiten.
Wählen Sie Ihre bevorzugte Zeitzone aus.
Wählen Sie die Standardsprache für Ihren Agent aus.
Sie können die Standardsprache für einen Agent nach dem Erstellen nicht mehr ändern.
Klicken Sie auf Erstellen. Dialogflow CX beginnt mit dem Erstellen des Agents und dann
zeigt den standardmäßigen Startablauf des Agents an.
Passen Sie den Agent bei Bedarf an. Für eine detaillierte Schritt-für-Schritt-Anleitung für den Agent
finden Sie unter
Dialogflow CX-Agent erstellen
Testen Sie den Agent als Best Practice:
Klicken Sie auf Test agent (Agent testen).
Wählen Sie Test agent inenvironment (Agent in Umgebung testen) aus.
Wählen Sie unter „Umgebung“ die Option Entwurf aus.
Wählen Sie unter Ablauf die Option Standardstartablauf aus.
Wählen Sie auf der Seite die Option Startseite aus.
Geben Sie in der Eingabezeile Mit Kundenservicemitarbeiter sprechen den Text Hello ein und drücken Sie die Eingabetaste.
Der Agent antwortet, indem er sich vorstellt.
Klicken Sie unter Agents auf more_vert.
>Namen kopieren. Diesen Namen speichern unter
die Sie bei der Konfiguration der Chat App verwenden.
Chat-App erstellen und mit dem Dialogflow-Agent verbinden
Nachdem Sie einen Dialogflow CX-Agent erstellt haben, können Sie ihn mit den folgenden Schritten in einen
Chat-App:
Rufen Sie in der Google Cloud Console die Google Chat API auf. Suchen Sie nach „Google Chat API“. und
Klicken Sie auf Google Chat API und dann auf Verwalten.
Testen Sie die Chat-App Dialogflow CX entweder in der
Dialogflow CX-Konsole oder in Google Chat:
Die Erläuterung hilft Ihnen zu verstehen, wie der Dialogflow CX-Agent die
Sprache des Nutzers und erzeugt eine eigene Antwort in natürlicher Sprache,
Schritt im Gespräch erklären können. Diese Beispielunterhaltung basiert auf dem
vordefinierter AgentReisen: Autovermietung.
Dialog
Erklärung
Endnutzer:Hallo Agent: Hallo! Ich bin die virtuelle Autovermietung. Ich kann
Ihnen helfen, eine neue Autovermietung zu reservieren. Wie kann ich helfen?
Sie heute?
Die Route Standard-Begrüßungs-Intent im Standardstartablauf wird aufgerufen.
Die Auftragsausführung für diesen Status-Handler („Hi! Ich bin...“
wird der Antwortwarteschlange hinzugefügt.
Der Agent sendet die Antwortwarteschlange an den Endnutzer.
Endnutzer:Ich möchte ein Auto mieten. Agent: Wo möchten Sie das Fahrzeug abholen?
Intent-Route car_rental.reservation_create
auf der Startseite übereinstimmt.
Die Sitzung wird zur Seite Abholort weitergeleitet.
Das Formular auf der Seite Abholort ist nicht vollständig.
Der Agent verwendet den Parameter pickup_location, um den Nutzer aufzufordern.
(„Wo möchten Sie die Bestellung abholen...“)
das der Antwortwarteschlange hinzugefügt wird.
Der Agent sendet die Antwortwarteschlange an den Endnutzer.
Endnutzer:Las Vegas Agent: Ok, die Abholung findet in Las Vegas statt. Agent: Unterscheidet sich der Abgabeort von dem
Abholort?
Die Eingabe des Endnutzers füllt den Bereich pickup_location aus.
Parameter, der vom Agent im vorherigen
Gesprächsrunde.
Intent car_rental.return_different_location
im Standardstartablauf übereinstimmt.
Route für das Ausfüllen des Formulars auf der Seite Abholort
ausgewertet und aufgerufen wird.
Sie enthält eine Auftragsausführung („Ok, deine Abholung...“), die hinzugefügt wird
der Antwortwarteschlange hinzugefügt, wobei ihre Parameterverweise in
tatsächliche Werte, die vom Endnutzer bereitgestellt werden.
Die Sitzung wird zur Seite Standort bestätigen weitergeleitet.
Auf der Seite Standort bestätigen wird ein Eintrag ausgeführt.
(„Ist der Abgabeort anders...“)
das der Antwortwarteschlange hinzugefügt wird.
Der Agent sendet die Antwortwarteschlange an den Endnutzer.
Endnutzer:Ja. Ich gebe das Auto in Los Angeles ab. Agent: Ok, die Rückgabe erfolgt in Los Angeles. Agent: An welchem Datum und zu welcher Uhrzeit möchten Sie das Fahrzeug abholen?
Intent car_rental.return_different_location
im Standardstartablauf übereinstimmt.
Die Sitzung wird zur Seite Abbruchort weitergeleitet.
Die Endnutzereingabe füllt den Parameter drop_off_location aus.
Parameter, der vom Agent im vorherigen
Gesprächsrunde.
Route zum Ausfüllen des Formulars auf der Seite Abgabeort
ausgewertet und aufgerufen wird.
Sie enthält eine Ausführung („Ok, ich möchte, dass...“), die hinzugefügt wird
in die Antwortwarteschlange ein.
Die Sitzung wird zur Seite Leihdauer weitergeleitet.
Die Seite Leihdauer enthält unvollständige Formularwerte.
fordert den Nutzer zur Eingabe des Parameters pickup_date_time auf.
(„An welchem Datum und zu welcher Uhrzeit möchten Sie abholen...“)
das der Antwortwarteschlange hinzugefügt wird.
Der Agent sendet die Antwortwarteschlange an den Endnutzer.
Endnutzer: Ich möchte das Auto am 5. März um 12:00 Uhr abholen. Agent: An welchem Datum und zu welcher Uhrzeit möchten Sie das Fahrzeug abgeben?
Die Endnutzereingabe füllt pickup_date_time aus.
Parameter, der vom Agent im vorherigen
Gesprächsrunde.
Auf der Seite Leihdauer fehlt ein weiterer Formularwert:
Daher wird der Nutzer aufgefordert, den Parameter drop_off_date_time anzugeben.
(„An welchem Datum und zu welcher Uhrzeit möchten Sie aussteigen...“)
das der Antwortwarteschlange hinzugefügt wird.
Der Agent sendet die Antwortwarteschlange an den Endnutzer.
Endnutzer: 15. März, 12:00 Uhr. Agent: Zur Bestätigung:
Sie holen das Fahrzeug ab in
Berlin
2024-03-05 12:00:00 und geben sie
in Los Angeles
15.03.2024 12:00:00
Klingt das richtig?
Die Endnutzereingabe füllt drop_off_date_time aus.
Parameter, der vom Agent im vorherigen
Gesprächsrunde.
Die Sitzung wird zur Seite Verleihdauer bestätigen weitergeleitet.
Auf der Seite Verleihdauer bestätigen ist ein Eintrag abgeschlossen.
(„Zur Bestätigung...“),
das der Antwortwarteschlange hinzugefügt wird.
Der Agent sendet die Antwortwarteschlange an den Endnutzer.
Endnutzer:Ja, vielen Dank. Agent: Sehr gut. Wählen wir nun ein Fahrzeug aus. Agent: Möchten Sie eine Economy- oder eine Luxusklasse?
Fahrzeug?
Intent small_talk.confirmation.yes
auf der Seite Verleihdauer bestätigen eine Übereinstimmung gefunden wird.
Der Agent bestätigt die Auswahl des Nutzers mit einer Nachricht
(„Sehr gut! Jetzt wählen wir...
das der Antwortwarteschlange hinzugefügt wird.
Die Sitzung wird zur Seite Fahrzeugauswahl weitergeleitet.
Das Formular auf der Seite Fahrzeugauswahl ist nicht vollständig ausgefüllt.
Der Agent verwendet den Parameter vehicle_type, um den Nutzer aufzufordern,
(„Würden Sie eine Economy- oder Luxusklasse bevorzugen?“),
das der Antwortwarteschlange hinzugefügt wird.
Der Agent sendet die Antwortwarteschlange an den Endnutzer.
Endnutzer:Die Wirtschaft. Agent: Möchten Sie das Cymbal-Auto oder den Cymbal-Truck?
Intent $session.params.vehicle_type="economy_vehicle"
mit denen die richtige Route übereinstimmt.
Die Sitzung wird zur Seite Economy-Optionen weitergeleitet.
Auf der Seite Economy Options (Ökonomieoptionen) ist ein Eintrag verfügbar.
(„Möchtest du...?“),
das der Antwortwarteschlange hinzugefügt wird.
Der Agent sendet die Antwortwarteschlange an den Endnutzer.
Endnutzer:Cymbal Truck. Agent: Der Cymbal Truck kostet 50,33 $pro Tag.
Es bietet Platz für bis zu vier Personen und ist mit AM/FM-Radio ausgestattet.
Möchten Sie mit der Zahlung fortfahren? Endnutzer:Ja, bitte.
Intent $session.params.vehicle_type="Cymbal Truck"
wird die Route abgeglichen und der Parameter vehicle_model ausgefüllt.
Die Sitzung wird zur Seite Cymbal Truck bestätigen weitergeleitet.
Die Seite Confirm Cymbal Truck (Cymbal Truck bestätigen) enthält einen Eintrag als „Fulfillment“ (Fulfillment)
("Der Cymbal Truck kostet 50,33 $pro Tag..."),
das der Antwortwarteschlange hinzugefügt wird.
Der Agent sendet die Antwortwarteschlange an den Endnutzer.
Die Antwort des Nutzers stimmt mit small_talk.confirmation.yes überein.
Route.
Agent: Welchen Kartentyp werden Sie verwenden? Endnutzer:Altostrat Agent: Geben Sie die Kartennummer ein. Endnutzer:1234 1234 1234 1234 Kundenservicemitarbeiter:Wie lautet der Name auf der Karte? Endnutzer:Charlie Agent: Wie lautet die Rechnungsadresse? Endnutzer:1800 Amphibious Blvd. Mountain View, Kalifornien Agent: Wie lautet die Postleitzahl für die Abrechnung? Endnutzer:94045 Agent: Sie wählen das Cymbal-Auto aus.
in Las Vegas am 05.03.2024 um 12:00:00 Uhr
15.03.2024 12:00:00. Die Summe für diese Reise beträgt
175,38 $. Kundenservicemitarbeiter: Vielen Dank, dass Sie sich für Google entschieden haben. Ich wünsche Ihnen noch einen schönen Tag!
Die Sitzung wird zur Seite Zahlung weitergeleitet.
Der Kundenservicemitarbeiter fordert von Ihnen auf, das Zahlungsformular nicht ausgefüllt zu haben.
Nutzer für card_type, card_numberbilling_name, billing_street_address
und billing_zip_code
(„Welcher Kartentyp...“)
die sequenziell zur Antwortwarteschlange hinzugefügt und als
wenn der Nutzer antwortet. Die einzelnen Parameterwerte werden durch die Antworten des Nutzers festgelegt.
Die Sitzung wird zur Seite Verleihbestätigung weitergeleitet.
Auf der Seite Ausleihbestätigung ist ein Eintrag für die Auftragserfüllung zu sehen.
("Ok, deine Abholung wird..."),
das der Antwortwarteschlange hinzugefügt wird.
Der Agent sendet die Antwortwarteschlange an den Endnutzer.
Die Sitzung wird zur Seite Sitzung beenden weitergeleitet.
Für MESSAGE- oder ADDED_TO_SPACE-Ereignisse wird die Abfrageeingabe an den
Dialogflow-Agent entspricht dem Wert des Felds argumentText in
in der Chat-Nachricht. Enthält die Nachricht ein
Slash-Befehl, der Wert des
Stattdessen wird das Feld text verwendet.
Bei CARD_CLICKED-Ereignissen die Abfrageeingabe, die an den Dialogflow-Agent gesendet wurde
ist als CARD_CLICKED.functionName formatiert, wobei functionName
entspricht dem Wert des Felds function des
Objekt Action
an das interaktive Kartenelement (z. B. eine Schaltfläche) angehängt ist.
Die vollständige JSON-Nutzlast jedes Chat-Interaktionsereignisses
als benutzerdefinierte Nutzlast im Abfrageparameter an Dialogflow gesendet.
kann mit einem
Dialogflow-Webhook
durch Abfragen des Werts des Felds WebhookRequest.payload
Wenn Dialogflow Chat-Apps eine Nachricht mit einem Schrägstrich erhalten
Befehl enthält, enthält die Abfrageeingabe nur den Wert des Felds text.
Das Feld text beginnt mit dem Namen des Slash-Befehls (z. B.
/command), mit dem Sie den Intent eines Dialogflow-Agents konfigurieren können
um einen Slash-Befehl zu erkennen.
Ein Dialogfeld wird über das
Dialogflow-Agent, antworten Sie mit einer einzelnen benutzerdefinierten JSON-Nutzlast,
eine Nachricht enthält, die DIALOG enthält.
Aktionsantwort.
Zur Verarbeitung von Daten, die von Karten eingegeben wurden, kann der Dialogflow-Agent erkennen,
Intents, die mit dem Text CARD_CLICKED beginnen und mit einem
benutzerdefinierte JSON-Nutzlast mit den entsprechenden
action (Aktion).
Wenn der Dialogflow-Agent nur eine Nachricht antwortet, wird die Nachricht
synchron an Google Chat gesendet. Wenn der Dialogflow-Agent antwortet
mit mehreren Nachrichten gesendet,
werden alle Nachrichten an Google Chat gesendet,
asynchron durch Aufrufen der Methode
create
für die Ressource spaces.messages in der Chat API jeweils einmal pro
angezeigt.
Wenn Sie Dialogflow CX in Google Chat einbinden,
Der Dialogflow-Agent und die Chat-App müssen festgelegt sein.
im selben Google Cloud-Projekt. Wenn Sie Dialogflow einrichten müssen
und Google Chat in verschiedenen
Cloud-Projekten verwenden, können Sie
einen zwischengeschalteten Server für die Verbindung einrichten. Hier erfahren Sie, wie
Siehe
Beispiel für die Chatintegration in Dialogflow CX
auf GitHub.
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
Wechseln Sie in der Google Cloud Console zur Seite Ressourcen verwalten. Klicken Sie auf
Menümenu>IAM und Verwaltung>Ressourcen verwalten.
Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie auf
deletelöschen.
Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie zum Löschen auf Beenden.
für das Projekt.
Weitere Informationen
Dialogflow CX verwendet eine
Zustandsautomat
für das Design des Dialogflow-Agents, mit dem Sie
mehr Kontrolle über eine Unterhaltung, eine bessere User Experience und ein besseres
des Entwicklungs-Workflows. Beim Erstellen eines Dialogflow
Chat-App empfehlen wir die Verwendung von Dialogflow CX.
Weitere Informationen zum Erstellen und Konfigurieren von Agents finden Sie unter
Dialogflow CX-Agents
codeCodelab: Beispiel für das Erstellen von Dialogflow CX-Daten
Store-Kundenservicemitarbeiter finden Sie in der Wissens-Chat-App
das Codelab
Mit Gemini Apps für Google Chat entwickeln.
codeCodelab: Beispiel zum Erstellen eines Dialogflow CX
Chat-Kundenservicemitarbeiter, siehe Feedback-Chat-App
aus dem Codelab
Mit Gemini Apps für Google Chat entwickeln.
Dialogflow ES
ist eine weitere Möglichkeit,
Dialogflow mit einer Chat-App zu verwenden.