我试图在我的node.js机器人中集成LUIS api的v2,但它无法正常工作

时间:2016-11-16 10:07:31

标签: node.js botframework luis

以下代码适用于LUIS v1,但不适用于v2。

任何人都知道更新/使用v2?

        var bot = new builder.UniversalBot(connector);
         server.post('/api/messages', connector.listen()); 
          var recognizer = new builder.LuisRecognizer('https://api.projectoxford.ai/luis/v2.0/apps/956c-4784-a26d-b7fb3e00df7b?subscription-key=492514272a354088915b56321');
              var intents = new builder.IntentDialog({ recognizers: [recognizer] });
                                            bot.dialog('/', intents);

               intents.matches('TSUGGEST', [
                      function (session, args, next) {
                       var task = builder.EntityRecognizer.findEntity(args.entities);
              var task1=builder.EntityRecognizer.findEntity(args.entities,'builtin.number');
        if (!task1) {
                  builder.Prompts.text(session, "Please tell article name");

                     } 

          else {
      next({ response: task1.entity });
           }
      },
      function (session, results) {
         if (results.response) {
        // ... save task
           session.send("Ok... '%s' task.", results.response);
           } else {
         session.send("Ok");
               }
               }]);

2 个答案:

答案 0 :(得分:2)

似乎他们几天前在Node.js上添加了对v2的支持,每个this commit到主分支;但是,它还没有作为npm包发布。

您可能必须从GitHub存储库获取该库并尝试使用它而不是发布的包;或者您可以通过执行以下操作来使用构建器的预发布版本:

npm install --save botbuilder@next

讨论了here

答案 1 :(得分:2)

与ms团队联系后,这确实是一个错误。快速解决方法是在luis v2端点末尾添加“& verbose = true”