QnA制造商 - REST API和预览页面之间的不同结果

问题描述 投票:1回答:3

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

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

azure botframework bots qnamaker
3个回答
0
投票

测试版和发布的版本是two different knowledge bases。这使您可以进行更改和测试,而不会影响客户使用的实时知识库。如果您的已发布知识库的结果比测试版本差,那么这似乎表明您在发布后已经培训了测试知识库。再次发布可能会解决问题。

如果您再次发布并且您发布的版本似乎仍然与测试版本的行为不同,请考虑FAQ中的此条目:

我对知识库所做的更新不会在发布时反映出来。为什么不?

无论是在表更新,测试还是设置中,每个编辑操作都需要先保存,然后才能发布。每次编辑操作后,请务必单击“保存并训练”按钮。


0
投票

我有同样的问题。当我在Azzure中创建QnA服务时,它与出现问题有关。自动检测您的QnA Knowldege Base的语言。您可以在Azure搜索资源中查看语言=> testkb => Fields => question / awnser MSDN

Mine被设置为Standard-Lucene而不是German-Microsoft。我没有找到任何方法来改变它,所以我不得不重新创建QnA服务并在那里移动所有知识库。 Example picture wrong language Example picture correct language


0
投票

我正在使用今年2月创建的QnA服务。测试(QnA门户网站)和发布版本(api)之间存在差异。正确的答案会下降10%,而不好的答案会上升10%,这最终会将测试中的好匹配转换为机器人应用程序中的不良答案。尝试向您的客户解释。

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

“最佳答案有时会因测试和生产索引之间的小分数变化而变化。门户网站中的测试聊天会触及测试索引,而generateAnswer API会触及生产索引。这通常发生在您拥有多个知识库的情况下QnA Maker服务.Learn more about confidence score differences

发生这种情况是因为所有测试知识库都组合成一个索引,而prod知识库则位于不同的索引上。我们可以通过将所有测试和prod分离为您的服务的单独索引来帮助您。“

那么我们需要联系Microsoft以分割每KB的测试索引吗?这样可以纠正测试和发布版本之间的任何差异吗?还没试过,其他人呢?

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

或者我们将所有内容放在一个KB中,并使用元数据在逻辑上分离答案,并祈祷这个单一的大型KB产生足够好的结果?


0
投票

Pursang对他的回答有一个很好的观点。解决此问题的一个好方法是在QnAMaker post请求体上添加“isTest:true”。它对我有用。当我们必须添加多个知识库时,它是一个qnaMaker错误...

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

祝好运!

© www.soinside.com 2019 - 2024. All rights reserved.