Alexa 技能开发:自定义插槽类型的验证行为错误

Alexa skill development: Wrong validation behavior for custom slot types

提问人:So.Vanara 提问时间:11/10/2023 更新时间:11/10/2023 访问量:20

问:

我已经看到了几篇关于这个问题的帖子,但到目前为止,我还没有发现亚马逊方面有任何充分的反应:/。

让我描述一下我的问题:在我的技能中,我使用自定义插槽类型。其中一个称为“IncomeType”,由两个可计算的槽值组成:1)“本金收入”和2)“副业”。在技能互动过程中,我想问用户天气他们的工资是主要收入还是来自副业的收入。这就是我使用自定义类型的原因。请不要试图说服我为此目的使用其中一种内置类型,或者通过询问“这是主要收入吗”和“是/否意图”来处理这个问题(因为这是对所有其他有相同问题的人的首要建议)。

自定义插槽类型及其值

当我为 Alexa 定义提示以引出相应的插槽(在我的情况下称为“IncomeSlot”)时,会发生一种非常奇怪的行为,我用谷歌搜索了几个月来寻找解决方案。

将自定义插槽类型与插槽验证结合使用,我希望 Alexa 首先使用 Alexa 语音提示来请求(希望有效)插槽值作为回报。现在,两种情况之一都可能发生: A) 用户给出有效的回答,例如“我的工资是主要收入”。在这种情况下,一切都很好。无需重新提示。 B) 用户的回答是无稽之谈,例如“我的工资是一根香蕉”。在这种情况下,我想使用槽验证部分中定义的提示(而不是原始提示!!)来强制用户更正其答案。我通过配置验证规则“仅接受插槽类型的值和同义词”并定义这样的提示来尝试这一点。

如果用户的答案有误,请重新提示

但实际发生的事情是,一旦我激活自定义插槽类型的插槽验证(不适用于内置类型 -> 具有内置类型,插槽验证工作得很好!!),Alexa 会做两件事:

  1. 系统突然停止接受正确的用户输入,并对验证提示做出反应。例如,当我通过单击 + 符号并定义提示来激活“仅接受插槽类型的值和同义词”时,Alexa 不再接受诸如“我的薪水来自副业”之类的答案,即使这是我配置的用户话语之一。取而代之的是,Alexa 会播放提示“Uuups,这不是我知道的任何类型。我建议你说原则或副业。
  2. 当输入错误时(例如,“我的工资是一根香蕉”),它不会播放提示,但系统会重复插槽的原始 Alexa 语音提示 -_-。这是非常令人沮丧的,因为它不会提示用户修改他们的答案。一些测试我技能的人报告说,他们只是继续重复错误的句子“我的薪水是香蕉”,因为他们认为Alexa只是不听他们的话。

我是唯一一个在这里看到矛盾行为的人吗?

顺便说一句:对于内置类型,行为是准确的:当第一次询问插槽的值时,Alexa 选择了 Alexa 语音提示。当没有给出答案时,会重复此 Alexa 语音提示。只有当输入错误时,系统才会选择验证部分中定义的提示。我希望自定义类型具有相同的行为。

验证 提示 alexa-slot

评论


答: 暂无答案