我开发了一个chatbot,它以用户首选项为目的地。 在这种情况下,我返回响应卡,询问他们是否要选择这四个目的地中的任何一个(显示为该响应卡的按钮)。用户可以选择其中一个或输入他自己的一个。 上述插槽类型配置为AWS.Country。但问题是如何处理未知的响应,例如当用户输入"无"或者"我不知道"。在这种情况下,Lex将上述插槽的确切文本传递给Lambda。我认为它不应该。无论如何为了处理这种情况,我们应该检查lambda是否有这样的未知表达式,因为lambda需要通过询问更多问题(或触发另一个意图)来回应它。
唯一值得关注的是我们最终在Lambda中硬编码以与#34; None"进行比较,我不知道等等,并且没有机器学习。
此致 RAGHAV
答案 0 :(得分:1)
我们必须在lambda中处理这种特殊情况,没有别的办法。此过程称为规范化,在某些复杂的机器人中需要db来管理。不幸的是,lex ML仅限于标准插槽和标准意图改进。
虽然这个未知的响应是较小的问题需要处理,但是当你不使用响应卡时(意味着用户可以输入任何输入)并且你需要将该值捕获到一个插槽中然后采取必要的操作时,会出现更大的问题(拨打服务电话)。在这种情况下,生活变得更加艰难,因为我们必须在后端维护一个规范化字典。