2017-09-03 9 views
0

QnAMakerDialogとカスタムIntentDialogの両方を同時に動作させることはできますか?そのため、QnA MakerはナレッジベースからのFAQ関連のすべての質問に回答し、いくつかのカスタムコマンドをBotFrameworkにハードコードすることもできます。以下のようなBotフレームワーク:QnA MakerとIntentDialogsを持っています

何か:私は '試験' と入力

var basicQnAMakerDialog = new cognitiveservices.QnAMakerDialog({ 
    recognizers: [recognizer], 
    defaultMessage: 'Sorry, I did not understand that.', 
    qnaThreshold: 0.3 
}); 

bot.dialog('/', basicQnAMakerDialog); 

bot.dialog(new builder.IntentDialog() 
.matchesAny([/Test/i], [ 
     function (session) { 
      session.send('This is not from QnA Maker'); 
     } 
]) 
); 

私の現在の出力は、私はそれを考え出したQnAシリーズメーカー

答えて

1

からdefaultMessageです。このコードは私に望ましい出力を与えました:

var qnarecognizer = new cognitiveservices.QnAMakerRecognizer({ 
    knowledgeBaseId: '', 
    subscriptionKey: '', 
    top:4}); 

var intentrecognizer = new builder.IntentDialog(); 

var intents = new builder.IntentDialog({ recognizers: [intentrecognizer, qnarecognizer] }); 
bot.dialog('/', intents); 

intents.matches('qna', [ 
    function (session, args, next) { 
     var answerEntity = builder.EntityRecognizer.findEntity(args.entities, 'answer'); 
     session.send(answerEntity.entity); 
    } 
]); 

intents.matchesAny([/Test/i], [ 
     function (session) { 
      session.send('This is not from QnA Maker.'); 
     } 
]); 

intents.onDefault([ 
     function (session) { 
      session.send('Sorry, I don\'t know that.'); 
     } 
]); 
関連する問題