我有一个对话框,用户可以输入一个或多个国家/地区名称。 如何从定义存储响应的实体中检索值。IBM Watson对话:如何捕获和检索变量中的值列表
举例: 实体:国家
问:你是从哪里旅游呢?
答:非洲,泰国和 中国。
如何在列表实体中捕获这3个值?
我有一个对话框,用户可以输入一个或多个国家/地区名称。 如何从定义存储响应的实体中检索值。IBM Watson对话:如何捕获和检索变量中的值列表
举例: 实体:国家
问:你是从哪里旅游呢?
答:非洲,泰国和 中国。
如何在列表实体中捕获这3个值?
可以使用system entity for locations, @sys-location
提取。您需要为您的工作区启用该功能。查看实体创建向导。
在您想要在列表中捕获输入的对话框节点中,您可以将这些国家/地区分配到context variable。切换到JSON编辑器来编辑变量。然后执行如下操作:
"context": {
"countries": "<? entities['sys-location'] ?>"
},
请参阅我的collection of examples for context processing了解类似内容。
亨里克是正确的,只是要补充的, 他表示将返回他们在一个数组,如果你这样做
"countries": "<? entities['sys-location'] .toString() ?>"
你会得到位置的逗号分隔的列表返回什么。
它非常简单。使用
"countries": "@sys-location.values"
它将以数组形式列出所有@sys-location值。
你在使用sys-location实体吗? –
是的。只是似乎无法得到回应,有3个值被捕获。保持显示第一个值。明天早上将试试你的建议。谢谢。 – DLim