什么是Amazon Lex内置插槽类型用于描述或注释?

问题描述 投票:1回答:1

我已将我的AWS Lex机器人配置为“安排会议”和“添加笔记”任务。

会议安排期间,我有一个“会议描述”栏,用户可以在其中为一个句子添加一个单词。同样,对于添加注释,我也有“注释”。

对于该插槽,我找不到任何内置插槽类型,例如'AMAZON.Description'或任何可以存储单词或句子的类型。我尝试使用“ AMAZON.VideoGame”,“ AMAZON.Food Establishment”等。但是发现这些问题存在间歇性问题。有时他们工作,有时却不工作。

任何人都知道我可以使用哪种插槽类型的机箱吗?请分享。

amazon-lex
1个回答
0
投票

[如果您想捕获任何输入,则要使用自定义SlotType。

当您通过赋予它SlotType值“训练”该SlotType时,您应该包括各种各样的名称,例如数字,单个字母,单个单词,短语和整个句子。

即使不会总能抓住您想要的东西。因此,比这更好的是,您可以使用Lambda函数自行解析和验证整个输入。而且很可能只需将您的广告位值设置为整个输入字符串即可。

例如:

用户:“添加到我的笔记”Bot:“好吧,您想让我在笔记中保存些什么?”用户:“多买卫生纸。”

现在,用户希望整个短语都在笔记中。您必须像这样在您的Custom SlotType中使用语音:

我想{note}前往{note}购买{note}{note}

这些话语有时会漏掉一些单词,在此示例中,仅放置“更多厕纸”,而不用“购买”作为广告位值。这就是为什么您要自己解析整个输入的原因。因此,在Lambda中,您可以从inputTranscript中获取全部输入。

userInput = event.inputTranscript
slotNote = event.currentIntent.slots.note

然后,您可以比较这两个并自己进行花式验证,或直接将用户输入保存到笔记插槽中。

userInput = event.inputTranscript
event.currentIntent.slots.note = userInput
© www.soinside.com 2019 - 2024. All rights reserved.