Auf dieser Seite wird erläutert, wie Sie mit Dialogflow eine Google Chat-App erstellen, die natürliche Sprache verstehen und mit dieser antworten kann. In dieser Anleitung wird Dialogflow CX verwendet, der direkt in Google Chat eingebunden ist und in der Entwicklervorschau verfügbar ist. Sie können auch mit Dialogflow ES eine Google Chat-App in Dialogflow ES erstellen. Folgen Sie dazu der Anleitung zu Dialogflow ES Google Chat.
Stellen Sie sich beispielsweise eine Chat-App vor, mit der Nutzer Autos mieten können. Eine nutzende Person könnte schreiben: „Ich möchte ein Auto mieten.“ Die Chat-App könnte eine Frage wie „Wo möchten Sie das Fahrzeug abholen?“ antworten. Dadurch wird eine menschenähnliche Unterhaltung mit dem Nutzer gestartet, in der die Chat-App bei der Buchung der Autovermietung sowohl menschliche Sprache versteht als auch mit einer entsprechenden Antwort antwortet.
Dies ist nur ein Beispiel. Dialogflow Chat-Anwendungen sind für alle Arten von Interaktionen nützlich. Wenn natürliche menschliche Sprache erforderlich ist, ist eine Dialogflow Chat-Anwendung erforderlich. Die vordefinierten Agents erleichtern Ihnen den Einstieg und zeigen, was Dialogflow leisten kann. Beispiele:
- Flüge buchen
- Arzttermine planen
- Lebensmittel bestellen
- Fragen zu einem Einzelhandelsproduktkatalog beantworten, z. B. ob Artikel in anderen Farben erhältlich sind,
-
Abbildung 2: Agent in Dialogflow CX testen, um zu prüfen, ob die Logik und die Konfiguration des Agents wie vorgesehen funktionieren Das Diagramm zeigt eine Reihe thematischer Seiten zu bestimmten Schritten in der Konversation, z. B. das Festlegen eines Abhol- und Rückgabeorts für ein Mietwagen, und konfiguriert die Logik, die die beiden Punkte miteinander verbindet. Das Gespräch wird in einem Simulator getestet. -
Abbildung 3: Chat-App konfigurieren, um Antworten mit dem Dialogflow CX-Agent auf der Chat API-Konfigurationsseite in der Google Cloud Console zu verarbeiten. -
Abbildung 4: Gespräch über die Buchung eines Mietwagens mit der Dialogflow Chat App in Google Chat.
Zielsetzungen
- die Umgebung einrichten
- Dialogflow CX-Agent erstellen und bereitstellen
- Chat-App mit dem Dialogflow CX-Agent erstellen und bereitstellen.
- Chat App testen
Voraussetzungen
- Ein Google Workspace-Konto mit Zugriff auf Google Chat.
- Ein Google Cloud-Projekt
- Die Abrechnung für Ihr Cloud-Projekt muss aktiviert sein. Weitere Informationen zur Überprüfung des Abrechnungsstatus Ihrer Projekte
Architektur
Das folgende Diagramm zeigt die Architektur einer mit Dialogflow erstellten Chat-App:
Im obigen Diagramm hat ein Nutzer, der mit einer Dialogflow Chat-App interagiert, die folgenden Informationen:
- Ein Nutzer sendet in Google Chat eine Nachricht an eine Chat-App, entweder in einer Direktnachricht oder in einem Chatbereich.
- Ein virtueller Dialogflow-Kundenservicemitarbeiter, der sich in Google Cloud befindet, empfängt und verarbeitet die Nachricht, um eine Antwort zu generieren.
- Optional kann der Dialogflow-Agent mithilfe eines Dialogflow-Webhooks mit externen Drittanbieterdiensten interagieren, z. B. mit einem Projektmanagementsystem oder einem Ticketing-Tool.
- Der Dialogflow-Agent sendet eine Antwort an den Chat-Anwendungsdienst in Chat zurück.
- 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.
Prüfen Sie, ob die APIs im richtigen Cloud-Projekt aktiviert sind. Klicken Sie dann auf Weiter.
Prüfen Sie, ob die richtigen APIs aktiviert sind, und klicken Sie dann auf Aktivieren.
Dialogflow CX-Agent erstellen
Ein Dialogflow CX-Agent ist ein virtueller Kundenservicemitarbeiter, der gleichzeitige Unterhaltungen mit Ihren Endnutzern abwickelt. Es ist ein Modul zum Verständnis natürlicher Sprache, das die Nuancen der menschlichen Sprache versteht. Dialogflow übersetzt Endnutzertext während einer Unterhaltung in strukturierte Daten, die Ihre Anwendungen und Dienste verstehen können. Sie entwerfen und erstellen einen Dialogflow-Agent, der die für Ihr System erforderlichen Konversationstypen verarbeitet.
Ein Dialogflow-Agent ist wie ein menschlicher Callcenter-Agent. Beide werden für den Umgang mit erwarteten Gesprächsszenarien trainiert und Ihr Training muss nicht zu explizit sein.
So erstellen Sie den Dialogflow CX-Agent:
Öffnen Sie in der Dialogflow CX-Konsole die Dialogflow CX-Konsole. Klicken Sie auf Menü > Dialogflow CX.
Wählen Sie ein Google Cloud-Projekt aus. Möglicherweise müssen Sie auf Alle klicken und dann nach Ihrem Projekt suchen, um Ihr Projekt zu finden.
Jetzt haben Sie die Möglichkeit, einen vordefinierten Agent auszuwählen oder einen eigenen zu erstellen. Wenn Sie sich die Agent-Anpassung später genauer ansehen möchten, wählen Sie einen der vordefinierten Agents aus. Diese sind auch hilfreich, um mehr über die Funktionen von Agents zu erfahren.
So wählen Sie einen vordefinierten Agent aus:
- Klicken Sie auf Use vordefinierten Agents (Vordefinierte Agents verwenden).
Wählen Sie einen vordefinierten Agent aus. Wählen Sie für diesen Leitfaden Reisen: Autovermietung aus.
Kundenservicemitarbeiter werden abhängig davon, wie viele Funktionen der Agent verwendet, und ihrer ausgefeilten Unterhaltungslogik als "Anfänger", "Fortgeschritten" oder "Fortgeschritten" eingestuft. Die Auswahl eines mittleren oder erweiterten Agents erfordert möglicherweise agent-spezifische Anpassungen und Einstellungen, einschließlich der Aktivierung von Features und APIs in der Google Cloud Console.
Klicken Sie auf Import as agent.
So erstellen Sie einen eigenen Agent:
- Klicken Sie auf Agent erstellen.
- Wählen Sie Automatisch generieren aus, um einen Datenspeicher-Agent zu erstellen, oder Eigenen erstellen, um andere Arten von Agents zu erstellen.
Eine ausführliche Schritt-für-Schritt-Anleitung zum Erstellen von Agents finden Sie unter Dialogflow CX-Agent 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 Standorteinstellungen ändern möchten, klicken Sie auf Bearbeiten.
- Wählen Sie Ihre bevorzugte Zeitzone aus.
- Wählen Sie die Standardsprache für Ihren Agent aus. Nach dem Erstellen kann die Standardsprache für einen Agent nicht mehr geändert werden.
Klicken Sie auf Erstellen. Dialogflow CX beginnt mit dem Erstellen des Agents und zeigt dann den Standardstartablauf des Agents an.
Passen Sie den Agent optional an. Eine detaillierte Schritt-für-Schritt-Anleitung zum Anpassen des Agents finden Sie unter Dialogflow CX-Agent erstellen.
Testen Sie den Agent als Best Practice:
- Klicken Sie auf Agent testen.
- Wählen Sie Test agent in Environment (Agent in Umgebung testen) aus.
- Wählen Sie unter „Umgebung“ die Option Entwurf aus.
- Wählen Sie unter „Ablauf“ die Option Standard-Startvorgang aus.
- Wählen Sie auf der Seite Startseite aus.
- Geben Sie in der Eingabeleiste Mit Agent sprechen
Hello
ein und drücken Sie die Eingabetaste. Der Kundenservicemitarbeiter stellt sich vor. - Absolvieren Sie den Test mithilfe des Beispiel-Testgesprächs.
Der Dialogflow CX-Agent wird erstellt. Kehren Sie zur Dialogflow CX-Konsole zurück. Klicken Sie auf Menü > Dialogflow CX.
Klicken Sie unter Agents auf > Name kopieren. Speichern Sie diesen Namen, da Sie ihn beim Konfigurieren der Chat-App verwenden.
Chat-App erstellen und mit dem Dialogflow-Agent verbinden
Nachdem Sie einen Dialogflow CX-Agent erstellt haben, wandeln Sie ihn mit den folgenden Schritten in eine Chat-App um:
Rufen Sie in der Google Cloud Console die Google Chat API auf. Suchen Sie nach „Google Chat API“, klicken Sie auf Google Chat API und dann auf Verwalten.
Klicken Sie auf Konfiguration und richten Sie die Chat-App ein:
- Geben Sie unter App-Name
Dialogflow App
ein. - Geben Sie im Feld Avatar-URL den String
https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png
ein. - Geben Sie unter Beschreibung den Text
Responds to real human conversation
ein. - Wählen Sie unter Funktionen die Option 1:1-Nachrichten erhalten und Gruppenbereichen und Gruppenunterhaltungen beitreten aus.
- Wählen Sie unter Verbindungseinstellungen die Option Dialogflow aus.
- Wählen Sie unter Dialogflow-Einstellungen die Option Dialogflow CX aus.
- Fügen Sie unter Name der Agent- oder Umgebungsressource den Namen des Dialogflow CX-Agents ein, den Sie am Ende von Dialogflow CX-Agent erstellen kopiert haben.
- Machen Sie diese Chat-App bestimmten Personen und Gruppen in Ihrer Domain verfügbar und geben Sie Ihre E-Mail-Adresse ein.
- Wählen Sie unter Logs die Option Fehler in Logging protokollieren aus.
- Geben Sie unter App-Name
Klicken Sie auf Speichern.
Die Chat-App ist bereit, Nachrichten in Google Chat zu empfangen und zu beantworten.
Chat App testen
Testen Sie die Dialogflow CX Chat-Anwendung, indem Sie sie in Google Chat Nachrichten senden.
Öffnen Sie Google Chat mit dem Google Workspace-Konto, das Sie bei der Registrierung als Trusted Tester angegeben haben.
- Klicken Sie auf Neuer Chat.
- Geben Sie im Feld Eine oder mehrere Personen hinzufügen den Namen Ihrer Chat-App ein.
Wählen Sie Ihre Chat-App aus den Ergebnissen aus. Eine Direktnachricht wird geöffnet.
Geben Sie in der neuen Direktnachricht an die App
Hello
ein und drücken Sieenter
.Die Dialogflow Chat-App antwortet, indem sie sich selbst vorstellt.
- Schließen Sie den Test mithilfe des Beispiel-Testgesprächs ab.
Beispiel für eine Testunterhaltung
Führen Sie die folgende Unterhaltung aus, um die Dialogflow CX Chat-App in der Dialogflow CX-Konsole oder in Google Chat zu testen. Diese Erklärung hilft Ihnen zu verstehen, wie der Dialogflow CX-Agent die natürliche Sprache des Nutzers interpretiert und bei jedem Schritt der Unterhaltung eine eigene Antwort in natürlicher Sprache gibt. Diese Beispielunterhaltung basiert auf dem vordefinierten Agent Travel: car Rental.
Dialog | Erklärung |
---|---|
Endnutzer:Hallo, Agent: Hallo! Ich bin die virtuelle Autovermietung. Ich kann Ihnen dabei helfen, eine neue Autovermietung zu erstellen. Wie kann ich Ihnen helfen? |
|
Endnutzer:Ich möchte ein Auto mieten. Kundenservicemitarbeiter:Wo möchten Sie das Fahrzeug abholen? |
|
Endnutzer:Berlin Kundenservicemitarbeiter:Okay, Ihre Abholung erfolgt in Berlin. Agent: Unterscheidet sich der Rückgabeort von Ihrem Abholort? |
|
Endnutzer:Ja. Ich stelle das Auto in Los Angeles ab. Agent: Okay, Sie geben in Los Angeles ab. Kundenservicemitarbeiter:An welchem Datum und zu welcher Uhrzeit möchten Sie das Fahrzeug abholen? |
|
Endnutzer: Ich möchte das Auto am 5. März um 12:00 Uhr abholen. Kundenservicemitarbeiter:An welchem Datum und zu welcher Uhrzeit möchten Sie das Fahrzeug abgeben? |
|
Endnutzer: 15. März um 12:00 Uhr Agent: Zur Bestätigung: Sie holen das Fahrzeug in Las Vegas ab 2024-03-05 12:00:00 und geben es in Los Angeles 2024-03-15 12:00:00 Klingt das richtig? |
|
Endnutzer:Ja, danke. Agent: Prima! Jetzt wählen wir ein Fahrzeug aus. Agent: Möchten Sie ein Economy- oder ein Luxusfahrzeug? |
|
Endnutzer:Wirtschaft, bitte. Agent: Möchten Sie das Cymbal Car oder den Cymbal Truck? |
|
Endnutzer:Cymbal Truck. Agent: Der Cymbal Truck kostet 50,33 $pro Tag. Es bietet Platz für bis zu 4 Personen und ist mit einem AM/FM-Radio ausgestattet. Möchten Sie mit der Zahlung fortfahren? Endnutzer:Ja, bitte. |
|
Agent: Welchen Kartentyp werden Sie verwenden? Endnutzer: Altostrat Agent: Geben Sie die Kartennummer ein. Endnutzer:1234 1234 1234 1234 Agent: Wie lautet der Name auf der Karte? Endnutzer:Charlie Agent: Wie lautet die Rechnungsadresse? Endnutzer:1800 Amphibious Blvd. Mountain View, CA Agent: Wie lautet die Postleitzahl der Abrechnungsadresse? Endnutzer:94045 Agent: Sie holen den Cymbal Car in Las Vegas am 05.03.2024 um 12:00:00 Uhr ab und geben ihn am 15.03.2024 um 12:00:00 Uhr ab. Der Gesamtbetrag für diese Fahrt beträgt 175,38 $. Agent: Vielen Dank, dass Sie bei uns gemietet haben. Ich wünsche Ihnen einen schönen Tag. |
|
Kartennachrichten aus Dialogflow senden
Dialogflow kann mit Textnachrichten oder Kartennachrichten antworten. Wenn Sie mit einer Kartennachricht antworten möchten, geben Sie diese in der Auftragsausführung als benutzerdefinierte Nutzlast an.
Die folgende JSON-Datei zeigt, wie eine Kartennachricht als benutzerdefinierte Nutzlast in der Auftragsausführung gesendet wird:
json
{
'cardsV2': [{
'cardId': 'createCardMessage',
'card': {
'header': {
'title': 'A card message!',
'subtitle': 'Sent from Dialogflow',
'imageUrl': 'https://developers.google.com/chat/images/chat-product-icon.png',
'imageType': 'CIRCLE'
},
'sections': [
{
'widgets': [
{
'buttonList': {
'buttons': [
{
'text': 'Read the docs!',
'onClick': {
'openLink': {
'url': 'https://developers.google.com/workspace/chat'
}
}
}
]
}
}
]
}
]
}
}]
}
Limits und Überlegungen
- Für Chat-Interaktionsereignisse wird nur eingeschränkt unterstützt. Hier sind einige Punkte zu beachten:
- Die folgenden Interaktionsereignistypen werden unterstützt:
MESSAGE
ADDED_TO_SPACE
- Die an den Dialogflow-Agent gesendete Abfrageeingabe entspricht dem Wert des Felds
argumentText
in der Chatnachricht. Wenn die Nachricht einen Slash-Befehl enthält, wird stattdessen der Wert des Feldstext
verwendet. - Die vollständige JSON-Nutzlast jedes Chat-Interaktionsereignisses wird als benutzerdefinierte Nutzlast im Abfrageparameter an Dialogflow gesendet. Auf sie kann mit einem Dialogflow-Webhook zugegriffen werden. Dazu muss der Wert des Felds
WebhookRequest.payload
abgefragt werden.
- Die folgenden Interaktionsereignistypen werden unterstützt:
- Slash-Befehle werden nur eingeschränkt unterstützt:
- Slash-Befehle, mit denen Dialogfelder geöffnet werden, werden von Dialogflow Chat-Anwendungen nicht unterstützt.
- Wenn Dialogflow Chat-Apps eine Nachricht mit einem Slash-Befehl erhalten, enthält die Abfrageeingabe nur den Wert des Felds
text
. Das Feldtext
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. - Wenn der Dialogflow-Agent die JSON-Nutzlast des Chat-Interaktionsereignisses des Slash-Befehls verarbeiten muss, kann die benutzerdefinierte Nutzlast im Abfrageparameter mit einem Dialogflow-Webhook geprüft werden.
- Linkvorschauen werden nicht unterstützt.
- Wenn der Dialogflow-Agent nur mit einer Nachricht antwortet, wird die Nachricht synchron an Google Chat gesendet. Wenn der Dialogflow-Agent mit mehreren Nachrichten antwortet, werden alle Nachrichten asynchron an Chat gesendet. Dazu wird für jede Nachricht einmalig die Methode
create
für die Ressourcespaces.messages
in der Chat API aufgerufen.
Fehlerbehebung
Wenn eine Google Chat-App oder Google Chat-Karte einen Fehler zurückgibt, wird in der Chat-Oberfläche die Meldung „Ein Fehler ist aufgetreten“ oder „Ihre Anfrage kann nicht verarbeitet werden“ angezeigt. Manchmal wird in der Chat-Benutzeroberfläche keine Fehlermeldung angezeigt, aber die Chat-App oder -Karte führt zu einem unerwarteten Ergebnis, z. B. dass keine Kartennachricht angezeigt wird.
Obwohl eine Fehlermeldung möglicherweise nicht in der Chat-Benutzeroberfläche angezeigt wird, sind beschreibende Fehlermeldungen und Protokolldaten verfügbar, mit denen Sie Fehler beheben können, wenn die Fehlerprotokollierung für Chat-Apps aktiviert ist. Informationen zum Aufrufen, Debuggen und Beheben von Fehlern finden Sie im Hilfeartikel Google Chat-Fehler beheben.
Bereinigen
Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, sollten Sie das Cloud-Projekt löschen.
- Wechseln Sie in der Google Cloud Console zur Seite Ressourcen verwalten. Klicken Sie auf Menü > IAM und Verwaltung > Ressourcen verwalten.
- Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen .
- Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Beenden, um das Projekt zu löschen.
Weitere Informationen
- Dialogflow CX verfolgt einen Zustandsautomaten beim Design des Dialogflow-Agents, der Ihnen eine klare und explizite Kontrolle über eine Unterhaltung bietet, die Nutzung für die Endnutzer verbessert und einen besseren Entwicklungs-Workflow bietet. Zum Erstellen einer Dialogflow Chat-Anwendung empfehlen wir Dialogflow CX.
- Weitere Informationen zum Erstellen und Konfigurieren von Agents finden Sie unter Dialogflow CX-Agents.
- Eine detaillierte Anleitung zum Erstellen und Konfigurieren von Agents finden Sie unter Dialogflow CX-Agent erstellen.
- Dialogflow ES ist eine weitere Möglichkeit, Dialogflow mit einer Chat-App zu verwenden.