Derzeit verwenden wir den Watson Natural Language Classifier Service (NLC), um die Frage eines Benutzers zu beantworten. Aber das Konfigurieren und Pflegen von NLC wird schwierig, und so fragte man sich, ob es möglich wäre, nur die Absicht der Benutzerfrage mit dem Watson Conversation-Abschnitt zu bekommen, nur die Absicht, nicht die Antwort des Dialogs vom Dienst.können wir nur die Absicht mit Watson-Konversation abrufen?
Antwort
Die Absicht kommt als Teil der Antwort zurück von der Konversation. Wenn Sie den Parameter alternate_intents=true
einstellen, werden die Top 10 Intents zurückgegeben.
Sie erhalten immer noch den Rest der Nutzlast, aber Sie können es ignorieren. Ich würde empfehlen, einen Dialogknoten mit einer Bedingung von true
und nichts sonst zu erstellen. Dies verhindert SPEL-Fehler, wenn kein übereinstimmender Knoten gefunden wird.
Ihre Antwort wird ungefähr so aussehen.
{
"alternate_intents": true,
"context": {
"conversation_id": "6c256e10-ba3b-4d2b-84fc-740853879d4f",
"system": {
"_node_output_map": { "True": [0] },
"branch_exited": true,
"branch_exited_reason": "completed",
"dialog_request_counter": 1,
"dialog_stack": [ { "dialog_node": "root" } ],
"dialog_turn_counter": 1
}
},
"entities": [],
"input": { "text": "test" },
"intents": [
{ "intent": "intent1", "confidence": 1.0 },
{ "intent": "intent2", "confidence": 0.9 },
{ "intent": "intent3", "confidence": 0.8 },
{ "intent": "intent4", "confidence": 0.7 },
{ "intent": "intent5", "confidence": 0.6 },
{ "intent": "intent6", "confidence": 0.5 },
{ "intent": "intent7", "confidence": 0.4 },
{ "intent": "intent8", "confidence": 0.3 },
{ "intent": "intent9", "confidence": 0.2 },
{ "intent": "intent10", "confidence": 0.1 }
],
"output": {
"log_messages": [],
"nodes_visited": [ "True" ],
"text": [ "" ]
}
}
Alles, was Sie benötigen, ist die json_response['intents']
. Wenn Sie sich nur für die Absicht interessieren, müssen Sie den Kontext nicht weiter zurücksenden.
Nur um das hinzuzufügen. NLC und Conversation verwenden zwei sehr unterschiedliche Lernmodelle.
- NLC verwendet "Relative Confidence"
- Conversation verwendet "Absolute Confidence"
Im Falle Relative alle Vertraulichkeiten Elemente summieren sich auf 1 gefunden In Laiebezeichnungen, NLC automatisch nimmt an, dass die Antwort nur in den Absichten sein kann, die es gegeben wurde.
Für Absolut beziehen sich die Vertraulichkeiten nur auf diese Absicht. Das bedeutet, dass die Konversation verstehen kann, dass das, was du sagst, nicht in dem Training ist, das es gegeben hat. Es bedeutet auch, dass Ihre Absichtsliste leer zurückkommen kann.
Also keine Panik, wenn dir etwas, das dir 90% zuvor gegeben hat, jetzt 60% gibt. Sie bewerten nur anders.
- 1. Können wir die Anrufdetails eines iPhone abrufen?
- 2. Wie können wir Deep-Link-Daten aus der Absicht entfernen
- 3. Können wir Systemeinheiten über die DialogFlow-API abrufen?
- 4. WPF - Gruppenstile: Können wir nur an die Eigenschaft "Name" binden?
- 5. Können wir nur die Zeit in Mongodb vergleichen?
- 6. Können wir nur Datennachricht von Firebase-Benachrichtigungskonsole
- 7. Können wir die Druckereinstellungen mit jquery ändern?
- 8. Können wir die Betriebssystemumgebungsvariablen in Java lesen?
- 9. Können wir alle Spaltennamen aus einer HBase-Tabelle abrufen?
- 10. Von NSDate wie können wir nur Datum mit ios speichern?
- 11. Können wir keine Android-Anwendung mit nur Java entwickeln?
- 12. Können wir nur Audio mit youtube api für iPhone
- 13. Können wir google map mit der designierten Sprache nach Absicht starten?
- 14. JQuery wir können die Werte nicht bekommen
- 15. Wie wir die Joomla Webseite beschleunigen können
- 16. Können wir Daten von einem Gerät über Bluetooth abrufen?
- 17. Können wir den iOS-System-Klingelton in iOS abrufen?
- 18. Können wir die Adresse für Stringliteral ausdrucken?
- 19. Können wir die Tabelle All_objects mit dem Sys-Benutzer ändern?
- 20. Können wir Elemente manipulieren, die ausgeblendet wurden?
- 21. Wie können wir die LETZTE Seite mit JPA berechnen?
- 22. Können wir die tvOS-App nicht speichern?
- 23. Können wir die Sitzung in Mulesoft verwalten?
- 24. Können wir die Suche in yii2 gridview
- 25. Ausweichfunktion mit Auslassungspunkten: Können wir die Größe des Parameterpakets erzwingen?
- 26. können wir die Spaltengröße von WP_LIST_TABLE ändern?
- 27. Können wir die E-Mail-Adresse eines Twitter-Benutzers über die Twitter-API abrufen?
- 28. Warum können wir keine Aktivität mit einem neuen Keyword erstellen?
- 29. Können wir bestätigen 0 mit Regex
- 30. Können wir nur eine Verfügbarkeitszone für einen replizierten Cassandra-Cluster