如何在ms bot框架中获得置信度值?

时间:2018-03-07 17:04:00

标签: node.js botframework luis

我想通过中间件访问luis的置信度,这样我就可以将低置信度响应路由到人而不是机器人。

我正在寻找的值是这个(用模拟器记录):

Library("*")recognize() recognized: Hallo(0.8215488)

这在中间件中是否可能,或者之后是否会发生?

我尝试在“会话”中找到它但尚未找到它。

1 个答案:

答案 0 :(得分:1)

使用botbuilder库中的IntentDialog时,您可以指定 intentThreshold 属性,该属性将设置触发识别意图所需的最低分数。请查看以下链接以获取参考:https://docs.botframework.com/en-us/node/builder/chat-reference/interfaces/_botbuilder_d_.iintentdialogoptions.html#intentthreshold

如果您的LUIS模型无法识别用户的输入或分数值低于该intentThreshold值,则IntentDialog中的onDefault方法将处理该输入。所以,在这里你可以添加你的逻辑来将客户对话从机器人移交给人类:

let recognizer = new builder.LuisRecognizer(models);
let minimumScore = 0.3;
let intentArgs = {};

intentArgs.recognizers = [recognizer];
intentArgs.intentThreshold = minimumScore;

var intents = new builder.IntentDialog(intentArgs)
.onBegin()
.onDefault(
    // Add logic to handle conversation to human
);

library.dialog('options', intents);