2017-05-08 3 views
0

Wir haben den LUIS-kognitiven Service von Microsoft als ML-Tool für unseren Chatbot verwendet. Wir haben beobachtet, dass immer, wenn ein Schimpfwort eingegeben wird, keine Antwort vom Bot kommt. Ich konnte nichts darüber in den Dokumentationen finden, außer dass LUIS can identify slang words. Ich würde auch gerne wissen, ob jemand weiß, wie Sie die Antwort Ihres Chatbots in einem solchen Szenario anpassen können?Wie filtert Microsoft LUIS Schimpfwörter?

Jede Hilfe wäre großartig. Vielen Dank!

Antwort

1

LUIS nicht Filter swearwords. Für eine Erklärung für die fehlende Antwort von Ihrem Chatbot wäre es notwendig, den Code für den Bot zu sehen. Wenn sich der Benutzer nicht in einem Dialog befindet und ein Schimpfwort ausspricht, sollte Ihr Bot ihn entweder mit einer bestimmten Absicht abbilden, ihn dem Crowd-favorite-Vorsatz zuordnen oder nichts damit tun. Nach meinem Wissen wird der Chatbot nur dann nichts tun, wenn ein Handler für die "None" Absicht nicht definiert ist.

Um eine Äußerung zu behandeln, die Schimpfwörter enthält, ist es notwendig, den Kontext dahinter zu kennen.

An bestimmten Punkten kann das SDK, das Sie verwenden, indirekte Schimpfwörter blockieren. Z.B. ein Benutzer sagt: "# $%! yes!" Zu einer Bestätigungsaufforderung kann der Bot den Benutzer bitten, sich entweder mit einer Ja- oder Nein-Antwort zu wiederholen.

Eine äußerst einfache und aufdringliche Möglichkeit, mit Schimpfworten im Node SDK umzugehen, wäre die Erstellung einer bot.dialog(), die durch die Verwendung von .triggerAction() aktiviert wird. Sie können regexp verwenden, so dass der Chatbot auf Schimpfwörter reagiert, indem er zu diesem Dialog wechselt. Sie können auch eine benutzerdefinierte Intent Recognizer verwenden, um Schimpfwörter zu erkennen.

Verwandte Themen