如何在导出App时从LUIS中获取在话语中映射的ClosedList实体

时间:2018-02-03 15:52:43

标签: c# botframework luis

我使用此LUIS Export programmatic API导出LUIS版本的LUIS应用程序。

当我导出具有列表实体(ClosedList)的模型时,我没有得到映射到实体列表类型的话语。

请参阅以下JSON,

{
  "luis_schema_version": "2.1.0",
  "versionId": "0.1",
  "name": "DemoApp",
  "desc": "",
  "culture": "en-us",
  "intents": [
    {
      "name": "Ask Person Information"
    },
    {
      "name": "None"
    }
  ],
  "entities": [
    {
      "name": "Age"
    },
    {
      "name": "Name"
    }
  ],
  "composites": [],
  "closedLists": [
    {
      "name": "Hobbies",
      "subLists": [
        {
          "canonicalForm": "Sports",
          "list": [
            "playing sports",
            "cricket",
            "football",
            "hockey",
            "chess",
            "table tennis"
          ]
        },
        {
          "canonicalForm": "Travelling",
          "list": [
            "roaming",
            "travelling",
            "travel"
          ]
        },
        {
          "canonicalForm": "Music",
          "list": [
            "playing music",
            "playing in a band",
            "band",
            "music",
            "singing"
          ]
        }
      ]
    }
  ],
  "bing_entities": [],
  "model_features": [],
  "regex_features": [],
  "utterances": [
    {
      "text": "i am kunal and i like playing football and am 22 years old",
      "intent": "Ask Person Information",
      "entities": [
        {
          "entity": "Name",
          "startPos": 5,
          "endPos": 9
        },
        {
          "entity": "Age",
          "startPos": 46,
          "endPos": 47
        }
      ]
    },
    {
      "text": "i am kunal and i like music",
      "intent": "Ask Person Information",
      "entities": [
        {
          "entity": "Name",
          "startPos": 5,
          "endPos": 9
        }
      ]
    },
    {
      "text": "i am kunal and pushing 22",
      "intent": "Ask Person Information",
      "entities": [
        {
          "entity": "Name",
          "startPos": 5,
          "endPos": 9
        },
        {
          "entity": "Age",
          "startPos": 23,
          "endPos": 24
        }
      ]
    },
    {
      "text": "my name is kunal and i am 22 years old",
      "intent": "Ask Person Information",
      "entities": [
        {
          "entity": "Name",
          "startPos": 11,
          "endPos": 15
        },
        {
          "entity": "Age",
          "startPos": 26,
          "endPos": 27
        }
      ]
    },
    {
      "text": "hi i am kunal and 22 years old",
      "intent": "Ask Person Information",
      "entities": [
        {
          "entity": "Name",
          "startPos": 8,
          "endPos": 12
        },
        {
          "entity": "Age",
          "startPos": 18,
          "endPos": 19
        }
      ]
    },
    {
      "text": "hi my name is john doe and my hobbies are travelling and playing",
      "intent": "Ask Person Information",
      "entities": [
        {
          "entity": "Name",
          "startPos": 14,
          "endPos": 21
        }
      ]
    }
  ]
}

有没有办法从LUIS正在导出的模型中获取标记为List类型实体的话语。

提前谢谢。

1 个答案:

答案 0 :(得分:2)

当重新导入和训练应用程序时,LUIS会重新应用列表实体。

“列表实体不必在话语中标记或由系统训练。 列表实体是显式指定的值列表。与其他实体类型不同,LUIS在训练期间不会发现列表实体的其他值。因此,每个列表实体形成一个封闭集。“