【问题标题】:QnA Maker NoMatch HandelingQnA Maker 不匹配处理
【发布时间】:2018-07-02 21:29:02
【问题描述】:

我正在寻找方法来捕获 Qna Maker 不匹配事件,然后以自定义方式处理它。 我当前的 Qna 对话框是这样的:

[Serializable]
public class QnaMakerDialog : QnAMakerDialog
{
    public QnaMakerDialog() : base(new QnAMakerService(new QnAMakerAttribute(<<myQnAAuthKey>>, <<myQnAKnowledgebaseId>>, "Answer not found. Please try it again", 0.5, 1, <<myQnAEndpointHostName>>)))
{
}
    protected override async Task RespondFromQnAMakerResultAsync(IDialogContext context, IMessageActivity message, QnAMakerResults result)
{
...
}
}

当 QnA Maker 无法找到给定问题的答案时,不匹配自定义消息可以正常工作。 但是,我想拦截该事件,然后在数据库中记录“不匹配”的答案。

提前致谢, 阿明塔斯

【问题讨论】:

标签: botframework qnamaker


【解决方案1】:

您可以为此使用 NoMatchhandler 方法。

 public class BotFrameworkFaQDialog:QnAMakerDialog<object>
{
    public override async Task NoMatchHandler(IDialogContext context, string originalQueryText)
    {
        await context.PostAsync($"Sorry i could't find answer for {originalQueryText} .");
        context.Wait(MessageReceived);
    }
}

【讨论】:

  • NP,如果它有效,标记是一个答案,这样它就可以帮助其他人......轻松
猜你喜欢
  • 2019-10-03
  • 1970-01-01
  • 2019-03-14
  • 1970-01-01
  • 2018-07-15
  • 2019-01-20
  • 1970-01-01
  • 1970-01-01
  • 2019-12-13
相关资源
最近更新 更多