我想从意图中检测实体,该意图可能以多种方式编写:
AB 123456
AB 123 456
AB123456
AB 是封闭列表中的一个选项,其余部分应检测为数字。只要 AB 和编号之间有空格,就会检测/解析列表项和编号。
我发现了模式功能,并希望这可以帮助解析器。
不幸的是,该实体仍然无法识别。我试图以不同的方式编写模式,但没有成功。
^([A-Za-z]{1,2}(([0-9 ]+($
([a-z]{2}(([\d ]+(
[a-z]{2}[\d ]+
知道吗?
AB 是封闭列表中的一个选项,其余部分应检测为数字。只要 AB 和编号之间有空格,就会检测/解析列表项和编号。
如果"AB"
来自封闭列表实体,则应为数字创建一个简单实体和一个复合实体以将两者固定在一起。简单实体需要使用一些语句进行训练,例如"123456"
、"123 789"
、"456789"
、"201731"
,然后模型(在模式特征的正则表达式模式的帮助下,[d]{6}
(应该能够处理其余的。
您将使用列表实体和新创建的简单实体作为复合实体的子实体。一个可能是"产品"或更好的东西。
我想你可能会认为封闭列表是机器学习的,但事实并非如此。它与语句直接匹配,因此,如果列表实体具有以下内容:
canonicalForm: "ProductId"
synonyms: "AB", "BA", "AB 123456"
并且言语"BA 123456"
由模型处理,LUIS 模型会将"BA"
识别为"ProductId"
,根本不识别"123456"
。推而广之,整个话语不会被识别为一个"ProductId"
。
仅当没有空格时才存在此问题。如果我用"AB123456"训练,我不能只标记"AB"。我只能选择整个单词。
Luis 仅分析文本,并帮助你获取工作所需的终结点和上下文。它不会执行编程活动,例如读取字符串的某个部分并分配给实体......至少现在还没有