Dialogflow - Google 助手:@sys.any 实体未捕获数字序列

Dialogflow - Google Assistant: @sys.any entity not catching sequence of digits

我创建了一个 Intent,它输出具有给定参数名称的上下文,比方说 $myParam。这个 Intent 的目标是捕捉一长串数字。我知道有一个 @sys.number-sequence 实体,但我使用的是 意大利语 语言,但这种实体不可用。只有 @sys.number,但我期望用户提供的数字超出了它的范围。

在这些限制下,我选择 @sys.any 作为参数 $myParam 的实体。

问题

当用户输入数字时,在真实设备中,智能助理可能会在数字之间添加一些白色 space(当用户说出这些数字时)。

当助手获取序列 111 222 时,Intent 被触发,一切正常。

但是,当助手获取序列 111222(注意缺少白色 space)时它不起作用。

我原以为 @sys.any 实体会捕获所有输入,但它看起来不像那样。

你知道怎么处理这种情况吗?

我的目标是即使 Google 助理捕捉到序列之间、序列之前或之后没有 space 的数字序列,也能触发意图。

图片:

https://ibb.co/ngBzGtx

@sys.any 实体通常不应用于涵盖短语中的所有内容。对于这种情况,您应该能够使用回退 Intent,然后处理来自用户的整个输入。

最近几天我遇到了这个问题,真的很烦人。突然,出于某种我不知道的原因,助理的 @sys.any 实体不再用于抓取号码。

我的用例与您的用例非常相似,我有一个父 Intent,我要求用户在其中输入代码(10-15 位数字),并且我创建了一个后续 Intent 来处理用户的输入。我使用的语言不同于英语,系统提供的唯一实体是@sys.any

但是它停止工作了!我四处寻找一种方法,以某种方式强制助手输入特定意图,因为现在不仅没有触发后续意图,而且还没有触发回退意图。助手只是坚持父意图并崩溃。

在我花了几个小时发现没有任何用处之后,我尝试了这个对我有用的技巧。 创建意图时,默认情况下它具有 Normal 优先级。将后续意图的优先级更改为 High 解决了我的问题,我想用保存用户输入的实体类型 @sys.any 参数触发。现在它像以前一样正常工作。