我正在使用MS LUIS构建聊天机器人。当文件名出现在问题中时,它会检测文件名上的名称,日期,数字作为实际实体,而不是。文件名显然是在引号内。仍然LUIS将这些作为实体。
有没有办法告诉LUIS停止将引号内的单词识别为实体。任何帮助将不胜感激。
不幸的是,LUIS绑定了所有可能的实体,并且无法有选择地删除它们 - 它们只能从应用程序中完全删除。
但是,您可以通过几种不同的方式在代码中处理此问题:
当结果从LUIS返回时,您可以选择性地查看实体。伪代码可能是这样的
// If turnContext.activity.Text doesn't contain "", do something with entities
如果您根本不希望LUIS处理文件名,您也可以在代码中忽略它们。代码将是这样的:
var recognizerResult = {};
if (!turnContext.activity.Text.contains("/"))
{
recognizerResult = await _services.LuisServices[LuisKey].RecognizeAsync(turnContext, cancellationToken);
}
将切换到实体视图右上角切换到标记视图
实体正则表达式:^(.*/)([^/]*)$
之前:
之后(注意:我只为“/”注册而不是“\”):