Verwenden von Entitäten und Slot-Füllung in Agenten
Ein wesentlicher Teil der Agent-Gespräche in Copilot Studio ist Verständnis natürlicher Sprache, also die Fähigkeit der KI, die Absicht eines Benutzers zu verstehen. Beispielsweise könnte der Benutzer sagen: „Ich habe versucht, mein Geschenk Karte zu verwenden, aber es funktioniert nicht“, und Agent weiß, dass der Benutzer zu Thema weitergeleitet werden muss, das sich auf das nicht funktionierende Geschenk Karten bezieht, selbst wenn diese genaue Phrase nicht als Triggerausdruck aufgeführt ist.
Ein wesentlicher Aspekt des Verständnisses der natürlichen Sprache ist die Identifizierung der Entitäten in einem Benutzerdialog. Sehen Sie sich das Video an, um mit Entitäten zu beginnen.
Eine Entität kann als Informationseinheit betrachtet werden, die bestimmte Arten von Themen in der realen Welt darstellt, wie z. B. eine Telefonnummer, eine Postleitzahl, eine Stadt oder auch den Namen einer Person. Mit dem von Entitäten gewährten Wissen kann ein Agent die relevanten Informationen aus einer Benutzereingabe intelligent erkennen und für die spätere Verwendung speichern.
Vorgefertigte Entitäten
Entitäten in Agenten ermöglichen Ihnen die Speicherung von Informationen in ähnlichen Gruppen.
In der Standardeinstellung wird Copilot Studio 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 Agent die relevanten Informationen aus einer Benutzereingabe intelligent erkennen und für die spätere Verwendung speichern.
Um diesen Begriff besser zu verstehen, kann die Geld-Entität als Beispiel verwendet werden.
Öffnen Sie Ihre Agent in Copilot Studio und Auswählen Einstellungen oben auf der Seite und dann Entitäten im Menü.
Eine Liste der vorgefertigten, verfügbaren Entitäten wird angezeigt.
Wählen Sie die Entität Geld, um den Detailbereich für die Entität zu öffnen.
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ß Agent mithilfe dieser Geldentität, dass „1000 Dollar“ den Informationstyp Geld darstellt. Wenn Agent diese Entität extrahiert und in einer Variablen speichert, speichert es „1000“ als Zahl, obwohl die umgebenden Informationen Text waren.
Benutzerdefinierte Entitäten
Die vorgefertigten Entitäten decken häufig verwendete Informationstypen ab. In einigen Fällen, beispielsweise beim Erstellen eines Agent, das einem bestimmten Zweck dient, müssen Sie dem Sprachverständnismodell von Agent möglicherweise domänenspezifisches Wissen beibringen.
Angenommen, Sie möchten ein Agent für ein Outdoor-Geschäft erstellen. In diesem Fall müssen Sie Agent beibringen, die Kategorie „Outdoor-Ausrüstungsprodukte“ in einem Dialog anzuerkennen.
Erstellen Sie als Erstes einer benutzerdefinierte Entität. In diesem Fall können Sie eine Entität erstellen, die Agent das Wissen über alle Outdoor-Produktkategorien vermittelt.
Öffnen Sie Ihre Agent in Copilot Studio und Auswählen Einstellungen oben auf der Seite und dann Entitäten im Menü.
Wählen Sie Entität hinzufügen>Neue Entität.
Auswählen der gewünschte Entitätstyp: 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. Diese Entitäten werden am besten für kleine Listen verwendet, die einfach zu verwalten sind und einfache Elementbezeichnungen haben.
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.
Wenn Sie Elemente eingeben, können Sie:
- Jedes Element auswählen und seinen Namen ändern.
- Wählen Sie das Papierkorbsymbol aus, um das Element aus der Liste zu löschen.
- Die Option + Synonyme bzw. die aufgelisteten Synonyme auswählen, 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.
Sie können für jede Entität auch Intelligente Übereinstimmung aktivieren.
Smart Matching ist Teil der Intelligenz, die durch das Sprachverständnismodell von Agent unterstützt wird. Wenn diese Option aktiviert ist, interpretiert Agent die Benutzereingabe mithilfe von Fuzzy-Logik, basierend auf den aufgelisteten Elementen in der Entität.
Insbesondere korrigiert Agent automatisch Rechtschreibfehler und erweitert seine Matching-Logik semantisch. Beispielsweise kann Agent automatisch „Softball“ mit „Baseball“ abgleichen.
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 zum Beispiel 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 Agent eingibt.
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.
Eine Copilot Studio-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 Fertig nun die Arbeit abgenommen haben, Agent Wissen über Outdoor-Ausrüstung zu vermitteln, indem Sie diese Produktkategorie-Entität und einige andere benutzerdefinierte Entitäten erstellt haben, können Sie diese beim Aufbau einer Agent-Konversation verwenden.
Gehen Sie zur Seite Themen für das Agent, das Sie bearbeiten möchten.
Öffnen Sie Thema für eine Entität, die Sie sammeln möchten.
Wählen Sie das Menüsymbol des Frageknotens und anschließend und dann Eine Frage stellen.
Unter Identifizieren wählen Sie die Entität aus, in der Sie Benutzerdefinierte Entitäten erstellt haben.
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 Benutzende bequem als Eingabe auswählen können, können Sie Optionen für Benutzende auswählen und dann aus der Liste mit den Elementen auswählen, die Sie beim Erstellen der benutzerdefinierten Entität hinzugefügt haben.
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 Copilot Studio Slot-Füllung,, den extrahierten Entitätswert in eine Variable zu platzieren.
Wir verwenden weiterhin das Thema „Campingaktivitäten“ als Beispiel, das durch die Eingabe von „Ich möchte etwas unternehmen“ im Testchat ausgelöst wird.
Thema wird erfolgreich ausgelöst und Agent fragt nach der Art der Aktivität. Dabei werden auch die Schaltflächenauswahlmöglichkeiten angezeigt, die beim Erstellen des Knotens Eine Frage stellen angegeben wurden. Im Dialogbaum zeigt die Verfolgung zwischen Themen auch, dass Agent zum Fragenknoten ausgeführt wird, den Sie gerade bearbeitet haben.
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.
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 VarCampType
eingefügt wurde.
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. Agent kann automatisch verstehen, welche Informationen zu welcher Entität gehören. In Fällen, in denen die beabsichtigte Zuordnung nicht sicher ist, wird der Benutzende aufgefordert, die Aussage durch Auswahlmöglichkeiten zu verfeinern.
In diesem Beispiel schrieg der Benutzer Es ist mir langweilig, aber ich liebe Bergsteigen. Diese Nachricht enthält sowohl den Triggerausdruck, dass der Benutzer Hilfe bei Outdooaktivitäten braucht, als auch eine zweite Information – Bergsteigen –, was ein entitätsdefiniertes Synonym für Wandern ist. In diesem Fall füllt Agent sowohl die Entität für die Auswahl einer Outdoor-Aktivität als auch für die Art der Aktivität aus.
Beim Verfolgen zwischen Themen können Sie sehen, dass Agent diese Benutzereingabe aufnimmt und den Fragenknoten, der nach der Art der Aktivität fragt, intelligent überspringt.
Agent hört immer aktiv auf die Benutzereingaben und merkt sich Informationen im Voraus, sodass es 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 fragen wie, wie viel Zeit man für die Aktivität hat (mithilfe der Dauer-Entität) und welche Preisspanne es sein darf (mit der Geld-Entität).
Dieses Mal kann der Benutzer bei der Frage nach der Produktkategorie, anstatt Agent nur die Produktkategorie mitzuteilen, sagen: „Ich möchte ein Paar Wanderschuhe unter $100 kaufen.“ In diesem Beispiel kann der Agent nicht nur zum richtigen Pfad der Wandern-Produktkategorie weiterleiten, sondern auch aktiv die Slots füllen, indem er nach Informationen zu der Art der Wanderausrüstung und zur Zielpreisspanne fragt.
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. Gehen Sie wie folgt vor, um die Option Frage überspringen zu deaktivieren.
Symbol Mehr im ( …) des Frage Knotens auswählen und dann Eigenschaften auswählen. Der Bereich Frageeigenschaften wird angezeigt.
Wählen Sie im Bereich Frageeigenschaften Frageverhalten aus.
Wählen Sie im Bereich Frageverhalten unter Frage überspringen Jedes Mal fragen und dann oben auf der Seite Speichern aus.