我有以下@fields
实体:
innovation
=> change management
(作为同义词)
当我在对话框中输入以下内容时,
show me innovation and change management fields
我得到了重复的实体:
{
"intents": [
{
"intent": "do.something",
"confidence": 0.9974480628967286
}
],
"entities": [
{
"entity": "fields",
"location": [
23,
40
],
"value": "innovation",
"confidence": 1
},
{
"entity": "fields",
"location": [
8,
18
],
"value": "innovation",
"confidence": 1
}
]
}
我希望只获得一个,因为我只有一个innovation
或change management
值的实体。我确定没有其他实体拥有这两个关键字。
这是一个错误!或者它的正常行为!
答案 0 :(得分:0)
在输入show me innovation and change management fields
中确实出现了两次@fields
实体。首先,创新一词,由实体捕获(注意位置索引从8到18个字符):
{
"entity": "fields",
"location": [
8,
18
],
"value": "innovation",
"confidence": 1
}
其次,change management
,它是innovation
的同义词,由实体捕获(注意位置索引从23到40个字符):
{
"entity": "fields",
"location": [
23,
40
],
"value": "innovation",
"confidence": 1
}
作为一个值,会话服务始终输出规范实体值,在这种情况下为innovation
。要获取有关被识别为实体@fields
值innovation
的确切文字的信息,可以键入entity['fields'].get(0).literal
和entity['fields'].get(1).literal
。
请注意,最好事先检查用户输入中已识别实体的数量 - 以避免访问实体数组中不存在的索引。