Когда вы удовлетворены тем, как работает модель, она готова к развертыванию и запрашивает прогнозы из речевых фрагментов. Развернутая модель становится доступной для использования через API прогнозирования.
Необходимые компоненты
Дополнительные сведения см. в статье Жизненный цикл разработки проекта.
Развертывание модели
После проверки производительности модели и принятия решения об использовании в вашей среде модели необходимо назначить развертывание, чтобы иметь возможность запрашивать ее. Назначаемая развертыванию модель становится доступной для использования с помощью API прогнозирования. Рекомендуется создать развертывание production
, которому вы назначите созданную на данный момент лучшую модель, и использовать его в своей системе. Можно создать другое развертывание, называемое staging
и назначить ему текущую рабочую модель, чтобы ее проверить. В проекте может быть не более 10 развертываний.
Чтобы развернуть модель в студии службы "Язык", выполните следующие действия.
В меню слева выберите Развертывание модели.
Выберите " Добавить развертывание", чтобы запустить мастер добавления развертывания .
Выберите "Создать новое имя развертывания", чтобы создать новое развертывание и назначить обученную модель из раскрывающегося списка ниже. В противном случае можно выбрать перезаписать существующее имя развертывания, чтобы эффективно заменить модель, используемую существующим развертыванием.
Примечание.
Для перезаписи существующего развертывания не требуется вносить изменения в вызов API прогнозирования, но полученные результаты будут основаны на новой назначенной модели.
Выберите обученную модель в раскрывающемся списке "Модель ".
Выберите "Развернуть" , чтобы запустить задание развертывания.
После успешного развертывания рядом с ним появится дата окончания срока действия. Окончание срока действия развертывания означает, что модель становится недоступной для использования в целях прогнозирования, что обычно происходит через двенадцать месяцев после окончания срока действия конфигурации обучения.
Отправка задания развертывания
Создайте запрос PUT, используя следующий URL-адрес, заголовки и текст JSON, чтобы начать развертывание модели распознавания разговорной речи.
Запросить URL-адрес
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}?api-version={API-VERSION}
Заполнитель |
Значение |
Пример |
{ENDPOINT} |
Конечная точка для проверки подлинности запроса API. |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Имя проекта. Это значение учитывает регистр. |
myProject |
{DEPLOYMENT-NAME} |
Имя, используемое для развертывания. Это значение учитывает регистр. |
staging |
{API-VERSION} |
Версия вызываемого API. |
2023-04-01 |
Используйте следующий заголовок для проверки подлинности запроса.
Ключ |
Значение |
Ocp-Apim-Subscription-Key |
Ключ к ресурсу. Используется для проверки подлинности запросов API. |
Текст запроса
{
"trainedModelLabel": "{MODEL-NAME}",
}
Ключ |
Заполнитель |
Значение |
Пример |
trainedModelLabel |
{MODEL-NAME} |
Имя модели, которое будет назначено развертыванию. Имена можно назначить только успешно обученным моделям. Это значение учитывает регистр. |
myModel |
После отправки запроса API вы получите ответ 202
, указывающий на успешное выполнение. Извлеките значение operation-location
из заголовков ответа. Оно будет иметь следующий формат:
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}
Этот URL-адрес можно использовать для получения состояния задания развертывания.
Получение состояния задания развертывания
При отправке успешного запроса развертывания полный URL-адрес запроса для проверки состояния задания (включая конечную точку, имя проекта и идентификатор задания) содержится в заголовке ответа operation-location
.
Используйте указанный ниже запрос GET для запроса состояния задания развертывания. Замените значения заполнителей собственными значениями.
Запросить URL-адрес
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}
Заполнитель |
Значение |
Пример |
{ENDPOINT} |
Конечная точка для проверки подлинности запроса API. |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Имя проекта. Это значение учитывает регистр. |
myProject |
{DEPLOYMENT-NAME} |
Имя, используемое для развертывания. Это значение учитывает регистр. |
staging |
{JOB-ID} |
Идентификатор для поиска состояния обучения модели. |
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx |
{API-VERSION} |
Версия вызываемого API. |
2023-04-01 |
Используйте следующий заголовок для проверки подлинности запроса.
Ключ |
Значение |
Ocp-Apim-Subscription-Key |
Ключ к ресурсу. Используется для проверки подлинности запросов API. |
Текст ответа
После отправки запроса вы получите следующий ответ. Продолжайте опрос этой конечной точки до тех пор, пока значение параметра Состояние не изменится на "Выполнено".
{
"jobId":"{JOB-ID}",
"createdDateTime":"{CREATED-TIME}",
"lastUpdatedDateTime":"{UPDATED-TIME}",
"expirationDateTime":"{EXPIRATION-TIME}",
"status":"running"
}
Переключить развертывания
После завершения тестирования модели, назначенной одному развертыванию, вы можете назначить эту модель другому развертыванию. Переключение развертываний включает в себя:
- Назначение модели, назначенной первому развертыванию, второму развертыванию.
- Назначение модели, назначенной второму развертыванию, первому развертыванию.
Этот процесс можно использовать для переключений развертываний production
и staging
, когда требуется взять модель, назначенную развертыванию staging
, и назначить ее развертыванию production
.
Чтобы переключить развертывания из Language Studio, выполните указанные далее действия.
На странице "Развертывание модели" выберите два развертывания, которые вы хотите заменить, и выберите "Переключение развертываний" в верхнем меню.
В появившемся окне выберите имена развертываний, которые вы будете переключать.
Создайте запрос POST, используя следующий URL-адрес, заголовки и текст JSON, чтобы начать задание переключение развертываний.
Запросить URL-адрес
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/:swap?api-version={API-VERSION}
Заполнитель |
Значение |
Пример |
{ENDPOINT} |
Конечная точка для проверки подлинности запроса API. |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Имя проекта. Это значение учитывает регистр. |
myProject |
{API-VERSION} |
Версия вызываемого API. |
2023-04-01 |
Используйте следующий заголовок для проверки подлинности запроса.
Ключ |
Значение |
Ocp-Apim-Subscription-Key |
Ключ к ресурсу. Используется для проверки подлинности запросов API. |
Текст запроса
{
"firstDeploymentName": "{FIRST-DEPLOYMENT-NAME}",
"secondDeploymentName": "{SECOND-DEPLOYMENT-NAME}"
}
Ключ |
Заполнитель |
Значение |
Пример |
firstDeploymentName |
{FIRST-DEPLOYMENT-NAME} |
Имя первого развертывания. Это значение учитывает регистр. |
production |
secondDeploymentName |
{SECOND-DEPLOYMENT-NAME} |
Имя второго развертывания. Это значение учитывает регистр. |
staging |
После отправки запроса API вы получите ответ 202
, указывающий на успешное выполнение.
Удалить развертывание
Чтобы удалить развертывание из Language Studio, выберите Развертывание модели. Затем выберите развертывание, которое нужно удалить, и выберите пункт "Удалить развертывание " в верхнем меню.
Создайте запрос DELETE, используя следующий URL-адрес, заголовки и текст JSON, чтобы удалить развертывание распознавания разговорной речи.
Запросить URL-адрес
{ENDPOINT}/language/authoring/analyze-conversations/projects/{projectName}/deployments/{deploymentName}?api-version={API-VERSION}
Заполнитель |
Значение |
Пример |
{ENDPOINT} |
Конечная точка для проверки подлинности запроса API. |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Имя проекта. Это значение учитывает регистр. |
myProject |
{DEPLOYMENT-NAME} |
Имя, используемое для развертывания. Это значение учитывает регистр. |
staging |
{API-VERSION} |
Версия вызываемого API. |
2023-04-01 |
Используйте следующий заголовок для проверки подлинности запроса.
Ключ |
Значение |
Ocp-Apim-Subscription-Key |
Ключ к ресурсу. Используется для проверки подлинности запросов API. |
После отправки запроса API вы получите ответ 202
, означающий успешное выполнение (развертывание было удалено).
Назначение ресурсов развертывания
Проект можно развернуть в нескольких регионах , назначив различные языковые ресурсы, существующие в разных регионах.
Чтобы назначить ресурсы развертывания в других регионах в Language Studio, выполните следующее:
- Убедитесь, что вы назначили себя владельцем языка Cognitive Services ресурсу, используемому для создания проекта.
- Перейдите на страницу развертывания модели в Language Studio.
- Перейдите на вкладку "Регионы ".
- Выберите " Добавить ресурс развертывания".
- Выберите ресурс языка в другом регионе.
Теперь вы готовы развернуть проект в регионах, где назначены ресурсы.
Назначение ресурсов развертывания программным способом требует проверки подлинности Microsoft Entra**. Идентификатор Microsoft Entra используется для подтверждения доступа к ресурсам, которые вы хотите назначить проекту для развертывания в нескольких регионах. Сведения о программном использовании проверки подлинности Microsoft Entra при вызове REST API см. в документации по проверке подлинности служб искусственного интеллекта Azure.
Назначить ресурс
Отправьте запрос POST с помощью следующего URL-адреса, заголовков и текста JSON для назначения ресурсов развертывания.
Запросить URL-адрес
При создании запроса API используйте следующий URL-адрес. Замените значения заполнителей ниже собственными значениями.
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/resources/:assign?api-version={API-VERSION}
Заполнитель |
Значение |
Пример |
{ENDPOINT} |
Конечная точка для проверки подлинности запроса API. |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Имя проекта. Это значение учитывает регистр. |
myProject |
{API-VERSION} |
Версия вызываемого API. |
2022-10-01-preview |
Используйте проверку подлинности Microsoft Entra для проверки подлинности этого API.
Текст
Используйте следующий пример JSON в качестве текста.
{
"resourcesMetadata": [
{
"azureResourceId": "{AZURE-RESOURCE-ID}",
"customDomain": "{CUSTOM-DOMAIN}",
"region": "{REGION-CODE}"
}
]
}
Ключ |
Заполнитель |
Значение |
Пример |
azureResourceId |
{AZURE-RESOURCE-ID} |
Полный путь к идентификатору ресурса, который нужно назначить. Находится в портал Azure на вкладке "Свойства" ресурса в поле "Идентификатор ресурса". |
/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ContosoResourceGroup/providers/Microsoft.CognitiveServices/accounts/ContosoResource |
customDomain |
{CUSTOM-DOMAIN} |
Настраиваемый поддомен ресурса, который требуется назначить. В портал Azure на вкладке "Ключи" и "Конечная точка" ресурса в поле "Конечная точка" в URL-адресеhttps://<your-custom-subdomain>.cognitiveservices.azure.com/ |
contosoresource |
region |
{REGION-CODE} |
Код региона, указывающий регион ресурса, который требуется назначить. Находится в портал Azure на вкладке "Ключи" и "Конечная точка" ресурса в поле "Расположение или регион". |
eastus |
Получение состояния ресурса
Используйте следующий запрос GET , чтобы получить состояние задания ресурса развертывания. Замените значения заполнителей ниже собственными значениями.
Запросить URL-адрес
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/resources/assign/jobs/{JOB-ID}?api-version={API-VERSION}
Заполнитель |
Значение |
Пример |
{ENDPOINT} |
Конечная точка для проверки подлинности запроса API. |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Имя проекта. Это значение учитывает регистр. |
myProject |
{JOB-ID} |
Идентификатор задания для получения состояния развертывания. Это значение заголовка, полученное operation-location от API в ответ на назначение запроса ресурса развертывания. |
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx |
{API-VERSION} |
Версия вызываемого API. |
2022-10-01-preview |
Используйте следующий заголовок для проверки подлинности запроса.
Ключ |
Значение |
Ocp-Apim-Subscription-Key |
Ключ к ресурсу. Используется для проверки подлинности запросов API. |
Текст ответа
После отправки запроса вы получите следующий ответ. Продолжайте опрос этой конечной точки до тех пор, пока значение параметра Состояние не изменится на "Выполнено".
{
"jobId":"{JOB-ID}",
"createdDateTime":"{CREATED-TIME}",
"lastUpdatedDateTime":"{UPDATED-TIME}",
"expirationDateTime":"{EXPIRATION-TIME}",
"status":"running"
}
Отмена назначения ресурсов развертывания
При отмене назначения или удалении ресурса развертывания из проекта вы также удалите все развертывания, развернутые в регионе этого ресурса.
Чтобы отменить назначение или удаление ресурсов развертывания в других регионах с помощью Language Studio:
- Перейдите на вкладку "Регионы " на странице "Развертывание модели ".
- Выберите ресурс, который вы хотите отменить.
- Нажмите кнопку "Удалить назначение ".
- В появившемся окне введите имя ресурса, который требуется удалить.
Отменить присвоение ресурса
Отправьте запрос POST, используя следующий URL-адрес, заголовки и текст JSON, чтобы отменить или удалить ресурсы развертывания из проекта.
Запросить URL-адрес
При создании запроса API используйте следующий URL-адрес. Замените значения заполнителей ниже собственными значениями.
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/resources/:unassign?api-version={API-VERSION}
Заполнитель |
Значение |
Пример |
{ENDPOINT} |
Конечная точка для проверки подлинности запроса API. |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Имя проекта. Это значение учитывает регистр. |
myProject |
{API-VERSION} |
Версия вызываемого API. |
2022-10-01-preview |
Используйте следующий заголовок для проверки подлинности запроса.
Ключ |
Значение |
Ocp-Apim-Subscription-Key |
Ключ к ресурсу. Используется для проверки подлинности запросов API. |
Текст
Используйте следующий пример JSON в качестве текста.
{
"assignedResourceIds": [
"{AZURE-RESOURCE-ID}"
]
}
Ключ |
Заполнитель |
Значение |
Пример |
assignedResourceIds |
{AZURE-RESOURCE-ID} |
Полный путь к идентификатору ресурса, который требуется отменить. В портал Azure на вкладке "Свойства" ресурса в качестве поля "Идентификатор ресурса". |
/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ContosoResourceGroup/providers/Microsoft.CognitiveServices/accounts/ContosoResource |
Получение состояния ресурса отмены назначения
Используйте следующий запрос GET , чтобы получить состояние задания ресурсов развертывания unassign. Замените значения заполнителей ниже собственными значениями.
Запросить URL-адрес
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/resources/unassign/jobs/{JOB-ID}?api-version={API-VERSION}
Заполнитель |
Значение |
Пример |
{ENDPOINT} |
Конечная точка для проверки подлинности запроса API. |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Имя проекта. Это значение учитывает регистр. |
myProject |
{JOB-ID} |
Идентификатор задания для получения состояния развертывания. Это значение заголовка, полученное operation-location от API в ответ на запрос ресурса развертывания unassign. |
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx |
{API-VERSION} |
Версия вызываемого API. |
2022-10-01-preview |
Используйте следующий заголовок для проверки подлинности запроса.
Ключ |
Значение |
Ocp-Apim-Subscription-Key |
Ключ к ресурсу. Используется для проверки подлинности запросов API. |
Текст ответа
После отправки запроса вы получите следующий ответ. Продолжайте опрос этой конечной точки до тех пор, пока значение параметра Состояние не изменится на "Выполнено".
{
"jobId":"{JOB-ID}",
"createdDateTime":"{CREATED-TIME}",
"lastUpdatedDateTime":"{UPDATED-TIME}",
"expirationDateTime":"{EXPIRATION-TIME}",
"status":"running"
}
Следующие шаги