Azure QnA制造商未回答某些问题
我们正在使用BasicQnAMakerDialog(Azure QnA模板)作为QnA机器人。它可以处理大多数问题,但是当问到某些问题时,没有回复(甚至没有默认消息:找不到良好匹配)。机器人就这么挂着 场景:Azure QnA制造商未回答某些问题,azure,botframework,bots,qnamaker,Azure,Botframework,Bots,Qnamaker,我们正在使用BasicQnAMakerDialog(Azure QnA模板)作为QnA机器人。它可以处理大多数问题,但是当问到某些问题时,没有回复(甚至没有默认消息:找不到良好匹配)。机器人就这么挂着 场景: 用户:您好 机器人:嗨 用户:我可以预订吗 机器人: (没有回复,什么都没有!) 代码: BasicQnAMakerDialog():base(新的QnAMakerService(新的QNamakerAttribute(RootDialog.GetSetting(“QnAAuthKey”)
用户:您好
机器人:嗨
用户:我可以预订吗
机器人:
(没有回复,什么都没有!) 代码: BasicQnAMakerDialog():base(新的QnAMakerService(新的QNamakerAttribute(RootDialog.GetSetting(“QnAAuthKey”)、Utils.GetAppSetting(“QnAKnowledgebaseId”)、0、5、Utils.GetAppSetting(“QnAEndpointHostName”))
知道怎么回事吗?QnAMakerAttribute的第三个参数是默认消息,用于显示服务是否返回任何结果。在您共享的代码中,您将其设置为“”,这将导致不发送任何消息。尝试将其更改为有效字符串:
BasicQnAMakerDialog() : base(new
QnAMakerService(
new QnAMakerAttribute( RootDialog.GetSetting("QnAAuthKey"),
Utils.GetAppSetting("QnAKnowledgebaseId"),
"Default no match message here",
0,
5,
Utils.GetAppSetting("QnAEndpointHostName"))))
没有你的QnAMaker知识库,很难回答。当您询问
我可以预订吗
“我可以预订吗”时,您是否至少可以检查QnAMaker端点以查看其回复?直接查询端点时,“我可以预订吗”会给出回复,但使用BasicQnAMakerDialogHi@Norwen时不会给出任何答案,您可以尝试重写RespondFromQnAMakerResultAsync
方法,并检查是否可以得到匹配的答案。或者,您可以使用fiddler捕获和监视流量,以检查请求是否按预期从QnAMakerDialog发送。