考虑到我有一个名为“ TurnOn”的简单实体,并且已经用“ on”一词对其进行了培训,因此在Luis中,每当我使用单词on
时,它将其标记为“ TurnOn”实体,但是我通过使用节点js的API来添加话语,它没有将on
捕获为'TurnON'实体,并且我已经通过在其中指定entityName,startCharIndex
,endIndex
来标记标签实体表参数,但是我想让它自动捕获,任何人都可以告诉我该怎么做。
答案 0 :(得分:1)
在API中指定了正确的JSON。不要使用startIndex或endIndex。而是使用startCharIndex和endCharIndex,然后出现一个例子
[{
"text": "go to Seattle today",
"intentName": "BookFlight",
"entityLabels": [
{
"entityName": "Location::LocationTo",
"startCharIndex": 6,
"endCharIndex": 12
}
]
},
{
"text": "a barking dog is annoying",
"intentName": "None",
"entityLabels": []
}]
答案 1 :(得分:0)
但是我想让它自动捕获,任何人都可以告诉我该怎么做
我认为您可能会混淆训练目标和预测目标的目的。如果通过LUIS Programmatic API提供话语,则应提供有关该话语的元数据,例如意图名称和实体位置。
如果您不提供实体的位置(开始和结束),并给它们加上标签,LUIS将会理解,正如您所说的,给定的话语没有实体。这可能会导致您的模型出现问题。
LUIS仅在使用预测端点时尝试检测并为您提供实体。如果您考虑一下,提供培训数据并希望LUIS对此做假设就没有多大意义。