休日の週末に、私はMicrosoft Bot Frameworkを使ってボットを稼働させようとしています。 Node.jsのbotbuilderパッケージのバージョン3.9.1を使用しています。LUISをMicrosoftボットフレームワークに接続
私はwww.luis.aiでアプリとモデルを作成しました。 「Train &テスト」機能を使用して、自分の意図を正常にテストできました。その後、私の実際のノードのコードで、私は以下の持っている:「?あなたは何をお願いしました」
let connector = new BotBuilder.ChatConnector({
appId: 'myId',
appPassword: 'myAppSecret'
});
let bot = new BotBuilder.UniversalBot(connector);
let luis = new BotBuilder.LuisRecognizer('myLuisAppUrl');
let intent = new BotBuilder.IntentDialog({ });
intent.recognizer(luis);
intent.matches('Intent.1', '/execute-report');
intent.matches('Intent.2', '/execute-batch-job');
intent.onDefault('/unknown');
bot.dialog('/', intent);
bot.dialog('/execute-report', [function(session, args, next) {
var result = ((Date.now() % 2) === 0) ? 'Report Ran!' : 'Failed';
session.send(result);
}]);
bot.dialog('/execute-batch-job', [function(session, args, next) {
var result = ((Date.now() % 2) === 0) ? 'Batch Job Ran!' : 'Unable to run Batch Job';
session.send(result);
}]);
bot.dialog('/unknown', [function(session, args, next) {
session.send('What did you ask for?');
}]);
私のボットとの対話、私は常に取得します。言い換えれば、この時点で、私はそれを知っています:
- 私は正常に私のボットと対話することができます。しかし、
/unknown
ダイアログが常に呼び出されていますが、これは正しい対話ではありません。 ルイスのマイモデルは正しく見えます。
a。 LUIS.aiテストアプリで「Run Report」と入力すると、最高スコアのインテントは「Intent.1」
bです。私はLUIS.aiテストアプリで「バッチジョブを実行する」と入力した場合は、トップスコアの意図は、「Intent.2」である
しかし、私のボットは、適切な応答を送信していません。 /execute-report
と/execute-batch-job
ダイアログは、使用する必要がある場合でも使用されることはありません。私は何が間違っているのか分かりません。私にとって、私はボットを正しくセットアップしたと信じています。私は何が間違っているのか分かりません。誰かが私が間違っていることを教えてもらえますか? LUIS.aiの "Test"アプリに表示されているものと同様のNodeコードでLUISから返された応答を確認する方法はありますか?
'LuisRecognizer'の89行目の意味が分かりません。私は、あなたがbotbuilder.d.tsファイルを意味すると仮定しました。しかし、そこに関連する行はありません。あなたが何を言及しているのか教えてください。さらに、私はLUISアプリケーションを公開したことを確認しました。 –
これは私が参照している[行](https://github.com/Microsoft/BotBuilder/blob/master/Node/core/lib/dialogs/LuisRecognizer.js#L89)です。あなたのローカルパスについては、 '。/ node_modules/botbuilder/lib/dialogs/LuisRecognizer.js' –
あなたの助けをありがとう! –