1. Hinweis
Entitäten sind ein Mechanismus in Dialogflow, mit dem nützliche Daten aus Eingaben in natürlicher Sprache identifiziert und extrahiert werden. Anhand von Intents kann der Agent die Beweggründe für eine bestimmte Nutzereingabe verstehen. Mithilfe von Entitäten ist er in der Lage, bestimmte Elemente aus diesen Informationen auszuwählen. Dabei kann es sich beispielsweise um Adressen, Produktnamen oder Beträge mit Einheiten handeln. Alle wichtigen Daten, die Sie aus der Anfrage eines Nutzers erfassen möchten, weisen eine entsprechende Entität auf.
In der folgenden Liste werden die drei Arten von Einheiten erläutert:
- Mit Systementitäten, die in Dialogflow enthalten sind, können Agents Informationen zu einer Vielzahl von Konzepten ohne zusätzliche Konfiguration abrufen. Systementitäten sind beispielsweise verfügbar, um Datumsangaben, Uhrzeiten und Orte aus Eingaben in natürlicher Sprache zu extrahieren.
- Mit Entwicklerentitäten, die Sie definieren, werden Informationen zu Konzepten extrahiert, die über die von Systementitäten abgedeckten Konzepte hinausgehen. Eine Marke könnte beispielsweise eine Entwicklerentität erstellen, um die spezifischen Produktnamen der Marke zu erkennen.
- Sitzungsentitäten, die Sie ebenfalls definieren, gelten nur für eine bestimmte Unterhaltung. Sie können beispielsweise eine Sitzungsentität erstellen, die die zeitabhängigen Optionen darstellt, die einem bestimmten Nutzer zur Verfügung stehen, der eine Buchung vornimmt.
Vorbereitung
Bevor Sie fortfahren, müssen Sie die folgenden Codelabs durcharbeiten:
Außerdem müssen Sie die grundlegenden Konzepte und Konstrukte von Dialogflow kennen. Diese können Sie den folgenden Videos im Lernpfad Chatbot mit Dialogflow erstellen entnehmen:
Lerninhalte
- Systementitäten in Dialogflow erstellen und verwenden
- Entwicklerentitäten in Dialogflow erstellen und verwenden
- Agent testen
Aufgaben
- Eine verbesserte Version eines bereits erstellten Dialogflow-Agents
- Entwicklerentitäten in Dialogflow
- Systementitäten in Dialogflow
Voraussetzungen
- Ein Webbrowser und eine E-Mail-Adresse für die Anmeldung in der Dialogflow-Konsole
2. Systementitäten in Dialogflow aktivieren und verwenden
- Rufen Sie die Dialogflow-Konsole auf.
- Wählen Sie den AppointmentScheduler-Agent aus, den Sie zuvor erstellt haben.
- Klicken Sie auf Intents.
- Klicken Sie auf Termine planen, um die Intenteinstellungen zu öffnen.
Sie sehen Trainingsformulierungen wie „Set an appointment for 4 PM tomorrow“ (Termin für morgen um 16:00 Uhr festlegen), wobei Date (Datum) und Time (Uhrzeit) automatisch als @sys.date und @sys.time extrahiert werden. Sie können weitere Trainingsformulierungen hinzufügen, um zu sehen, wie Dialogflow die Systementitäten automatisch extrahiert.
Wie Sie gesehen haben, können Agents mit Systementitäten Informationen zu einer Vielzahl von Konzepten ohne zusätzliche Konfiguration abrufen. Beispiele für System-Entities sind Adressen, E‑Mail-Adressen, Währungen und Telefonnummern. Weitere Informationen finden Sie unter Systementitäten.
3. Entwicklerentitäten in Dialogflow aktivieren und verwenden
Entwicklerentitäten erstellen
Bisher haben Sie Ihren Terminplaner allgemein angesprochen. Angenommen, Ihr Scheduler ist für das Straßenverkehrsamt eines Bundesstaats, das hauptsächlich Führerscheine und Zulassungsdienste anbietet. Erstellen Sie diese Entitäten.
- Klicken Sie auf Entitäten.
- Klicken Sie auf Create Entity.
- Geben Sie „AppointmentType“ als Entitätsname ein und fügen Sie dann „Fahrzeugregistrierung“ und „Führerschein“ als die beiden Referenzwerte mit einigen Synonymen hinzu, wie im folgenden Bild zu sehen ist. Klicken Sie auf Speichern.
Sie können weitere Zeilen mit zusätzlichen Diensten als Entitätstypen hinzufügen.
- Klicken Sie auf Speichern.
Intention bearbeiten, um die neu erstellte Entwickleridentität zu berücksichtigen
- Klicken Sie auf Intent.
- Geben Sie „Set an appointment for drivers license for 3 PM tomorrow“ (Stelle einen Termin für den Führerschein für morgen um 15:00 Uhr ein) in die Absicht „Termin planen“ ein.
Sie sehen die automatische Erkennung von Führerschein, um 15:00 Uhr und morgen als Entwickler- und Systementitäten.
- Geben Sie die folgenden Trainingsformulierungen ein:
- Termin zur Lizenzverlängerung am Montag
- Stelle einen Termin für Montag um 14 Uhr für die Lizenz ein
- Termin für die Kfz-Zulassung am Montag
- Sie müssen AppointmentType zu einem Pflichtfeld machen, ähnlich wie bei Uhrzeit und Datum. Rufen Sie dazu Aktionen und Parameter auf und setzen Sie ein Häkchen in der Zeile AppointmentType.
- Fügen Sie einen Prompt hinzu, z. B. „Welche Leistungen möchten Sie in Anspruch nehmen? Das DMV bietet Dienstleistungen für Führerscheine und Fahrzeugzulassungen an.“ Wenn der Nutzer keinen Terminart angibt, wird der Prompt verwendet.
- Klicken Sie auf Speichern.
4. Chatbot testen
Sie können Ihren Chatbot im Actions-Simulator testen oder die Web- oder Google Home-Integration verwenden, die Sie zuvor kennengelernt haben.
Testlauf 1
In diesem Fall bittet der Nutzer nur darum, einen Termin festzulegen, ohne die drei Informationen anzugeben. Dialogflow fragt daher mit den von Ihnen festgelegten Aufforderungen zum Ausfüllen von Slots nach Datum, Uhrzeit und Art des Termins.
- Nutzer: „Vereinbare einen Termin.“
- Chatbot: „Welches Datum?“
- Nutzer: „23. Mai.“
- Chatbot: „Um wie viel Uhr möchten Sie kommen?“
- Nutzer: „10 Uhr“
- Chatbot: „Welche Leistungen möchten Sie in Anspruch nehmen? Das DMV bietet Dienstleistungen für Führerscheine und Fahrzeugzulassungen an.“
- Nutzer: „Lizenz.“
- Chatbot: „Sie sind für Ihren Termin zur Fahrzeugregistrierung am 23.05.2019 um 10:00:00 Uhr bereit. Bis dann!“
Testlauf 2
In diesem Fall bittet der Nutzer um einen Termin mit unvollständigen Informationen. Dialogflow fragt daher mit den von Ihnen festgelegten Aufforderungen zum Ausfüllen von Slots nach Datum, Uhrzeit und Art des Termins.
- Nutzer: „Ich brauche einen Termin für morgen um 16:00 Uhr.“
- Chatbot: „Welche Leistungen möchten Sie in Anspruch nehmen? Das DMV bietet Dienstleistungen für Führerscheine und Fahrzeugzulassungen an.“
- Nutzer: „Lizenz.“
- Chatbot: „Sie sind für Ihren Termin für den Führerschein am 24.04.2019 um 16:00:00 Uhr angemeldet. Bis dann!“
Testlauf 3
In diesem Fall stellt der Nutzer alle Informationen zur Verfügung. Dialogflow verarbeitet die Informationen und gibt eine Antwort mit der Terminbestätigung aus.
- Nutzer: „Stell einen Termin für die Fahrzeugregistrierung auf morgen um 14:00 Uhr ein.“
- Chatbot: „Sie sind für Ihren Termin zur Fahrzeugregistrierung am 24.04.2019 um 14:00:00 Uhr bereit. Bis dann!“
5. Bereinigen
Wenn Sie vorhaben, weitere Dialogflow-Codelabs zu absolvieren, überspringen Sie diesen Abschnitt jetzt und kehren Sie später dazu zurück.
Dialogflow-Agent löschen
- Klicken Sie neben Ihrem vorhandenen Agent auf
.
- Scrollen Sie auf dem Tab Allgemein nach unten und klicken Sie auf Diesen Agent löschen.
- Geben Sie Löschen in das Dialogfeld ein und klicken Sie auf Löschen.
6. Glückwunsch
Sie haben einen Chatbot erstellt, der benutzerdefinierte Eingaben mit Entwicklerentitäten verarbeitet. Sie sind jetzt Chatbot-Entwickler!
Weitere Informationen
Weitere Informationen finden Sie in den folgenden Ressourcen:
- Auftragsausführung: Dialogflow in Google Kalender einbinden
- Codebeispiele auf der Seite Dialogflow GitHub