我最近做了一个基本的聊天机器人,让我的朋友测试它。她说了许多胡言乱语,路易斯的结果使我感到困惑。
例如,她将输入)(*)($*#)(!*#&$*#&$*#&)$(*)(!*)(!@*09837$)(@*#||||,LUIS将此标识为我检查数据库状态的意图之一。我唯一能想到的就是它包含了09837,一个数字,并从那里触发了特定的意图。但是,用于检查数据库状态的数字实体是复合实体( part )的一部分。这对我来说毫无意义。
为了消除number实体,我缩短了查询到)(*)($*#)(!*#&$*#&$*#&)$(*)(!*)(!@*,但它仍然触发相同的意图,只是现在没有实体。
我能理解如何从用户输入中确定意图吗?我必须在None 意图中添加特定的用户输入吗?如果是这样的话,难道没有太多的胡言乱语来防止这种情况发生吗?
如果你需要更多的信息来回答这个问题,请告诉我!:)
发布于 2018-03-07 15:19:56
路易斯是一个自然语言处理器。您的例子不是自然语言,所以您需要在使用LUIS将其转化为自然语言之前提供处理,或者在LUIS中使用它不适合的能力--此时。
该无意图培训路易斯所有的话语,是在领域/范围以外的应用程序。最好的地方,找到这些是在你目前的话,从客户。
https://stackoverflow.com/questions/49145620
复制相似问题