Bewährte Verfahren für Entitäten und die Aufteilung in Bereiche in Copilot Studio
Was ist die Slot-Filling?
Beim Füllen von Slots geht es um die Verwendung von Entitäten , mit denen ein Agent Informationen einfacher erfassen und verwenden kann, indem diese in der Benutzerabfrage identifiziert und extrahiert werden.
Ein Agent benötigt normalerweise verschiedene Informationen von einem Benutzer, um seine Aufgabe zu erfüllen. Um diese Informationen zu erhalten, stellen Sie normalerweise separate Fragen, eine für jede Tatsache, die Agent benötigt. Wenn Sie Entitäten in Ihren Fragen verwenden, erkennt Copilot Studio die erforderlichen Informationen und überspringt die Fragen, bei denen die Informationen in der auslösenden Benutzerabfrage identifiziert werden konnten.
Wenn ein Benutzer beispielsweise fragt: Ich möchte 3 große blaue T-Shirts bestellen
Copilot Studio Natural Language Understanding (NLU) kann sofort verstehen:
- Thema ist Bestellung
- Die Menge beträgt 3
- Farbe ist Blau
- Artikeltyp ist T-Shirt
Der Agent kann dann unnötige Fragen überspringen. Wenn einige Informationen fehlen, z.B. Größe, werden die unbeantworteten Fragen gestellt, bevor Sie fortfahren. Durch das Ausfüllen von Slots kann Ihr Agent Informationen einfacher erfassen und verwenden und die Anzahl der Fragen, die Sie stellen müssen, wird reduziert.
Sie legen zunächst fest, welche Entitäten Sie verwenden möchten und deren Typen.
Definieren von Entitäten
Copilot Studio bietet mehrere integrierte Entitäten für die allgemeinsten Anwendungsfälle, z.B. E-Mail, Datum und Uhrzeit, Personenname, Telefonnummer, Farbe, Land, Stadt, Nummer, Geld, und mehr.
Integrierte Entitäten sind leistungsfähig, da sie viele Variationen des Formulars einer Information verarbeiten können. Wenn Sie zum Beispiel Geld in einer Unterhaltung verwenden, könnte der Benutzer einen Wert wie „$100“ oder „hundert Dollar“ oder „100 Dollar“ eingeben. Das NLU-Modell in Copilot Studio findet heraus, dass der Wert ein Geldwert von 100 Dollar ist.
Tipp
Wie auch immer die Werte eingegeben werden, solange sie mit Fragen in Ihrem Flow der Unterhaltung abgefragt werden, werden sie in Variablen gespeichert, die Sie wiederverwenden können.
Sie können auch Ihre eigenen angepassten Entitäten definieren, wie Artikel Typ aus dem vorherigen Beispiel. Angepasste Entitäten können von zwei Typen sein:
- Geschlossene Liste: für eine vordefinierte Liste von Werten.
- Reguläre Ausdrücke (RegEx): für Informationen, die einem bestimmten Muster entsprechen. RegEx ist ideal, wenn Sie Daten erfassen müssen, die immer dem gleichen Format folgen (zum Beispiel INC000001 für eine Ticketnummer)
Verbessern der Benutzererfahrung
Die Verwendung von Entitäten macht Ihnen das Leben leichter, da Copilot Studio auf intelligentere Weise Informationen aus Benutzeranfragen sammeln kann. Vor allem aber wird das Leben der Benutzer verbessert, da Entitäten Informationen aus Benutzeranfragen finden und speichern können, um diese Informationen dann später in der Unterhaltung zur Verfügung zu stellen. Entitäten verbessern das Benutzererlebnis – sie lassen Ihr Agent intelligenter erscheinen – und es ist definitiv eine bewährte Methode, sie wann immer möglich zu verwenden.
Bewährte Verfahren für Entitäten
Verwenden Sie Synonyme
Sie können den Werten geschlossener Entitäten der Liste Synonyme hinzufügen, um die Abgleichslogik für jeden Artikel in der Liste der Entität manuell zu erweitern. Im Artikel „Wandern“ können Sie zum Beispiel „Trekking“ und „Bergsteigen“ als Synonyme hinzufügen.
Tipp
- Die Verwendung von Synonymen kann auch bei der Auslösung von Themen helfen, da sie das Gewicht einer Auslöserphrase erhöhen, indem sie verwandte Wörter als Synonyme einer darin enthaltenen Entität hinzufügen. Fügen Sie z.B. für die Option „Beschwerde“ ähnliche negative Wörter oder Ausdrücke als Synonyme hinzu.
- Das NLU-Modell verallgemeinert auch auf alle Variationen von Entitäten (d.h. alle ihre Werte und ihre Synonyme) für den Fall, dass eine thematische Auslöser-Phrase mindestens eine Variation dieser Entität enthält. Mit anderen Worten: Die Autoren von Agent sollten ein Beispiel eines Triggerausdruck mit einer Verwendung dieser Entität für das NLU einschließen, um auf andere Entitätsvarianten verallgemeinern zu können.
Intelligente Übereinstimmung aktivieren
Für jede Entität der geschlossenen Liste können Sie auch Smart Matching aktivieren.
Smart Matching ist Teil der Intelligenz, die durch das Modell Agent's NLU 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.
Seien Sie kreativ mit regulären Ausdrücken
Manchmal kann die Extraktion von Entitäten aus einer Benutzerabfrage zu Verwirrung beim NLU-Modell führen, insbesondere wenn mehrere Entitäten desselben Typs in der Benutzerabfrage vorhanden sind.
Wenn ein Benutzer beispielsweise sagt: „Können Sie 2 Handtücher und 1 Kissen in Zimmer 101 mitbringen?“
Bei Verwendung der integrierten Entität Zahl würde man zwischen 2, 1 und 101 verwechseln. Um diese Verwirrung zu umgehen, können Sie die folgenden Entitäten mit regulären Ausdrücken definieren:
- Handtuch Menge: [1-9] Handtuch
- Kissen Menge: [1-9] Kissen
- Raumnummer: [0-9]{3}
Alternativen zu Entitäten zum Speichern von referenziellen Daten
Für große oder sich entwickelnde Datasets (z.B. eine Liste von Produkten oder Kunden) sollten Sie anstelle von Copilot Studio geschlossene Entitäten aus der Liste verwenden, um externe Quellen zu prüfen. Sie müssen die Äußerung des Benutzers mit einem Power Automate Cloud-Flow an den externen Dienst weiterleiten.
Ihre Themenlogik kann dann die Richtigkeit des Ergebnisses validieren (oder den Benutzer bitten, es zu validieren), bevor Sie in der Unterhaltung fortfahren.
Dataverse ist ein guter Kandidat, um solche Daten zu speichern, da es über eine integrierte Dataverse Suche-Funktionalität verfügt, die Fuzzy Matching unterstützt, um die besten Ergebnisse zusammen mit einer Vertrauensbewertung zurückzugeben. Selbst wenn Sie mit einem vollständigen Satz suchen, können Sie potenzielle Treffer abrufen.
Tipp
Eine Beispielimplementierung finden Sie unter Eine Liste mit Ergebnissen zurückgeben.