Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js LUIS Bot无法在用户话语中找到实体_Node.js_Azure_Botframework_Azure Language Understanding - Fatal编程技术网

Node.js LUIS Bot无法在用户话语中找到实体

Node.js LUIS Bot无法在用户话语中找到实体,node.js,azure,botframework,azure-language-understanding,Node.js,Azure,Botframework,Azure Language Understanding,我正在使用EntityRecognizer查找用户话语中存在的实体。下面是您可以找到的官方NotesApp示例。 当我发送LUIS intent中存在的话语时,我在控制台中获得null值。例如:创建名称注释。Title其中注释。Title是实体(注释的标题) 我不确定这里的问题是什么,因为它调用匹配语句上的对话框,但无法找到实体或实体 下面的代码应该在控制台中打印标题 .matches('Note.Create', [(session, args, next) => {

我正在使用
EntityRecognizer
查找用户话语中存在的
实体。下面是您可以找到的官方
NotesApp
示例。 当我发送LUIS intent中存在的话语时,我在控制台中获得
null
值。例如:
创建名称注释。Title
其中
注释。Title
实体(注释的标题)

我不确定这里的问题是什么,因为它调用匹配语句上的
对话框
,但无法找到
实体
实体

下面的代码应该在控制台中打印标题

    .matches('Note.Create', [(session, args, next) => {

        //Resolve and store any Note.Title entity passed from LUIS.
        var intent = args.intent;
        var title = builder.EntityRecognizer.findEntity(intent.entities, 'Note.Title');
        console.log("Title---"+title);

        //extra code ahead...
     }])

首先,正如Ezequiel Jadib在评论中提到的,请检查您是否已经发布了它

其次,如果你的LUIS应用程序仍然无法正确识别实体(或意图),你可以标记更多的话语或改进你的LUIS应用程序的性能


此外,LUIS不可能在所有场景中都是100%智能的,对于某些特定场景,我们可以在我们的代码逻辑中处理它,正如我们可以在下面的代码片段中找到的,如果它没有检测到任何
注释,它将提示输入title。title
从LUIS传递的实体,当LUIS应用程序无法从用户的查询/话语中识别或检测到
note.title
实体时,这为我们提供了另一种获取注释标题的方法

您在这里遇到的主要问题是您正在使用的注释标题未被
LUIS
识别为
note.title
实体。要解决这个问题,您必须对LUIS进行训练,了解其中一些值

如下图所示,在添加Note域后的plain
LUIS
应用程序中,您的发言符合当前意图,但标题未被识别

因此,转到
注释。创建
意图,添加您的话语,并将新标题注释标记为
注释.title
实体

训练应用程序,瞧


你是否培训并发布了LUIS应用程序?@EzequielJadib是的,我有,它识别了意图,但没有识别实体。你在发送什么信息?@EzequielJadib我在发送-“Note.Title是我要创建的新便笺”所以你在发送“Note.Title”?但这是实体的名称,你应该发送一些与该实体相关的值,如“创建我最喜欢的便笺”或“我想创建标题购物列表便笺”不,没有帮助,我对应用程序进行了多次培训,并在LUIS中测试了这些话语,但没有运气。每次更改后,我都会将应用程序部署到生产槽中。我还在Azure Web App Bot中重新检查了我的LUIS ID。一切似乎都很好。我得到了意图,但没有被识别的实体。你试着去做吗?还是使用?这将提高您的LUIS应用程序的性能。是的,它起作用了!。非常感谢。虽然我以前做过同样的事情,但我没有在批量测试面板中测试话语。无论如何,感谢您的指导。但是,当我专门为User.Title实体标记“sarthaksfirstnote”时,它只映射到sarthaksfirstnote,当我说除sarthaksfirstnote之外的任何内容时,它仍然存在同样的问题。我已经添加了一个短语列表,但没有运气。