Javascript 让聊天机器人(wit.ai)回复它不';我没有正确的答案
我正在为我的聊天机器人使用Javascript 让聊天机器人(wit.ai)回复它不';我没有正确的答案,javascript,node.js,chatbot,wit.ai,Javascript,Node.js,Chatbot,Wit.ai,我正在为我的聊天机器人使用Wit.ai。问题是我的机器人总是试图回答一些问题。我只会让我的机器人回答,如果它真的理解了被问到的问题。我知道这是可能的,但是如果我有一个回复很少的机器人,它似乎总是选择其中一个回复,即使它被问到完全不同的问题 我想有可能让它回答“对不起,我不知道你在问什么,我可以帮你……” 也许我应该使用我可以检索到的置信度值,并确保它高于某个阈值?现在处理此问题的最佳方法是创建一个或多个具有范围外请求的故事,并将策略为“trait”的“catchall”实体添加到用户消息中(更多
Wit.ai
。问题是我的机器人总是试图回答一些问题。我只会让我的机器人回答,如果它真的理解了被问到的问题。我知道这是可能的,但是如果我有一个回复很少的机器人,它似乎总是选择其中一个回复,即使它被问到完全不同的问题
我想有可能让它回答“对不起,我不知道你在问什么,我可以帮你……”
也许我应该使用我可以检索到的置信度值,并确保它高于某个阈值?现在处理此问题的最佳方法是创建一个或多个具有范围外请求的故事,并将策略为“trait”的“catchall”实体添加到用户消息中(更多详细信息) 在最简单的情况下,“catchall”实体将有一个值。您可以有多个值,例如,如果您希望为不同类型的范围外请求提供不同类型的答案,但请记住,您的机器人越复杂,您需要的故事和数据就越多,以使其正常工作
我们也在努力寻找一个更优雅的解决方案。请继续关注:一个简单的解决方案是创建一个没有意图的故事,机器人会回答类似“我不明白”的问题
本故事将在没有其他相关意图时开始。根据我们的经验,它工作得相当好。您可以创建一些函数来处理用户输入消息的意图
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;
}
}
希望这个想法有帮助!:) 看起来“故事”在wit.ai中不受欢迎-有不同的解决方案吗?