Verwenden Sie Entitäten und füllen Sie Slots in Power Virtual Agents-Bots

Wählen Sie die Version von Power Virtual Agents, die Sie hier verwenden:

Ein großer Teil der Bot-Gespräche in Power Virtual Agents ist das Verständnis der natürlichen Sprache, d. h. die Fähigkeit der KI, die Absicht eines Benutzers zu verstehen. Zum Beispiel ist das Verständnis der natürlichen Sprache erforderlich, wenn ein Benutzer sagt „Ich habe versucht, meine Geschenkkarte zu verwenden, aber es funktioniert nicht“ und der Bot den Benutzer zum Thema weiterleiten kann, wenn Geschenkkarten nicht funktionieren – sogar wenn diese genaue Phrase nicht als Triggerphrase aufgeführt ist.

Ein wesentlicher Aspekt des Verständnisses der natürlichen Sprache ist die Identifizierung der Entitäten in einem Benutzerdialog. Eine Entität kann als Informationseinheit angesehen werden, die einen bestimmten Typ eines realen Subjekts darstellt, z. B. eine Telefonnummer, eine Postleitzahl, eine Stadt oder sogar den Namen einer Person.

Voraussetzungen

Vorgefertigte Entitäten

In der Standardeinstellung wird Power Virtual Agents mit einer Reihe vorgefertigter Entitäten ausgeliefert, die die am häufigsten verwendeten Stereotypinformationen in realen Dialogen darstellen, wie z. B. Alter, Farben, Zahlen und Namen.

Mit dem von Entitäten gewährten Wissen kann ein Bot die relevanten Informationen aus einer Benutzereingabe intelligent erkennen und zur späteren Verwendung speichern.

Um diesen Begriff besser zu verstehen, kann die Geld-Entität als Beispiel verwendet werden.

  1. Navigieren Sie in Power Virtual Agents zur Registerkarte Entitäten im Seitenbereich.

    Gehen Sie zur Registerkarte „Entitäten“.

    Sie sehen die Liste der vorgefertigten Entitäten.

    Bereich „Entitäten“.

  2. Wählen Sie die Entität Geld, wodurch der Detailbereich für die Entität geöffnet wird.

    Geld-Entitätsbeschreibung.

Hier sehen Sie eine Erklärung dieser Entität und die Art und Weise, wie sie verwendet werden kann, um anhand von Benutzereingaben nach Informationen zu Geld oder Währung zu suchen.

Wenn ein Benutzer beispielsweise „Es kostet 1000 Dollar“ eingibt, weiß der Bot unter Verwendung dieser Geldeinheit, dass „1000 Dollar“ die Geldart von Informationen darstellt. Wenn der Bot diese Entität extrahiert und in einer Variablen speichert, speichert er „1000“ als Zahl, obwohl die Umgebungsinformationen Text waren.

Benutzerdefinierte Entitäten

Die vorgefertigten Entitäten decken häufig verwendete Informationstypen ab. In einigen Fällen, z. B. beim Erstellen eines Bots, der einem bestimmten Zweck dient, müssen Sie dem Sprachverständnismodell des Bots jedoch noch domänenspezifisches Wissen beibringen.

Angenommen, Sie möchten einen Bot für ein Outdoor-Geschäft bauen. In diesem Fall müssen Sie nun dem Bot beibringen, die Kategorie „Outdoor-Ausrüstung“ in einem Dialogfeld anzuerkennen.

Dafür müssen Sie eine benutzerdefinierte Entität erstellen. In diesem Fall können Sie eine Entität erstellen, die dem Bot das Wissen über alle Outdoor-Produktkategorien vermittelt.

  1. Navigieren Sie in Power Virtual Agents zur Registerkarte Entitäten im Seitenbereich.

    Gehen Sie zur Registerkarte „Entitäten“, um eine neue Entität zu erstellen.

  2. Wählen Sie die Schaltfläche Neue Entität im Hauptmenü aus.

    Wählen Sie „Neue Entität“ aus.

  3. Dadurch wird ein Bereich geöffnet, in dem Sie den Entitätstyp auswählen können: entweder eine Geschlossene Liste-Entität oder eine Regulärer Ausdruck (regex)-Entität.

„Geschlossene Liste“-Entitäten

Mit „Geschlossene Listen“-Entitäten können Sie eine Liste von Elementen definieren. Dies wird am besten für kleine Listen verwendet, die einfach zu verwalten sind und einfache Elementbezeichnungen haben.

Screenshot des Fensters zur Erstellung von Entitäten mit hervorgehobener Option „Geschlossene Liste“.

Wenn Sie diese Option beim Erstellen einer Entität auswählen, wird ein Bereich angezeigt, in dem Sie den Namen der Entität, eine optionale Beschreibung und die Elemente eingeben können, die Sie in die Entität aufnehmen möchten.

Screenshot des Entitätslistenbereich.

Wenn Sie Elemente eingeben, können Sie:

  • Wählen Sie jedes Element aus, um seinen Namen zu ändern.
  • Wählen Sie das Papierkorbsymbol aus, um das Element aus der Liste zu löschen.
  • Wählen Sie + Synonyme (oder wählen Sie die aufgelisteten Synonyme aus, wenn sie bereits hinzugefügt wurden), um den Bereich Synonyme bearbeiten zu öffnen.

Sie können Synonyme hinzufügen, um die Übereinstimmungslogik für jedes Element in der Liste der Entität manuell zu erweitern. Im Element „Wandern“ können Sie beispielsweise „Trekking“ und „Bergsteigen“ als Synonyme hinzufügen.

Screenshot des Bereichs „Synonyme bearbeiten“.

Für jede Entität können Sie auch Intelligente Übereinstimmung aktivieren.

„Intelligente Übereinstimmung“ ist Teil der Intelligenz, die vom Language-Understanding-Modell des Bots unterstützt wird. Wenn diese Option aktiviert ist, interpretiert der Bot die Eingabe des Benutzers mit Fuzzylogik basierend auf den aufgelisteten Elementen in der Entität.

Insbesondere korrigiert der Bot automatisch Rechtschreibfehler und erweitert seine Übereinstimmungslogik semantisch. Zum Beispiel kann der Bot automatisch „Softball“ mit „Baseball“ zuordnen.

Screenshot der Umschalttaste der Option „Intelligente Übereinstimmung“.

Wenn Sie mit dem Erstellen oder Bearbeiten Ihrer Entität fertig sind, wählen Sie Speichern, um zu speichern und zur Liste der Entitäten zurückzukehren. Wählen Sie Schließen, um Ihre Änderungen zu verwerfen (Sie erhalten die Möglichkeit, zur Bearbeitung der Entität zurückzukehren, falls Sie versehentlich die falsche Option ausgewählt haben).

„Regulärer Ausdruck (Regex)“-Entitäten

Mit „Regulärer Ausdruck (Regex)“-Entitäten können Sie logische Muster definieren, die Sie verwenden können, um Informationen aus einer Eingabe abzugleichen und zu extrahieren. Regex-Entitäten eignen sich hervorragend für Übereinstimmungen komplexer Muster mit der Eingabe eines Benutzers oder wenn Sie bestimmte Variationen in der Art und Weise berücksichtigen müssen, wie ein Benutzer seine Eingabe in einer Unterhaltung formatieren oder eingeben könnte.

Sie können beispielsweise eine Regex-Entität verwenden, um Elemente wie eine Nachverfolgungs-ID, eine Lizenznummer, eine Kreditkartennummer oder eine IP-Adresse aus einer Zeichenfolge zu identifizieren, die der Benutzer in den Bot eingibt.

Screenshot des Fensters zur Erstellung von Entitäten mit hervorgehobener Option „Regex“.

Wenn Sie diese Option beim Erstellen einer Entität auswählen, wird ein Bereich angezeigt, in dem Sie den Namen der Entität, eine optionale Beschreibung und das regex-Muster eingeben können, das verwendet werden sollte, um Entitätselemente aus der Eingabe zuzuweisen und zu extrahieren.

Screenshot des regex-Entitäsbereichs.

Eine Power Virtual Agents-Regex-Entität verwendet die .NET-Syntax für reguläre Ausdrücke.

Standardmäßig wird bei der Musterübereinstimmung zwischen Groß- und Kleinschreibung unterschieden. Um dies zu ändern, verwenden Sie die (?i)-Option für reguläre Ausdrücke in Ihrer Musterzeichenfolge. Einige grundlegende Beispiele sind im Regex-Entitätsbereich enthalten, und zusätzliche Informationen zur Syntax und weitere Beispiele finden Sie im Thema Sprache für reguläre Ausdrücke – Kurzanleitung.

Wenn Sie dafür sorgen müssen, dass der reguläre Ausdruck mehrere Muster berücksichtigt, können Sie den Alternationsvorgang | verwenden, um reguläre Ausdrücke zu verketten. Sie können beispielsweise zwei Regex-Muster kombinieren, um sowohl nach dem alten als auch dem neuen Format eines Produkt-ID-Codes zu suchen.

Wenn Sie mit dem Erstellen oder Bearbeiten Ihrer Entität fertig sind, wählen Sie Speichern, um zu speichern und zur Liste der Entitäten zurückzukehren. Wählen Sie Schließen, um Ihre Änderungen zu verwerfen (Sie erhalten die Möglichkeit, zur Bearbeitung der Entität zurückzukehren, falls Sie versehentlich die falsche Option ausgewählt haben).

Entitäten in einer Konversation verwenden

Nachdem Sie dem Bot das Wissen über Outdoor-Ausrüstung vermittelt haben, indem Sie diese Produktkategorie-Entität und einige weitere benutzerdefinierte Entitäten erstellt haben, können Sie sie beim Erstellen einer Bot-Konversation verwenden.

  1. Wechseln Sie zur Themenseite für den Bot, den Sie bearbeiten möchten.

  2. Öffnen Sie den Autoren-Canvas für das Thema, zu dem Sie eine Entität hinzufügen möchten.

  3. Wählen Sie das Pluszeichen (+), und wählen Sie anschließend Eine Frage stellen aus.

    Bildschirmfoto der Hinzufügung eines Knotens.

  4. Unter Identifizieren wählen Sie die Entität aus, in der Sie Benutzerdefinierte Entitäten erstellt haben.

    Fragenknoten mit Entitätsauswahl.

  5. Optional können Sie auch Elemente auswählen, die als Schaltflächen angezeigt werden sollen. Wenn Sie beispielsweise einige Kategorien als Schaltflächen anzeigen möchten, aus denen Benutzer bequem als Eingabe auswählen können, können Sie einfach die Benutzeroptionen auswählen und dann aus der Liste auswählen, die die Elemente enthält, die Sie beim Erstellen der benutzerdefinierten Entität hinzugefügt haben.

    Bedingungsknoten hinzufügen.

    Weitere Bedingungsknoten.

  6. Benennen Sie gegebenenfalls die Variable für die Ausgabe der Benutzerantwort.

Slot-Füllung

Das Füllen von Slots ist ein Konzept zum Verständnis natürlicher Sprache, bei dem eine extrahierte Entität in einem Objekt gespeichert wird. Allerdings bedeutet in Power Virtual Agents Slot-Füllung,, den extrahierten Entitätswert in eine Variable zu platzieren.

Wir werden weiterhin das Outdoor-Ausrüstungs-Thema als Beispiel verwenden, das durch die Eingabe von „Ich möchte etwas kaufen“ im Testchat ausgelöst wird.

Das Thema wird erfolgreich ausgelöst und der Bot fragt nach der Produktkategorie und zeigt auch die beim Erstellen des Eine Frage stellen-Knotens angegebenen Schaltflächen. In der Dialogstruktur zeigt die Verfolgung zwischen Themen auch, dass der Bot für den soeben bearbeiteten Fragenknoten ausgeführt wird.

Nachverfolgen zwischen Themen.

Ein Benutzer kann die vordefinierten Auswahlmöglichkeiten verwenden, indem er eine der Schaltflächen auswählt. Alternativ können sie auch so etwas wie „Trekking“ eingeben und sehen, dass es „Wandern“ entspricht, da diese Wörter als Synonyme definiert wurden.

Zusätzliches Nachverfolgen zwischen Themen.

Beim Verfolgen zwischen Themen wird angezeigt, dass der Dialog korrekt an den Pfad weitergeleitet wird, in dem der Wert der Produktkategorie „Wandern“ lautet. Sie können den Variablenwert im Variablenüberwachungsfenster unten im Autoren-Canvas überprüfen. Im Überwachungsfenster wird angezeigt, dass der variable Wert „Wandern“ ist.

Im Wesentlichen wurde der Slot gefüllt, indem die extrahierte Entität „Wandern“ in die Variable VarProductCategory eingefügt wurde.

Variables Überwachungsfenster.

Sie können auch die so genannte „proaktive Slot-Füllung“ verwenden, bei der der Benutzer mehrere Informationen angeben kann, die mehreren Entitäten zugeordnet sind. Der Bot kann automatisch verstehen, welche Informationen zu welcher Entität gehören. In Fällen, in denen die beabsichtigte Zuordnung nicht sicher ist, wird der Benutzer aufgefordert, durch Auswahlmöglichkeiten spezifischer zu sein.

In diesem Beispiel schrieb der Benutzer „Ich möchte Trekkingausrüstung kaufen“. Dies umfasst sowohl die Triggerphrase, mit der der Benutzer Ausrüstung kaufen möchte, als auch eine zweite Information – die tatsächliche Art der Ausrüstung. In diesem Fall füllt der Bot sowohl die Entität für den Kauf von Ausrüstung als auch für die Art der Ausrüstung aus.

Mehrfache und proaktive Slot-Füllung.

Beim Verfolgen zwischen Themen können Sie sehen, dass der Bot diese Benutzereingaben aufnimmt, und den Fragenknoten, der nach der Produktkategorie fragt, intelligent überspringen.

Der Bot hört immer aktiv auf die Benutzereingaben und merkt sich die Informationen im Voraus, damit er bei Bedarf unnötige Schritte überspringen kann.

Lassen Sie uns nun den Test erneut starten und einen anderen Fall versuchen. In dieser Runde können Sie ein paar weitere Frageknoten hinzufügen, die nach Dingen wie der Art der Wanderausrüstung sowie der Preisspanne fragen (mithilfe der Geld-Entität).

Dieses Mal, wenn die Frage zur Produktkategorie angezeigt wird, kann der Benutzer sagen, dass er ein Paar Wanderschuhe unter 100 US-Dollar kaufen möchte, anstatt dem Bot nur die Produktkategorie mitzuteilen. In diesem Beispiel kann der Bot nicht nur zum richtigen Pfad für die Wanderproduktkategorie routen, sondern auch aktiv die Slots füllen, in denen nach der Art der Wanderausrüstung und den Informationen zur Zielpreisspanne gefragt wird.

Verfolgung zwischen Themen für Produkt- und Preiskategorien.

Die proaktive Steckplatzfüllung kann manuell auf Knotenebene gesteuert werden. Wenn Sie immer innerhalb eines bestimmten Knotens nach der Frage fragen möchten, unabhängig davon, ob der Steckplatz aus früheren Benutzerantworten gefüllt wurde, können Sie die Option Frage überspringen für diesen Fragenknoten deaktivieren.

Frage überspringen.

Sehen Sie sich ein Video zur Vertiefung an