【发布时间】:2017-02-18 04:49:49
【问题描述】:
在使用 Alexa 技能套件测试我的交互模型时,我发现了一些奇怪的东西。
我定义了一个自定义插槽类型,如下所示:
CAR_MAKERS Mercedes | BMW | Volkswagen
我的意图方案是这样的:
{
"intents": [
{
"intent": "CountCarsIntent",
"slots": [
{
"name": "CarMaker",
"type": "CAR_MAKERS"
},
...
带有示例话语,例如:
CountCarsIntent Add {Amount} cars to {CarMaker}
现在,在开发者控制台中进行测试时,我注意到我可以编写如下内容:
"Add three cars to Ford"
它实际上会正确解析它!尽管交互模型中从未提及“福特”! lambda 请求是:
"request": {
"type": "IntentRequest",
...
"intent": {
"name": "CountCarsIntent",
"slots": {
"CarMaker": {
"name": "ExpenseCategory",
"value": "whatever"
},
...
这真的让我很吃惊,因为custom slot types 上的文档非常清楚地表明槽只能采用交互模型中列出的值。
现在,似乎值也是动态解析的!这是一项新功能,还是我遗漏了什么?
【问题讨论】:
-
我注意到用户@samiles 在回答这个问题时分享了我的观察:stackoverflow.com/a/34078869/1375015
标签: alexa alexa-skills-kit alexa-skill alexa-slot