我正在使用Wit.ai
聊天机器人。问题是我的机器人总是试图回答一些问题。如果它实际上理解了被问到的内容,我将只做我的机器人答案。我知道这是可能的,但如果我的机器人很少回复,它似乎总是选择其中一个回复,即使它被问到完全不同的东西。
我想有可能让它回复像#34;我很抱歉。我不知道你在问什么。我可以帮助你......"。
也许我应该使用我可以检索的置信度值,并确保它高于某个阈值?
答案 0 :(得分:4)
目前解决此问题的最佳方法是使用超出范围的请求创建一个或多个故事,并添加一个" catchall"具有策略的实体" trait"到用户消息(更多详细信息here)。
在最简单的情况下,你的" catchall"实体将具有单一价值。您可以拥有多个值,例如,如果您需要针对不同类型的超出范围的请求提供不同类型的答案,但请记住,您的机器人越复杂,您需要制作的故事和数据就越多它工作正常。
我们正在研究更优雅的解决方案。敬请关注:https://github.com/wit-ai/wit
答案 1 :(得分:2)
一个简单的解决方案是创建一个没有意图的故事,机器人回答类似的问题;我不理解"
这个故事将在没有其他意图相关的情况下开始。根据我们的经验,它的效果非常好。
答案 2 :(得分:0)
您可以创建一些函数来处理用户输入消息的意图。
function handleIntent(intent, sender) {
switch(intent) {
case "jokes":
//Do Something
break;
case "greeting":
//Do Something
break;
case "identification":
//Do Something
break;
case "movie":
//Do Something
break;
default: // Any other intensions go here..
sendTextMessage(sender, "I couldn't understand that one :(")
break;
}
}
希望这个想法有所帮助! :)