如何通过QnA Maker API v4.0更新知识库?

时间:2018-05-16 11:44:44

标签: microsoft-cognitive

我正在尝试使用以下请求调用QnA Maker API v4.0:

PATCH https://my-test-site.azurewebsites.net/qnamaker/knowledgebases/1d2fb9b0-cc8b-41a4-abbe-3bcb2e497220
Authorization: EndpointKey xxxx
Content-Type: application/json

{
    "add": {
        "qnaList": [
            {
                "id": 0,
                "answer": "Well, hi to you too!",
                "questions": [ "Hi there" ]
            },
        ],
    },
}

我收到回复:

HTTP/1.1 405 Method Not Allowed
{
    "message": "The requested resource does not support http method 'PATCH'."
}

我做错了什么? v4.0 API不支持此功能吗?文档有点奇怪,似乎缺少了一些东西。

1 个答案:

答案 0 :(得分:1)

基于此处提供的API文档:https://westus.dev.cognitive.microsoft.com/docs/services/5a93fcf85b4ccd136866eb37/operations/5ac266295b4ccd1554da7600

看起来您应该拨打以下电话:

https://westus.api.cognitive.microsoft.com/qnamaker/v4.0/knowledgebases/{kbId}

而不是您自己的Azure QnAMaker网站。因此,请将my-test-site.azurewebsites.net替换为westus.api.cognitive.microsoft.com,然后重试。

编辑:我使用自己的KB进行了测试,可以确认您必须使用Microsoft认知端点,而不是您的Azure认证端点。 您将收到202 Accepted回复,并提供OperationId。

然后,您可以使用“获取操作详细信息”方法检查操作状态。 https://westus.dev.cognitive.microsoft.com/docs/services/5a93fcf85b4ccd136866eb37/operations/operations_getoperationdetails