Azure QnA maker-REST API和预览页面之间的结果不同

Azure QnA maker-REST API和预览页面之间的结果不同,azure,botframework,bots,qnamaker,Azure,Botframework,Bots,Qnamaker,我正在使用Azure QnA版本4。我正在使用RESTAPI发布。 如果我使用参数isTest=true对Live数据库发帖,我得到的答案分数约为80%,这是非常合理的,因为我的问题几乎与数据库匹配。使用qnamaker.ai上的Webinterface,我得到了完全相同的结果 使用同一篇文章来对比发布的版本(没有isTest=true),我得到的分数只有13%左右(这对于输入几乎与数据库匹配的问题来说是非常奇怪的)。 我在常见问题中发现了一些提示,细微的差异是正常的,但我认为67%的差异并不正

我正在使用Azure QnA版本4。我正在使用RESTAPI发布。 如果我使用参数isTest=true对Live数据库发帖,我得到的答案分数约为80%,这是非常合理的,因为我的问题几乎与数据库匹配。使用qnamaker.ai上的Webinterface,我得到了完全相同的结果

使用同一篇文章来对比发布的版本(没有isTest=true),我得到的分数只有13%左右(这对于输入几乎与数据库匹配的问题来说是非常奇怪的)。
我在常见问题中发现了一些提示,细微的差异是正常的,但我认为67%的差异并不正常。我能做些什么,使发布的版本的分数更接近测试版本吗?

测试版本和发布的版本是相同的。这允许您进行更改和测试,而不会影响客户正在使用的实时知识库。如果您发布的知识库的结果比您的测试版本更差,这似乎表明您在发布知识库之后已经培训了您的测试知识库。再次发布可能会解决这个问题

如果您再次发布并且发布的版本仍然不符合测试版本,请考虑以下项:

我对知识库所做的更新不会反映在发布上。为什么不呢? 每次编辑操作,无论是在表更新、测试还是设置中, 需要先保存,然后才能发布。请务必单击 每次编辑操作后保存和训练按钮


我也有同样的问题。这与我在Azzure创建QnA服务时出错有关。将自动检测QnA知识库的语言。您可以在Azure搜索资源=>testkb=>Fields=>question/awnser中看到您的语言


我的设置为标准Lucene,而不是德国的Microsoft。我没有找到任何方法来改变这一点,所以我不得不重新创建QnA服务,并将所有知识库转移到那里

我正在使用今年2月创建的QnA服务。测试(QnA门户)和发布版本(api)之间存在差异。正确答案会下降10%,而错误答案会上升10%,这最终会将测试中的好匹配转换为bot应用程序中的坏匹配。试着向你的客户解释一下

如果您在一个搜索服务上使用多个知识库(=知识库),您可能会遇到此问题。测试索引是覆盖该搜索服务的所有知识库的单个索引,而生产知识库在发布时,是按每知识库单独索引的。QnA门户上的QnA Maker帮助机器人提到:

“由于测试索引和生产索引之间的分数差异较小,顶部答案有时会有所不同。测试聊天门户会点击测试索引,generateAnswer API会点击生产索引。当您在同一QnA Maker服务中有多个知识库时,通常会发生这种情况。”

这是因为所有测试知识库都合并到一个索引中,而prod知识库位于单独的索引中。我们可以为您的服务将所有测试和prod分离到单独的索引中,从而为您提供帮助。”

因此,我们需要联系Microsoft,将测试索引按KB进行拆分?所以,这将纠正测试版本和发布版本之间的任何差异?还没试过这个,还有其他人吗

或者,我们是否将每个搜索服务限制为单个KB(=多个搜索服务=昂贵)


还是我们把所有的知识都放在一个知识库中,用元数据逻辑地将答案分开,并祈祷这个庞大的知识库能产生足够好的结果?

Pursang的答案很有道理。 解决此问题的一个好方法是在QnAMaker post请求主体上添加“isTest:true”。这对我很有效。 当我们必须添加多个知识库时,这是一个qnaMaker错误

{“问题”:“你的问题在这里”,“顶部”:3,“isTest”:true}


祝你好运

如果您对“实时数据库”版本(即测试版本)的结果感到满意,那么下一步就是发布这个版本,这正是重点。如果我理解得很好,我的数据库已经发布了:你准备了你的QnA知识库,发布了它,然后在知识库上没有进一步的更改,如果你使用测试和生产,你的答案分数是不同的?是的。我的QnA知识库已经发布,我的知识库没有任何变化,我得到了不同的分数。为了让我们重现你的问题,你能告诉我们你的知识库的细节以及给出80%和13%答案的问题吗?如果你不想透露你的项目,你能创建一个测试知识库,在那里你也可以重现这个问题吗?