Невозможно назначить ключ подписки LUIS приложению - API V2.0

Мне нужно назначить ключ подписки приложению luis, которое я создал на лазурном сервере.

Я использую LUIS Api V2.0 для назначения ключа подписки для приложения.

Я использовал для этого конечную точку Обновить внешний ключ версии приложения. https://westus.api.cognitive.microsoft.com/luis/api/v2.0/apps/ {appId} / versions / {versionId} / externalKeys

(URL образца API) https://westus.dev.cognitive.microsoft.com/docs/services/5890b47c39e2bb17b84a55ff/operations/5890b47c39e2bb052c5b9c43/console

Я создал новый ключ подписки LUIS из лазурного. Однако я не могу назначить ключ подписки своему приложению.

Ниже мой запрос тела

{
    "type": "LanguageUnderstanding",
    "value": "ee29*******************717"
}

Ниже приведен ответ, который я получил.

{
  "error": {
    "code": "BadArgument",
    "message": "Invalid external key type"
  }
}

Я изменил переменную типа в теле запроса, например Cognitive Service

  • CognitiveService
  • Когнитивные услуги
  • CognitiveServices Язык
  • Понимание интеллектуального сервиса
  • LanguageUnderstandingIntelligentService
  • LanguageUnderstanding
  • Понимание языка

Но мне кажется, что ни один из них не работает. Каждый раз я получаю один и тот же ответ об ошибке.


Кроме того, я погуглил и обнаружил, что это возможно с LUIS Api V1.0. Итак, я попробовал с помощью Назначить ключ подписки для приложения

(URL примера API) https://westus.dev.cognitive.microsoft.com/docs/services/56d95961e597ed0f04b76e58/operations/580c6eea39e2bb161819981d/console

ниже моя конечная точка https://westus.api.cognitive.microsoft.com/luis/v1.0/prog/apps/5b2556b8-f97d-4772-9bf0-4f576ec9fc59/subscription

Тело запроса

08ebb******************e7142d3

Заголовок запроса

{ "Content-Type" : "text/plain", "Ocp-Apim-Subscription-Key":"as23d*******123d"}

Ответ об ошибке

{
  "Message": "The request entity's media type 'text/plain' is not supported for this resource."
}

Я даже пробовал использовать content-type: application / json. но это тоже не работало.

Так. Я не могу назначить ключ подписки с помощью V1.0 или V2.0 LUIS api

Пожалуйста, объясните мне, как назначить вновь созданный ключ подписки luis с помощью api.

Я также пробовал следующие запросы конечных точек V2.0, но сейчас они устарели. Назначьте ключ подписки версии, Добавить внешний ключ API, Добавить ключ подписки


person Roshan Parmar    schedule 14.12.2017    source источник


Ответы (2)


Вы можете использовать новую конечную точку, которая позволяет добавлять ключи программно - конечная точка

Для его использования вам понадобятся:

  1. Получите токен Azure Resource Manager по этой ссылке. Срок действия этого токена истекает, поэтому используйте его немедленно. Запрос возвращает токен Azure Resource Manager. Или вы можете использовать Azure CLI:

    az account get-access-token --query accessToken -o tsv

  2. Назначьте токен ресурсу LUIS с конечной точкой.

Для этого POST API требуются следующие настройки:

Заголовок: Авторизация - Значение авторизации - носитель {токен}. (Обратите внимание, что перед значением токена должны стоять слово Bearer и пробел.)

Заголовок: Ocp-Apim-Subscription-Key - Ваш авторский ключ.

Заголовок: Content-type - application / json Строка запроса: appid - идентификатор приложения LUIS.

Тело :

{"AzureSubscriptionId":"ddda2925-af7f-4b05-9ba1-2155c5fe8a8e",
"ResourceGroup": "resourcegroup-2",
"AccountName": "luis-uswest-S0-2"}

Когда этот API работает успешно, он возвращает статус 201 - создан.

Документы

person Margaret    schedule 19.12.2018

Документация, на которую вы ссылаетесь, относится к старой версии (v1). Назначение ключа подписки через программный API устарело, как уже упоминалось здесь.

Ключи конечных точек Azure теперь предоставляются автоматически в зависимости от идентификатора клиента и имени подписки, которые вы выбираете при выборе ключа на странице «Опубликовать приложение» вашего приложения LUIS. Пользователям больше не требуется копировать "Ключи из Azure ", а затем вручную добавьте их в свои учетные записи LUIS. Ссылка, которую я предоставил вам ранее, ведет к «Управлять своим keys »содержит пошаговое руководство по назначению ключа вашему приложению.

Если у вас есть другие вопросы по поддержке LUIS, обратитесь по адресу [email protected].

person Jyo Fanidam    schedule 04.01.2018
comment
Ваш ответ полезен. Однако мое требование - назначать ключи с помощью API. И способ, о котором вы упомянули, заключался в использовании портала LUIS. Не могли бы вы поделиться, если у вас есть идеи о назначении ключей в Luis API V2.0? - person Roshan Parmar; 10.01.2018
comment
К сожалению, у нас пока нет этой функции через API. Будет обновлено, если они будут реализованы в ближайшем будущем. - person Jyo Fanidam; 11.01.2018
comment
Нам также нужен этот метод API. Я отправил запрос функции здесь когнитивный. uservoice.com/forums/551524-luis/suggestions/ - person Marcel Van de Weerd; 25.02.2018
comment
Конечно. Мы обязательно рассмотрим это в будущем. Благодарим за отправку запроса на добавление функции. - person Jyo Fanidam; 27.02.2018