2016-11-02 2 views
1

Ich versuche, den besten Ansatz zu verstehen, um Schlüsselinhalte während einer Konversation zu extrahieren. Ich verwende ein einfaches Beispiel für eine Reise-Interaktion:Schlüsselinhalt aus einer Konversationsantwort extrahieren

Ich habe eine Konversation erstellt, die Reiseaktivitäten unterstützt, und nach der Begrüßung werden sie gefragt, wie ich Ihnen helfen kann.

Der Benutzer antwortet: Ich habe heute einen Flug nach Las Vegas und muss meine Reservierung ändern.

Definieren der richtigen Intents und Entities Wir schließen daraus, dass sie eine Reservierung ändern möchten. Ich möchte verstehen, wie ich die Antwortschlüsselwörter "Las Vegas" und "Heute" identifizieren und extrahieren kann.

Gibt es einen Ansatz mit Watson-APIs oder muss ich benutzerdefinierten Code schreiben, um die Antwort basierend auf den übereinstimmenden Intents und Entities zu analysieren?

Als Beispiel möchte ich dem Benutzer bestätigen: Ich verstehe, dass Sie heute einen Flug nach Las Vegas haben und Änderungen an dieser Reservierung vornehmen möchten. Ist das richtig?

Schätzen Sie alle Ratschläge, die Sie teilen können.

Antwort

0

Es klingt wie Sie brauchen einen Ort/Ziel/Flughafen-Einheit, für Orte wie Las Vegas, und eine Entität für Tage. Sie können dann Bedingungen in Ihrem Dialogablauf verwenden, die darauf basieren, welcher Entitätswert gefunden wurde, z. B. @place:(Las Vegas). Oder Sie können die übereinstimmende Entität einfach in der Antwort an den Benutzer wiederholen, z. B. I understand you have a flight to @place.

Weitere Informationen zur Verwendung von Entitäten finden Sie in der Dokumentation Dialog reference.

Auch wenn es hilft, gibt es einige Beispiele von Tag Entitäten in der Konversation-Starter-Projekt entities.csv file auf GitHub, und ich bin versucht, eine Entität für Flughafen-Codes dort hinzuzufügen, wenn ich eine Chance bekomme.

Verwandte Themen