botframework - 创建 LUIS 模型时为什么应使用复合实体?

标签 botframework azure-language-understanding

我从使用 Bot Framework 和 LUIS 的机器人开始。现在我有点难以理解为什么应该使用复合实体。到目前为止,我从 LUIS 文档中得到的是复合实体用于将常规实体分组到“类别”下。

如果我的机器人允许用户订购披萨,我将需要例如三个实体:披萨的数量、尺寸和披萨的名称。我知道我可以将这些实体分组到一个名为 OrderInformation 的复合实体下。但我这样做能得到什么好处呢? LUIS 方面的性能?更好的学习?

我问这个是因为这是 LUIS 返回的 JSON。我仍然得到所有常规实体,就像我需要它们一样。

{
  "query": "I want to order 3 big pepperoni pizzas",
  "intents": [
    {
      "intent": "OrderFood",
      "score": 0.999999046
    },
    {
      "intent": "None",
      "score": 0.13833718
    },
    {
      "intent": "FindNews",
      "score": 0.0120750656
    }
  ],
  "entities": [
    {
      "entity": "3",
      "type": "Number",
      "startIndex": 16,
      "endIndex": 16,
      "score": 0.925765157
    },
    {
      "entity": "big",
      "type": "Size",
      "startIndex": 18,
      "endIndex": 20,
      "score": 0.926587939
    },
    {
      "entity": "pepperoni pizzas",
      "type": "Food",
      "startIndex": 22,
      "endIndex": 37,
      "score": 0.8726012
    },
    {
      "entity": "3 big pepperoni pizzas",
      "type": "Order",
      "startIndex": 16,
      "endIndex": 37,
      "score": 0.8385274
    }
  ],
  "compositeEntities": [
    {
      "parentType": "Order",
      "value": "3 big pepperoni pizzas",
      "children": [
        {
          "type": "Number",
          "value": "3"
        },
        {
          "type": "Food",
          "value": "pepperoni pizzas"
        },
        {
          "type": "Size",
          "value": "big"
        }
      ]
    }
  ]
}

复合实体如何让我在机器人方面的生活变得更轻松?

最佳答案

在捕获“两张去巴黎的成人门票”之类的内容时,复合实体会很有用;您会捕获“两个”和“巴黎”是单独的实体,而“成人门票”是一个复合实体,它不仅定义“门票”,还定义子类型“成人”。

“成人”不需要单独成为一个实体,而是作为复合实体的一部分存在。

关于botframework - 创建 LUIS 模型时为什么应使用复合实体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40182666/

相关文章:

rest - 微软机器人框架自行崩溃

c# - 在 FormFlow、BotFramework 中使用 List<T> 时缺少第一个选项

c# - 连接机器人与模拟器

c# - 解析 LUIS builtin.datetime.date

node.js - 在 Microsoft BotFramework v4 node.js 中将对话框与 Luis 连接

c# - 如何更改默认的 "Sorry, my bot code is having an issue"异常消息?

c# - Form Flow 机器人定制问题

azure - 如何获得检测到的实体的置信度得分?

node.js - Botframework 在完成当前意图对话框之前不会中断其他意图对话框

azure-language-understanding - 文本长度不能超过限制50