Bei einigen Entitäten müssen Muster anstelle von bestimmten Begriffen zugeordnet werden. Dies ist zum Beispiel bei nationalen Identifikationsnummern, IDs, Kfz-Kennzeichen usw. der Fall. Mit RegExp-Entitäten können Sie reguläre Ausdrücke für den Abgleich bereitstellen.
Komplexe reguläre Ausdrücke
Jede RegExp-Entität entspricht einem einfachen Muster. Sie können jedoch mehrere reguläre Ausdrücke angeben, wenn diese alle Variationen eines einfachen Musters darstellen.
Während des Agenttrainings werden alle regulären Ausdrücke einer einzigen Entität mit dem Alternationsoperator (|
) kombiniert, um einen komplexen regulären Ausdruck zu erstellen.
Angenommen, Sie geben die folgenden regulären Ausdrücke für eine Telefonnummer an:
^[2-9]\d{2}-\d{3}-\d{4}$
^(1?(-?\d{3})-?)?(\d{3})(-?\d{4})$
Der komplexe reguläre Ausdruck wird zu:
^[2-9]\d{2}-\d{3}-\d{4}$|^(1?(-?\d{3})-?)?(\d{3})(-?\d{4})$
Die Reihenfolge der regulären Ausdrücke ist wichtig. Alle regulären Ausdrücke im komplexen regulären Ausdruck werden nacheinander verarbeitet. Die Suche wird beendet, sobald eine gültige Zuordnung gefunden wird. So gilt beispielsweise für den Endnutzerausdruck "Seattle" Folgendes:
Sea|Seattle
stimmt mit "Sea" überein.Seattle|Sea
stimmt mit "Seattle" überein.
Besondere Verarbeitungsvorgänge bei der Spracherkennung
Wenn der Agent die Spracherkennung (auch als Audioeingabe, Sprache-in-Text oder STT bezeichnet) verwendet, müssen die regulären Ausdrücke bei der Zuordnung von Buchstaben und Ziffern besonders verarbeitet werden. Eine gesprochene Endnutzeräußerung wird erst vom Erkennungsmodul verarbeitet, erst dann werden die Entitäten zugeordnet. Wenn eine Äußerung eine Reihe von Buchstaben oder Zahlen enthält, kann das Erkennungsmodul die Zeichen durch Leerzeichen trennen. Außerdem kann das Erkennungsmodul Ziffern in Wortform interpretieren. So kann die Endnutzeräußerung "Meine ID lautet 123" auf folgende Weise erkannt werden:
- "Meine ID lautet 123"
- "Meine ID lautet 1 2 3"
- "Meine ID lautet eins, zwei, drei"
Zur Verarbeitung von dreistelligen Zahlen können Sie die folgenden regulären Ausdrücke verwenden:
\d{3}
\d \d \d
(zero|one|two|three|four|five|six|seven|eight|nine) (zero|one|two|three|four|five|six|seven|eight|nine) (zero|one|two|three|four|five|six|seven|eight|nine)
RegExp-Entität erstellen
Console
- Öffnen Sie die Dialogflow CX Console.
- Wählen Sie Ihr GCP-Projekt aus.
- Wählen Sie den Agent aus.
- Wählen Sie den Tab Verwalten.
- Klicken Sie auf Entitätstypen.
- Klicken Sie auf Erstellen.
- Klicken Sie auf das Kästchen RegExp-Entitäten.
- Füllen Sie die übrigen Felder aus.
- Klicken Sie auf Speichern.
API
Setzen Sie das Feld EntityType.kind
auf KIND_REGEXP
.
Wählen Sie ein Protokoll und eine Version für die EntityType-Referenz:
Protokoll | V3 | V3beta1 |
---|---|---|
REST | EntityType-Ressource | EntityType-Ressource |
RPC | EntityType-Schnittstelle | EntityType-Schnittstelle |
C++ | EntityTypesClient | Nicht verfügbar |
C# | EntityTypesClient | Nicht verfügbar |
Go | EntityTypesClient | Nicht verfügbar |
Java | EntityTypesClient | EntityTypesClient |
Node.js | EntityTypesClient | EntityTypesClient |
PHP | Nicht verfügbar | Nicht verfügbar |
Python | EntityTypesClient | EntityTypesClient |
Ruby | Nicht verfügbar | Nicht verfügbar |
Beschränkungen
Es gelten folgende Einschränkungen:
- Ungenaue Übereinstimmung kann für RegExp-Entitäten nicht aktiviert werden. Die Funktionen schließen sich gegenseitig aus.
- Jeder Agent kann maximal 50 RegExp-Entitäten enthalten.
- Der komplexe reguläre Ausdruck einer Entität ist maximal 2.000 Zeichen lang.