使用节点Js通过api自动将实体标签映射为语音

时间:2018-08-22 11:56:33

标签: node.js luis

考虑到我有一个名为“ TurnOn”的简单实体,并且已经用“ on”一词对其进行了培训,因此在Luis中,每当我使用单词on时,它将其标记为“ TurnOn”实体,但是我通过使用节点js的API来添加话语,它没有将on捕获为'TurnON'实体,并且我已经通过在其中指定entityName,startCharIndexendIndex来标记标签实体表参数,但是我想让它自动捕获,任何人都可以告诉我该怎么做。

2 个答案:

答案 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对此做假设就没有多大意义。