Обновление 1 : после прочтения вопроса спрашивающий хочет создать пару QnAMaker, а не просто запросить ее.Документация по API QnAMaker не очень хороша, а в некоторых случаях устарела или сбивает с толку.Поэтому я делюсь подсказками для обоих сценариев.
Сценарий 1. Создание пар QnAMaker
Создать пары QnAMaker немного сложнее, и я бы рекомендовал начать с образца C # и его Program.cs .Оттуда вы можете преобразовать его в сценарий Java.В документации есть примеры и для других языков, например, для nodejs .
Protip: Запустите Fiddler, пока вы выполняете образцы.Таким образом, вы можете проверить вызов по вызову и порт для почтальона или композитора для ваших тестов.
На основании исходного вопроса правильный вызов выглядит следующим образом:
// Replace {key} with your QnAMaker endpoint key
// and {kbId} with the id of the knowledgebase you want to upgrade.
function synchronize() {
var jsonData = {
qnaList: [
{
id: 0,
answer: 'Hello',
source: 'Custom Editorial',
questions: [
'Hi','Hello'
],
metadata: [
{
name: 'category',
value: 'api'
}
]
}
]
}
var request = new XMLHttpRequest();
request.open("PATCH", "https://westus.api.cognitive.microsoft.com/qnamaker/v4.0/knowledgebases/{kbId}", true);
request.setRequestHeader("Ocp-Apim-Subscription-Key", "{key}");
request.setRequestHeader("Content-type", "application/json");
request.onreadystatechange = function () {
//Call a function when the state changes.
if (request.readyState == 4) {
alert(request.responseText);
}
}
request.send(JSON.stringify(jsonData));
}
Сценарий 2: Запрос QnAMaker
Для POST /generateAnswer
,Ocp-Apim-Subscription-Key
устарел, и вы должны использовать собственный URI (хост) вместо westus.api.cognitive.microsoft.com
.
Когда QnAMaker стал GA летом прошлого года, заголовок и определение хоста изменились.
Самый простой способ найти правильные настройки для всех ваших параметров - перейти на портал QnAMaker, щелкнув Просмотр кода в своей базе знаний.
Оттуда вы найдете правильные настройки для копирования.
Сравнение приведенного ниже измененного определения было опубликовано в объявлении ГА .