我是LUIS的新手,我还在努力解决问题,我似乎无法弄清楚的一件事就是如何让我的LUIS应用识别哪些实体属于同一个当一个话语中有多个实例时,复合实体。我知道这令人困惑,让我试着更好地解释一下:
我的测试应用程序是关于订购的东西。
我有这句话:
为我买2个红辣椒辣椒和一个惊人的蜘蛛侠形象
返回的JSON是:
{
"query": "purchase for me 2 red hot chilli pepper albuns and an amazing spiderman figure please",
"topScoringIntent": {
"intent": "Order",
"score": 0.9981847
},
"intents": [
{
"intent": "Order",
"score": 0.9981847
},
{
"intent": "Read",
"score": 0.0023417694
},
{
"intent": "None",
"score": 0.00118408469
}
],
"entities": [
{
"entity": "red hot chilli pepper albuns",
"type": "Item.Description",
"startIndex": 18,
"endIndex": 45,
"score": 0.8821352
},
{
"entity": "amazing spiderman figure",
"type": "Item.Description",
"startIndex": 54,
"endIndex": 77,
"score": 0.9167113
},
{
"entity": "2",
"type": "Item.Quantity",
"startIndex": 16,
"endIndex": 16,
"score": 0.9843564
},
{
"entity": "an",
"type": "Item.Quantity",
"startIndex": 51,
"endIndex": 52,
"score": 0.948889554
}
]
}
它正确识别实体,但它不知道" 2"对应于红辣椒辣椒"红辣椒辣椒"和" an"对应于#34;惊人的蜘蛛侠形象"
我的实体是:
Item.Quantity - simple entity
Item.Description - simple entity
Item.Number - simple entity
Item - composite entity with the above as children
这甚至可以吗?
答案 0 :(得分:1)
是的,完全有可能。而且您正在使用复合实体的正确轨道,只需要更改复合实体的培训。首先,对于复合实体,应添加和训练子实体(您已完成)。
接下来是标记复合实体。转到订单意图,任何话语都可以说:
为我购买2个红辣椒辣椒albns
选择 Item.Quantity
实体,然后从列表中选择 Wrap in composite entity 。将出现一个绿线,现在将光标向右移动直到红辣椒辣椒(或直到你要包装的任何实体),你会发现绿线跟随指示复合实体。从显示的列表中选择合成名称 Item
。
对于同一话语中的多个复合实体,例如
为我买2个红辣椒辣椒和一个惊人的蜘蛛侠形象
重复相同的过程,除了第一个复合实体将被包装并训练为2 red hot chilli pepper albuns
,下一个复合实体将被包裹并训练为an amazing spiderman figure
不要忘记训练和发布LUIS应用程序。
要更深入地了解复合实体,请查看Luis tutorial - composite entity