botframework - QnAMaker 迁移后无法到达端点
问题描述
我们有一个已经生产了几个月的机器人。使用预览服务配置的机器人运行良好。
所以我按照迁移文档中的步骤进行操作。我在 Azure 中创建了一个 QnA 服务,然后创建了知识库。我导入了我的知识库,保存/训练并发布。
在我的 web.config 中,我替换了以下值:
<add key="QnAKnowledgeBaseId" value="foo" />
<add key="QnaSubscriptionKey" value="bar" />
<add key="QnaMakerUpdateKnowledgeBaseEndpoint" value="https://westus.api.cognitive.microsoft.com/qnamaker/v2.0/knowledgebases" />
我使用了发布我的知识库后给出的值,所以
POST /knowledgebases/<QnAKnowledgeBaseId>/generateAnswer
Host: <QnaMakerUpdateKnowledgeBaseEndpoint>
Authorization: EndpointKey <QnaSubscriptionKey>
更改这三行后,我的机器人停止检索答案。这使我怀疑 1)我的这些数据点的来源不正确,或者 2)在我的情况下需要进行更大的更改才能转换。谁能指导我正确的方向?
编辑:最终我的问题是机器人的原始开发人员将 QnAMaker 的端点隐藏在某处。我仍然不确定在哪里,该 url 不在 web.config 或任何 azure 设置中。我覆盖了它,一切似乎都很好。
下面的答案对我来说比官方文档更清楚,即使他们只是肯定了我最初阅读时认为的正确答案。伟大的工作人员。
解决方案
新的 v4 使用 azure 网站作为其 generateAnswer 端点,并在授权标头内使用不同的方案。登录到新的 v4 ui 进行发布,您将看到 url 示例已更改。
最初也抓住了我。它们是对 api 的一些更改,qnaquestions 集合现在是 qnalist,qnaid 现在只是 id。
您将需要彻底比较 api,特别是如果您已经手动处理了您的客户端。
很高兴帮助菲尔
推荐阅读
- elasticsearch - Elasticsearch:如何计算 docFreq
- python-3.x - 使用 git+ssh 进行 Pip 安装不适用于 python 包
- python - Pandas 保留索引排序
- javascript - antd UI中如何控制文本在选择器中的位置?
- neural-network - 你如何为 MNIST “导入”图像数据?
- javascript - 尝试向 MySQL 数据库插入字符串 `alert("boo")` 但产生 403 错误 PHP
- azure - 创建和销毁 Azure Windows 2019 Server 的成本是否会高于关闭它?
- javascript - webpack 命令行界面中的“--project”是什么意思?
- java - 网络服务手册同步后 RecyclerView 不刷新
- java - 观察者模式与事件总线消息方法