所以我试图了解用户选择实体数组的话语,下面是一些示例话语:
$CFG->default_timezone = 'America/New_York';
$time = $dtz = new DateTimeZone($CFG->default_timezone);
因此在上面的示例话语中,我应该能够获得以下实体:
My choices are 1, 2, 3, and 4
Let's go with Red Blue Yellow
How about January and February and March
I want A & B & C
我之前没有选择,所以我不能训练它们。但是我希望能够理解用户选择的多个选择。路易斯有可能吗?
我想我可以通过使用定界符和正则表达式来模拟用户输入来模拟NLU。但是,如果用户使用其他定界符,那将行不通。或者,如果用户在手之前附加了很多内容。
答案 0 :(得分:1)
您可以通过创建名为Simple
的{{1}}类型的实体并添加类似的话语并用该实体标记选项来解决该问题,如下所示:
Luis作为AI,非常擅长识别模式,这些话语具有非常明确的模式,即:
讲话:Choice
+ Prefix
+ Choice1
+ delimiter
+ Choice2
+ ... + delimiter
存在
ChoiceN
:“我的选择是”,“我们一起去”,“怎么样”等等。Prefix
:任何单词Choice
:“,”,“和”,“”等这大致就是Luis检测到的模式,在这种情况下,它将检测到delimiter
之后由prefix
分隔为delimiter
的任何内容。像
我要汽水,汉堡和薯条
将导致:
即使我们没有指定路易斯将choice
soda
和burger
指定为有效选择,他仍然会这样检测到它们!
这是我为此答案创建的Luis模型:https://github.com/navelDirt/luis-apps/blob/master/ChoiceDetect/ChoicesApp.json
您可以通过以下方式将其导入Luis:转到YourApp->管理->版本->导入版本
编辑:
它应该检测fries
个选择