如何通过计数变量<获取矩阵 ITENS? @entity[$count].文字 ?> 在 Watson 助手(对话)



我需要从实体数组中获取所有用户输入文字。例如,

用户输入:

我想看海豚,大象和狗

实体:

{ "type": "synonyms", "value": "animalcheck", "synonyms": [ "dolphins", "elephant", "dogs", "dog", "dolphin", "girafe" ] }

所以。。需要用户输入文字:["海豚","大象","狗"]

我正在尝试这个:

<? @entity[$count].literal ?>

其中$count=1,并且将递增,直到到达@entity.values.size((,但括号内的$count返回错误,它不起作用。

有什么建议吗?

我确实认为你似乎在为自己努力工作。你有什么理由不能拥有一个拥有自己动物类型列表的实体组,即动物,它本身包含["海豚"、"大象"、"狗"]的值。这样,如果用户的问题包含这些值中的任何一个,他们将在实体数组中出现动物:["海豚"、"狗"]等。

这反过来又更容易在助手内部处理。没有什么可以阻止你同时拥有实体组"动物"one_answers"动物检查"。(尽管animalcheck似乎是你的值,但不确定你的实体实际上被称为什么。你的例子使用了@entity,但肯定这会被允许作为实体名称。(同样要访问您的实体,比如说,如果它被称为"entitylist",您需要使用

查看文档;https://cloud.ibm.com/docs/services/assistant?topic=assistant-表达语言

问题可能是$count变量未被视为整数,并且只有整数可以用于访问WA中的数组。

此表达式将确保$count变量的内容将被视为整数,因此可以访问WA:中的数组

<? @entity[$count.toInt()].literal ?>

最新更新