Jedes Playbook sollte ein oder mehrere Beispiele enthalten. Diese Beispiele sind Musterunterhaltungen zwischen einem Endnutzer und dem Playbook, einschließlich des Dialogs und der vom Agent ausgeführten Aktionen. Dies sind im Grunde Beispiele für Few-Shot-Prompts für das LLM.
Die Konsole bietet eine Schnittstelle, über die Sie Aktionen eingeben können.
Mehrsprachige Agents
Wenn Ihr Agent mehrere Sprachen verarbeiten soll, müssen Sie in Ihren Beispielen alle Sprachen verwenden.
Beispiel für eine Zusammenfassung der Eingabe und eine Zusammenfassung der Ausgabe
Zusätzlich zu Ein- und Ausgabeparametern unterstützen Playbooks den Empfang einer Eingabeübersicht und die Ausgabe einer Ausgabeübersicht für den Austausch von Informationen mit anderen Playbooks. Zusammenfassungen sind hilfreich, um abstrakte Kontextinformationen zwischen Playbooks zu übergeben, während Parameter besser geeignet sind, um strukturierte, genau definierte Felder zwischen Playbooks zu übergeben. Parameter sind die einzige Möglichkeit, Daten zwischen Abläufen und Playbooks auszutauschen.
Fügen Sie den Beispielen relevante Eingabeübersichten hinzu, damit das Playbook seine Aktionen zur Laufzeit basierend auf den Eingabeübersichten anpasst. Fügen Sie Ausgabezusammenfassungen mit relevanten, genauen Details zum Beispielgespräch hinzu, um dem Playbook zu zeigen, welche Details wichtig sind.
Beispielstatus
Zu einem bestimmten Zeitpunkt in der Unterhaltung kann sich ein Playbook in einem der folgenden Status befinden:
OK
: Das Playbook hat sein Ziel erreicht und die Steuerung wird nun an das übergeordnete Playbook übertragen.CANCELLED
: Der Nutzer hat sich entschieden, das dem Playbook zugewiesene Ziel nicht weiter zu verfolgen. Die Kontrolle wird jetzt auf das Eltern-Playbook übertragen. Wenn das übergeordnete Playbook ein CX-Ablauf ist, wird die Intention der Nutzereingabe erkannt, bevor der Ablauf ausgeführt wird.FAILED
: Das Playbook kann aufgrund eines Fehlers nicht mit dem Ziel fortfahren (z.B. gibt das Tool einen 500-Fehler zurück). Die Sitzung wird mit dem Status „Fehler“ beendet. Der Antwort wird eine EndInteraction-Nachricht hinzugefügt.ESCALATED
: Das Playbook hat entschieden, dass das Ziel nicht erreicht werden kann und die Situation an einen Menschen eskaliert werden muss. Die Sitzung endet mit dem Status „Eskaliert“. Der Antwort wird eine EndInteraction-Nachricht hinzugefügt.PENDING
: Die Unterhaltung wird im Playbook fortgesetzt.
Das Beispiel auf oberster Ebene und seine Playbook-Aufrufe sollten mit einem Status gekennzeichnet werden, der dem Playbook entspricht, auf das sie verweisen.
Auswahlstrategie
Mit der Einstellung für die Auswahlstrategie wird gesteuert, ob ein Beispiel in den Prompt des Playbooks aufgenommen wird, der an das LLM gesendet wird. Folgende Optionen sind verfügbar:
Dynamisch auswählen: Das Beispiel wird bedingt einbezogen, je nachdem, wie relevant es für den aktuellen Konversationskontext ist. Das Beispiel kann weggelassen werden, wenn das Prompt-Tokenlimit fast erreicht ist.
Immer auswählen: Das Beispiel wird immer berücksichtigt, unabhängig vom Kontext der Unterhaltung. Das Beispiel kann weggelassen werden, wenn das Prompt-Tokenlimit fast erreicht ist.
Nie auswählen: Das Beispiel wird nie in den Prompt aufgenommen. Das Beispiel hat keine Auswirkungen auf die Leistung des Playbooks. Diese Einstellung ist nützlich, um ein Beispiel vorübergehend zu Testzwecken auszuschließen.
Aktion hinzufügen
Ein Beispiel in einem Playbook besteht aus einer Reihe von Aktionen. Diese Aktionen können in ihren Kombinationen variieren, stellen aber in erster Linie die Interaktion zwischen dem Nutzer und dem Playbook sowie die dazwischen ergriffenen Maßnahmen zur Erfüllung der Anfrage oder Anforderungen des Nutzers dar.
Es gibt zwei Möglichkeiten, einem Beispiel Aktionen hinzuzufügen:
- Wenn Sie eine Aktion manuell hinzufügen möchten, klicken Sie unten im rechten Bereich auf die Schaltfläche + oder auf die Schaltfläche Aktion hinzufügen, wenn Sie den Mauszeiger auf vorhandene Aktionen bewegen. Sie können diese Optionen verwenden, wenn Sie ein neues Beispiel erstellen, indem Sie auf + Beispiel klicken, oder wenn Sie ein vorhandenes Beispiel bearbeiten.
- Wenn Sie Aktionen automatisch auf Grundlage der vorhandenen Playbook-Anweisungen generieren möchten, geben Sie unten im rechten Bereich eine Nutzereingabe in das Feld Nutzereingabe eingeben ein. Sie können diese Option beim Erstellen oder Bearbeiten eines Beispiels verwenden. Alternativ können Sie diese Option verwenden, wenn Sie Ihr Playbook zur Laufzeit im Bereich Playbook-Vorschau auf der rechten Seite testen. Wenn Sie Aktionen in einem Beispiel aus dem Bereich Playbook-Vorschau speichern möchten, klicken Sie auf Beispiel speichern, nachdem Sie den Playbook-Aufruf aus der Aufrufliste links im Bereich Playbook-Vorschau ausgewählt haben.
Prüfen Sie, ob die automatisch generierten Aktionen korrekt sind, und bearbeiten Sie sie gegebenenfalls. Das ist besonders wichtig für Playbooks mit wenigen oder keinen Beispielen.
Die folgenden Arten von Aktionen werden vom Playbook unterstützt:
Playbook-Antwort
Die Playbook-Antwort auf die Nutzeranfrage.
Nutzereingabe
Die Nutzeranfrage.
Tool-Nutzung
Dies ist ein Toolaufruf, um zusätzliche Informationen zu erhalten, die zur Beantwortung der Nutzeranfrage erforderlich sind. Für diese Aktion müssen die folgenden Details angegeben werden:
Tool: Name des Tools, das aufgerufen werden soll.
Aktion: Name des Vorgangs für das OpenAPI-Tool, das aufgerufen werden soll. Bei Datenspeichertools und Funktionstools ist der Aktionsname derselbe wie der Toolname.
Tool-Eingabe: Eingaben, die im Tool-Aufruf enthalten sein sollen. Diese werden in der Regel aus den vorherigen Gesprächsrunden mit dem Nutzer abgeleitet.
Für Open API-Tools ist
requestBody
-JSON für die MethodentypenPOST
,PUT
undPATCH
erforderlich.Beispiel für die Open API-Spezifikation für die Aktion „createPet“:
requestBody
{ "id": 1, "name": "Luna" }
Für das Data Store-Tool ist das Beispiel
requestBody
, wobei die Abfrage erforderlich ist und andere Felder optional sind.{ "query": "Where is my nearest store?", "filter": "country: ANY(\"United States\")", "userMetadata": { "userCity": "San Francisco", }, "fallback": "We don't have any stores in your area." }
Tool-Ausgabe: Die Antwort auf den Tool-Aufruf. Dies ist eine gültige JSON-Antwort des Tools auf die angegebene Eingabe. Bei Open API-Tools kann es sich auch um einen String-Fehler handeln, z. B. „404 Not found“.
Beispiel für die Ausgabe des Open API-Tools für die Aktion „listPets“:
{ "pets": [ { "id": 1, "name": "Luna" }, { "id": 2, "name": "Charlie" }] }
Beispielausgabe des Data Store-Tools:
{ "answer": "Here's the address to your nearest store ...", "snippets": [ { "title": "San Francisco Downtown", "uri": "https://www.example.com/San_Francisco_Downtown", "text": "Address for San Francisco Downtown .." } ] }
Damit das Playbook ausfallsicher ist, sollten Sie auch Beispiele dafür angeben, wie das Playbook reagieren soll, wenn der Toolaufruf fehlschlägt.
Ein Open API-Tool-Aufruffehler kann in der Tool-Ausgabe als Fehlerstring („404 not found“) dargestellt werden.
Bei Datenspeichertools kann mit der fallback
-Eingabe angegeben werden, wie reagiert werden soll, wenn keine zusammengefasste Antwort vorhanden ist.
Wenn Ihr Datenspeichertool den URI in die Playbook-Antwort aufnehmen soll, fügen Sie Beispiele hinzu, die den URI enthalten, mit dem das Playbook antworten soll.
Wenn dieser URI aus dem Datenspeichertool stammt, sollte die Ausgabe des Datenspeichertools einen URI enthalten, der dem URI in der Playbook-Antwort entspricht.
Hinweis: fallback
kann in diesem Szenario nicht verwendet werden, da dadurch die Möglichkeit des LLM-Playbooks deaktiviert wird, die Antwort des Datenspeichertools so umzuformulieren, dass URIs in der Playbook-Antwort enthalten sind.
Beispiele, die Tool-Nutzungsaktionen enthalten, können sehr ausführlich sein und dazu beitragen, dass das Eingabe-Tokenlimit schneller erreicht wird. Damit Tokens effizient genutzt werden, sollten die Tool-Ausgaben prägnant sein und Informationen enthalten, die für die Ziele des Playbooks relevant sind. Bei Datenspeichertools sollten Sie Snippets aus Beispielen entfernen, da sie zu einem hohen Verbrauch an Eingabetokens führen können.
Playbook-Aufruf
Diese Aktion wird verwendet, wenn das Playbook ein anderes Aufgaben-Playbook aufrufen soll, um die Nutzeranfrage zu erfüllen. Für diese Aktion müssen die folgenden Details angegeben werden:
- Playbook: Name des aufzurufenden Playbooks.
- Zusammenfassung der Playbook-Aufrufeingabe: Eine Zusammenfassung der relevanten Teile der vorherigen Unterhaltung, die für das aufgerufene Playbook nützlich sind.
- Eingabeparameter: Eingabeparameter>, die an das Playbook übergeben werden sollen.
- Zusammenfassung der Playbook-Aufrufausgabe: Eine Zusammenfassung dessen, was das Playbook nach Abschluss des Ziels generieren soll.
- Ausgabeparameter: Ausgabeparameter>, die vom Playbook generiert werden, wenn das Ziel erreicht ist.
Playbook-Umstellung
Eine Playbook-Übergangsaktion ist eine Endaktion (auf die keine anderen Aktionen folgen sollten), die angibt, dass das Routine-Playbook beendet und zu einem Ziel-Routine-Playbook gewechselt werden soll. Da diese Aktion angibt, dass das Playbook beendet wird, müssen Sie die Ausgabeparameter des Playbooks zur Playbook-Ausgabe des Beispiels hinzufügen.
Flow-Aufruf
Diese Aktion wird verwendet, wenn im Aufgaben-Playbook ein Ablauf aufgerufen werden soll. Für diese Aktion müssen die folgenden Details angegeben werden:
- Ablauf: Name des aufzurufenden Ablaufs.
- Datenflusseingabeparameter: Eingabeparameter, die an den Datenfluss übergeben werden sollen.
- Rückgabeparameter des Ablaufs: Ausgabeparameter, die vom Ablauf zurückgegeben werden.
Ablaufübergang
Eine Ablaufübergangsaktion ist eine Endaktion (auf die keine anderen Aktionen folgen sollten), die angibt, dass das Routine-Playbook beendet und zu einem Zielablauf übergegangen ist. Da diese Aktion angibt, dass das Playbook beendet wird, müssen Sie die Ausgabeparameter des Playbooks zur Playbook-Ausgabe des Beispiels hinzufügen.