Ihren Dialog verbessern
Testen Sie Ihr Dialogmodul und organisieren Sie Ihre Dialogmodulknoten.
Dialogmodul testen
Während Sie an Ihrem Dialog arbeiten, können Sie ihn jederzeit testen, um zu sehen, wie der Dialog auf Eingaben reagiert.
Anfragen, die Sie über den Bereich "Ausprobieren" senden, generieren API-Aufrufe an /message, werden jedoch nicht protokolliert und verursachen keine Kosten.
-
Klicken Sie auf der Dialogseite auf die Schaltfläche "Ausprobieren ".
-
Geben Sie im Chatbereich Text ein und drücken Sie die Eingabetaste.
-
Überprüfen Sie die Antwort, um zu ermitteln, ob das Dialogmodul die Eingabe richtig interpretiert und die entsprechende Antwort ausgewählt hat.
Im Chatfenster ist angegeben, welche Absichten und Entitäten in der Eingabe erkannt wurden.
Ausgabe des Testdialogfelds -
Um die am häufigsten erkannten Absichten anzuzeigen, bewegen Sie den Mauszeiger über das Augensymbol
, das neben der Absicht mit dem höchsten Konfidenzscore angezeigt wird.
-
Falls die Antwort nicht Ihren Erwartungen entspricht, können Sie in der Anzeige 'Ausprobieren' die folgenden Aktionen ausführen:
- Wenn Sie eine Entität bearbeiten wollen, die in der Eingabe erkannt wurde, klicken Sie auf den Entitätsnamen, um sie auf der Seite 'Entitäten' zu öffnen.
- Wenn die falsche Absicht erkannt wurde, können Sie auf den Pfeil neben dem Absichtsnamen klicken, um die Absicht zu korrigieren oder das Thema als irrelevant zu markieren. Weitere Informationen finden Sie unter Trainingsdaten verbessern.
-
Wenn Sie wissen möchten, welcher Knoten im Dialogbaum eine Antwort ausgelöst hat, klicken Sie auf das Standortsymbol
daneben.
Der Quellenknoten wird in den Fokus genommen und die Route durch die Baumstruktur, über die der Assistent den Knoten erreicht hat, wird hervorgehoben. Die Route bleibt hervorgehoben, bis Sie eine andere Aktion ausführen (z. B. eine neue Testeingabe eingeben).
-
Um den Wert einer Kontextvariablen zu überprüfen oder festzulegen, klicken Sie auf den Link Kontext verwalten.
Alle Kontextvariablen, die Sie im Dialogmodul definiert haben, werden angezeigt.
Darüber hinaus werden die folgenden Kontextvariablen aufgeführt:
$timezone: Das Teilfenster Probieren Sie es aus ruft Informationen zur Benutzerländereinstellung aus dem Web-Browser ab und verwendet sie zum Festlegen der Kontextvariablen$timezone. Diese Kontextvariable vereinfacht die Berücksichtigung von Zeitunterschieden beim Austausch von Testdialogdaten.$metadata: Diese Kontextvariable enthält ein Benutzer-ID-Name/Wert-Paar. Da im Teilfenster Probieren Sie es aus standardmäßig kein Wert füruser_idangegeben ist, wirdconversation_idals Wert füruser_idverwendet. Zur Laufzeit wird der ID-Wert normalerweise von einer beliebigen Integration, die Sie verwenden, an den Assistenten übergeben. Wenn Sie eine kundenspezifische Anwendung entwerfen, legen Sie diesen Wert selbst fest.
Sie können eine Variable hinzufügen und ihren Wert festlegen, um festzustellen, wie das Dialogmodul in der nächsten Runde des Testdialogmoduls reagiert. Diese Funktionalität ist beispielsweise von Nutzen, wenn das Dialogmodul so konfiguriert ist, dass abhängig vom Wert einer Kontextvariablen, der vom Benutzer bereitgestellt wird, unterschiedliche Antworten angezeigt werden.
- Um eine Kontextvariable hinzuzufügen, geben Sie den Variablennamen an und drücken Sie die Eingabetaste.
- Um einen Standardwert für die Kontextvariable festzulegen, suchen Sie die Kontextvariable, die Sie in der Liste hinzugefügt haben, und geben Sie dann einen Wert dafür an.
Weitere Informationen finden Sie unter Kontextvariablen.
-
Setzen Sie die Interaktion mit dem Dialogmodul fort, um den Ablauf des Dialogs im Modul nachzuvollziehen.
- Wenn Sie eine verbale Testäußerung suchen und erneut übergeben wollen, können Sie mit der Aufwärtstaste in Ihren letzten Eingaben navigieren.
- Um frühere verbale Testäußerungen aus dem Chatbereich zu entfernen und neu zu beginnen, klicken Sie auf den Link Löschen. Diese Aktion entfernt nicht nur die verbalen Testäußerungen und die Antworten, sondern auch die Werte aller Kontextvariablen, die infolge Ihrer Interaktion mit dem Dialogmodul festgelegt wurden.
Nächste Schritte
Ändern Sie den Dialog, um die Probleme zu beheben, die beim Testen angezeigt werden:
- Wenn Sie feststellen, dass falsche Absichten oder Entitäten erkannt werden, müssen Sie möglicherweise die Absichts- oder Entitätsdefinitionen ändern.
- Wenn die richtigen Absichten und Entitäten erkannt werden, aber die falschen Knoten in Ihrem Dialog ausgelöst werden, stellen Sie sicher, dass Ihre Bedingungen richtig geschrieben sind.
Dialogmodul durchsuchen
Sie können den Dialog durchsuchen, um einen oder mehrere Dialogknoten zu finden, die ein Wort oder einen Ausdruck enthalten.
-
Wählen Sie
aus.
-
Geben Sie einen Suchbegriff oder -ausdruck ein.
Bei der ersten Suche wird ein Index erstellt. Möglicherweise werden Sie aufgefordert, zu warten bis der Text in Ihren Dialogmodulknoten indexiert wurde.
Knoten, die Ihren Suchbegriff enthalten, und entsprechende Beispiele werden angezeigt. Wählen Sie ein Ergebnis aus, damit es zum Bearbeiten geöffnet wird.
Dialogmodulknoten kopieren
Sie können einen Knoten duplizieren, um eine exakte Kopie als Peerknoten unmittelbar nach dem Ursprungsknoten in der Baumstruktur des Dialogmoduls) zu erstellen. Der kopierte Knoten selbst erhält denselben Namen wie der ursprüngliche Knoten,
ihm wird jedoch - copyn angehängt, wobei n eine Zahl ist, die mit 1 beginnt. Wenn Sie denselben Knoten mehr als einmal duplizieren, wird die n in den Namensinkrementen
für jede Kopie um eins erhöht, um die Unterscheidung der Kopien voneinander zu erleichtern. Wenn der Knoten noch keinen Namen hat, wird copyn als Name verwendet.
Wenn Sie einen Knoten duplizieren, der über untergeordnete Knoten verfügt, werden die untergeordneten Knoten ebenfalls dupliziert. Die kopierten untergeordneten Knoten tragen dieselben Namen wie die ursprünglichen untergeordneten Knoten. Die
einzige Möglichkeit, einen kopierten untergeordneten Knoten vom zugehörigen Ursprungsknoten zu unterscheiden, ist die Angebe copy im Namen des übergeordneten Knotens.
-
Klicken Sie auf dem Knoten, den Sie kopieren möchten, auf das Symbol Node optionen
und wählen Sie dann Duplikat aus.
-
Ziehen Sie in Betracht, die kopierten Knoten umzubenennen oder die zugehörigen Bedingungen zu bearbeiten, damit sie einfacher zu unterscheiden sind.
Dialogmodulknoten verschieben
Jeden Knoten, den Sie erstellen, können Sie an eine andere Stelle in der Baumstruktur des Dialogmoduls verschieben.
Beispiel: Sie wollen einen zuvor erstellten Knoten in einen anderen Bereich des Ablaufs verschieben, um den Dialog zu ändern. Durch das Verschieben können Sie Knoten zu gleichgeordneten Knoten oder Peerknoten in einer anderen Verzweigung machen.
-
Klicken Sie auf dem Knoten, den Sie verschieben möchten, auf Node
und wählen Sie dann "Verschieben" aus.
-
Wählen Sie einen Zielknoten aus, der sich in der Baumstruktur in der Nähe der Position befindet, an die Sie diesen Knoten verschieben wollen. Wählen Sie aus, ob dieser Knoten vor oder hinter dem Zielknoten bzw. als untergeordnetes Element des Zielknotens platziert werden soll.
Dialogmodul in Ordnern zusammenfassen
Sie können Dialogmodulknoten zu einem Ordner hinzufügen, um sie zu gruppieren. Gründe für die Gruppierung von Knoten:
- Knoten zusammenfassen, die ein ähnliches Ziel haben, damit sie leichter zu finden sind. Zum Beispiel können Knoten, die Fragen zu Benutzerkonten beantworten, in einem Ordner Benutzerkonto zusammengefasst werden und Knoten, die Fragen zur Zahlungsabwicklung beantworten, in einem Ordner Zahlung.
- Um eine Reihe von Knoten zu gruppieren, die der Dialog nur verarbeiten soll, wenn eine bestimmte Bedingung erfüllt ist. Verwenden Sie eine Bedingung wie
$isPlatinumMember, um Knoten zu gruppieren, die zusätzliche Dienste anbieten, die nur verarbeitet werden, wenn der aktuelle Benutzer berechtigt ist, die zusätzlichen Dienste zu erhalten. - Knoten während der Laufzeit ausblenden, solange Sie diese Knoten bearbeiten. Sie können Knoten zu einem Ordner mit einer Bedingung
falsehinzufügen, um zu verhindern, dass diese Knoten verarbeitet werden.
Die folgenden Merkmale des Ordners wirken sich auf die Verarbeitung der Knoten in einem Ordner aus:
- Bedingung: Wenn keine Bedingung angegeben wird, verarbeitet der Assistent die Knoten direkt in dem Ordner. Wenn eine Bedingung angegeben wird, wertet der Assistent zunächst die Ordnerbedingung aus, um festzustellen, ob die Knoten in dem Ordner verarbeitet werden sollen.
- Anpassungen: Alle Konfigurationseinstellungen, die Sie auf den Ordner anwenden, werden von den Knoten in dem Ordner übernommen. Wenn Sie beispielsweise die Abschweifungseinstellungen für den Ordner ändern, werden diese Änderungen für alle Knoten im Ordner übernommen.
- Baumhierarchie: Die Knoten in einem Ordner werden als Stammknoten oder untergeordnete Knoten behandelt, je nachdem, ob der Ordner auf der Stammebene oder der untergeordneten Ebene in der Baumstruktur des Dialogmoduls hinzugefügt wird. Alle Knoten auf der Stammebene, die Sie zu einem Ordner der Stammebene hinzufügen, werden weiterhin als Stammknoten behandelt; d. h. sie werden nicht zu untergeordneten Knoten des Ordners. Wenn Sie jedoch einen Knoten der Stammebene in einen Ordner verschieben, der einem anderen Knoten untergeordnet ist, dann wird der Stammknoten zu einem untergeordneten Element dieses anderen Knotens.
Ordner haben keine Auswirkung auf die Reihenfolge, in der Knoten verarbeitet werden. Die Knoten werden weiterhin vom ersten bis zum letzten Knoten nacheinander verarbeitet. Wenn Ihr Assistent dem Baum folgt und der Ordner keinen Zustand hat oder sein Zustand wahr ist, verarbeitet er sofort den ersten Knoten im Ordner und fährt der Reihe nach im Baum fort. Wenn ein Ordner keine Ordnerbedingung hat, wird jeder Knoten in dem Ordner wie jeder andere einzelne Knoten in der Baumstruktur behandelt.
Ordner hinzufügen
So fügen Sie einen Ordner zur Baumstruktur des Dialogmoduls hinzu:
-
Klicken Sie in der Baumansicht des Dialogs auf "Ordner hinzufügen ".
Der Ordner wird in der Baumstruktur des Dialogmoduls vor dem letzten Knoten (Anything else) hinzugefügt. Falls ein vorhandener Knoten in der Baumstruktur ausgewählt ist, wird der neue Knoten nach dem ausgewählten Knoten hinzugefügt.
Wenn Sie den Ordner an einer anderen Stelle in der Baumstruktur hinzufügen möchten, klicken Sie vom Knoten vor der Stelle, an der Sie ihn hinzufügen möchten, auf das Symbol Node optionen
und wählen Sie dann Ordner hinzufügen aus.
Sie können einen Ordner nach einem untergeordneten Knoten in einer bestehenden Verzweigung der Baumstruktur hinzufügen. Klicken Sie dazu auf das Symbol Node optionen
auf dem untergeordneten Knoten und wählen Sie dann Ordner hinzufügen aus.
Der Ordner wird in der Bearbeitungsansicht geöffnet.
-
Optional: Geben Sie einen Namen für den Ordner an.
-
Optional: Definieren Sie eine Bedingung für den Ordner.
Wenn Sie keine Bedingung angeben, wird die Bedingung
trueverwendet, d. h. die in dem Ordner enthaltenen Knoten werden immer verarbeitet. -
Fügen Sie Dialogmodulknoten in dem Ordner hinzu.
-
Sie können bestehende Dialogmodulknoten zu dem Ordner hinzufügen, indem Sie die betreffenden Knoten in den Ordner verschieben.
Klicken Sie auf dem Knoten, den Sie verschieben möchten, auf das Symbol Node optionen
, wählen Sie Bewegung aus und klicken Sie dann auf den Ordner. Wählen Sie In Ordner als Ziel für das Verschieben aus.
Wenn Sie Ordner verschieben, werden diese am Anfang der Baumstruktur im Ordner hinzugefügt. Wenn Sie beim Verschieben mehrerer aufeinanderfolgender Stammdialogmodulknoten die Reihenfolge beibehalten möchten, müssen Sie die Knoten in umgekehrter Reihenfolge verschieben (d. h. beginnend mit dem letzten Knoten).
-
Um dem Ordner einen Dialogknoten hinzuzufügen, klicken Sie auf Node
auf dem Ordner und wählen Sie dann "Knoten zum Ordner hinzufügen" aus.
Der Dialogmodulknoten wird in dem Ordner am Ende der Baumstruktur des Dialogmoduls hinzugefügt.
-
Ordner löschen
Sie können einen Ordner entweder allein oder mit allen darin enthaltenen Dialogmodulknoten löschen.
So löschen Sie einen Ordner:
-
Suchen Sie in der Baumstrukturansicht der Registerkarte Dialogmodul den Ordner, den Sie löschen möchten.
-
Klicken Sie auf das Symbol Node Optionen
für den Ordner und wählen Sie dann Löschen aus.
-
Führen Sie eine der folgenden Aktionen aus:
- Um nur den Ordner zu löschen und die darin enthaltenen Dialogmodulknoten beizubehalten, wählen Sie das Kontrollkästchen Knoten im Ordner löschen auf und klicken Sie dann auf Jetzt löschen.
- Um den Ordner und alle darin enthaltenen Dialogmodulknoten zu löschen, klicken Sie auf Jetzt löschen.
Wenn Sie nur den Ordner (ohne die enthaltenen Knoten) gelöscht haben, werden die zugehörigen Knoten in der Baumstruktur des Dialogmoduls an der Stelle angezeigt, an der sich Ordner vor dem Löschen befand.
Begrenzungen für Dialogmodulknoten
Wie viele Dialogmodulknoten pro Skill Sie erstellen können, richtet sich nach Ihrem Plantyp.
| Planen | Dialogmodulknoten pro Skill |
|---|---|
| Enterprise | 100.000 |
| Premium (Altbestand) | 100.000 |
| Plus | 100.000 |
| Test | 25.000 |
| Lite | 25.000 |
Die Dialogknoten welcome und anything_else, die in der Baumstruktur vorab ausgefüllt sind, werden in der Gesamtzahl berücksichtigt.
Tiefe des Baums: Der Dialog unterstützt 2.000 Dialogknoten-Nachkommen; der Dialog funktioniert am besten mit 20 oder weniger.
Dialogmodulknoten anhand der Knoten-ID suchen
Sie können Dialogmodulknoten anhand der zugehörigen Knoten-ID suchen. Geben Sie die vollständige Knoten-ID in das Suchfeld ein. Die Suche nach einem Dialogmodulknoten, dem eine bekannte Knoten-ID zugeordnet ist, kann die folgenden Gründe haben:
- Sie sehen sich Protokolle an und ein Protokoll referenziert einen Abschnitt des Dialogmoduls durch die Knoten-ID.
- Sie wollen die in der Eigenschaft
nodes_visitedder API-Nachrichtenausgabe aufgelisteten Knoten-IDs zu Knoten zuordnen, die in der Baumstruktur Ihres Dialogmoduls angezeigt werden. - Sie werden in einer Laufzeitfehlernachricht für das Dialogmodul über einen Syntaxfehler informiert und der Knoten, den Sie korrigieren müssen, ist dort mit der Knoten-ID angegeben.
Eine andere Methode zum Aufspüren eines Knotens anhand der zugehörigen Knoten-ID umfasst die folgenden Schritte:
-
Wählen Sie auf der Seite 'Dialogmodul' einen beliebigen Knoten in der Baumstruktur Ihres Dialogmoduls aus.
-
Schließen Sie die Bearbeitungsansicht, falls sie für den aktuellen Knoten geöffnet ist.
-
Im Adressfeld Ihres Webbrowsers sollte URL angezeigt werden, deren Syntax dem folgenden Beispiel ähnelt:
https://{location}.assistant.watson.cloud.ibm.com/{location}/{instance-id}/skills/{skill-id}/build/dialog#node={node-id} -
Bearbeiten Sie die URL, indem Sie den aktuellen Wert
{node-id}durch die ID des Knotens ersetzen, den Sie suchen möchten, und senden Sie dann die neue URL. -
Falls erforderlich, heben Sie die bearbeitete URL erneut hervor und übergeben Sie sie erneut.
Die Seite wird aktualisiert und verschiebt den Fokus auf den Dialogmodulknoten mit der von Ihnen angegebenen Knoten-ID. Wenn es sich um die Knoten-ID für einen Slot, für eine Slotbedingung 'Gefunden' oder 'Nicht gefunden', für einen Slot-Handler oder für eine bedingte Antwort handelt, wird der Fokus auf den Knoten gelegt, in dem der Slot oder die bedingte Antwort definiert ist, und der entsprechende Modaldialog wird angezeigt.
Wenn der Knoten noch immer nicht gefunden wird, können Sie den Dialogskill exportieren und in einem JSON-Editor öffnen, um in der JSON-Datei des Skills zu suchen.
Wie viele Knoten enthält das Dialogmodul?
Führen Sie eine der folgenden Aktionen aus, um die Anzahl der Dialogmodulknoten in einem Dialogskill anzuzeigen:
-
Fügen Sie den Dialogskill, wenn er noch keinem Assistenten zugeordnet ist, einem Assistenten hinzu und zeigen Sie anschließend die Kachel für den Skill auf der Hauptseite des Assistenten an. Im Abschnitt Trainierte Daten wird die Anzahl der Dialogmodulknoten angegeben.
-
Senden Sie eine GET-Anfrage an den API-Endpunkt
/dialog_nodesund fügen Sie den Parameterinclude_count=truehinzu. Beispiel:curl -u "apikey:{apikey}" "{url}/v1/workspaces/{workspace_id}/dialog_nodes?version=2018-09-20&include_count=true"Hierbei ist {url} die entsprechende URL für Ihre Instanz. Weitere Informationen finden Sie unter Serviceendpunkt.
In der Antwort ist die Anzahl der Dialogmodulknoten im Attribut
totaldes Objektspaginationenthalten.
Wenn die Summe größer zu sein scheint als erwartet, kann dies daran liegen, dass der Dialog, den Sie aus der Anwendung erstellen, in ein JSON-Objekt konvertiert wird. Einige Felder, die Teil eines einzelnen Knotens zu sein scheinen, sind im zugrunde liegenden JSON-Objekt als separate Dialogknoten strukturiert.
- Jeder Knoten und Ordner wird als eigener Knoten dargestellt.
- Jede bedingte Antwort, die einem einzelnen Dialogmodulknoten zugeordnet ist, wird als einzelner Knoten dargestellt.
- Für einen Knoten mit Slots wird jeder Slot, jede Antwort für 'Slot gefunden' oder 'Slot nicht gefunden', jeder Slot-Handler sowie (falls festgelegt) jede Antwort für 'Alles abfragen' als einzelner Knoten dargestellt. Dies bedeutet, dass ein Knoten mit drei Slots insgesamt elf Dialogmodulknoten bilden kann.