【问题标题】:QnA maker - Different Results between REST API and Preview PageQnA maker - REST API 和预览页面之间的不同结果
【发布时间】:2019-05-23 06:04:19
【问题描述】:

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

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

【问题讨论】:

  • 如果您对“Live-Database”版本(即测试版)的结果感到满意,下一步就是发布此版本docs.microsoft.com/en-us/azure/cognitive-services/qnamaker/…
  • 这正是重点。我的数据库已发布
  • 所以,如果我理解得很好:您准备好 QnA 知识库,发布它,然后在您的知识库上没有进一步更改,如果您使用测试与生产,您的答案分数会有所不同?
  • 是的。我的 QnA 知识库已发布,我的知识库没有任何更改,我得到不同的分数。
  • 为了让我们重现您的问题,您能否向我们提供您的知识库的详细信息以及给出 80% 和 13% 的问题?如果你不想透露你的项目,你可以创建一个测试知识库,在那里你也可以重现问题吗?

标签: azure botframework bots qnamaker


【解决方案1】:

Pursang 的回答很有道理。 解决此问题的一个好方法是在 QnAMaker 发布请求正文中添加“isTest: true”。它对我有用。 当我们必须添加多个知识库时,这是一个 qnaMaker 错误...

{"question":"你的问题在这里", "top":3, "isTest": true }

祝你好运!

【讨论】:

    【解决方案2】:

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

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

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

    每个编辑操作,无论是在表更新、测试还是设置中, 需要先保存才能发布。一定要点击 每次编辑操作后保存和训练按钮。

    【讨论】:

      【解决方案3】:

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

      中查看您的语言

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

      【讨论】:

        【解决方案4】:

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

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

        “由于测试和生产指数之间的分数差异很小,有时最佳答案会有所不同。门户中的测试聊天达到测试指数,而 generateAnswer API 达到生产指数。这通常发生在您有多个知识库时在同一个 QnA Maker 服务中。Learn more about confidence score differences

        发生这种情况是因为所有测试知识库都合并到一个索引中,而 prod 知识库位于单独的索引中。我们可以为您的服务将所有测试和产品分成单独的索引来帮助您。”

        所以我们需要联系微软来拆分每个 KB 的测试索引?那么这将纠正测试和发布版本之间的任何差异吗?还没试过,还有其他人吗?

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

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

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2018-10-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多