我正在设计一个Alexa Skill,我当然正在尝试设计一个能够预测很多话语的交互模型,这样我才能实现合适的处理程序。但是如果用户询问我没想到的东西,我真的想捕获这个并得到通知或者至少记录下来以便我可以从现实世界的用法中学习并提高技能。我怎么能这样做?
答案 0 :(得分:1)
Amazon Alexa开发团队正在逐步淘汰AMAZON。文字支持。替换为AMAZON.SearchQuery。您不能仅仅通过提供插槽名称来取消,还需要附带支持短语。
有一种方法可以做到这一点。您可能无法捕获全部话语,但您可以充分利用用户所说的话。
诀窍是使用5W原理(基本英语)。您的模型将具有 为什么,何时,何地,如何工作,什么 ,其余就是插槽。它在95%的时间内都有效。
按如下所示对模型进行采样。
{
"name": "UseSearchQuery",
"slots": [{
"name": "UserInput",
"type": "AMAZON.SearchQuery"
}],
"samples": [
"isn't {UserInput}",
"is {UserInput}",
"How {UserInput}",
"Where {UserInput}",
"Why {UserInput}",
"What {UserInput}",
"When {UserInput}"
]
}
我尝试了同样的方法,发现它对我有用...我能够捕捉用户所说的大部分内容。
比方说,用户,在这里违反了您的辩护。使用AMAZON.FallbackIntent。
希望这对您有用!快乐的编码。
-A
答案 1 :(得分:0)
我认为不可能捕捉到你没有预料到的话语。亚马逊Alexa从不提供话语或用户所说的对话文本,就像Google对话框为您提供实际文本的方式一样。最好的办法是使用 alexa sdk states 并让 catchAll 意图抓住那些类型的话语。