次の方法で共有

部署模型

对模型执行方式感到满意后,即可部署模型,并查询来自言语的预测。 部署模型,使其可通过预测 API 使用。

先决条件

有关详细信息, 请参阅项目开发生命周期

部署模型

查看模型的性能并决定可以在环境中使用它后,需要将其分配给部署才能对其进行查询。 将模型分配给部署,使其可通过预测 API 使用。 建议创建一个名为 production 的部署,以便为其分配到目前为止构建的最佳模型,并在系统中使用它。 你可以创建另一个名为 staging 的部署,可将当前正在使用的模型分配给该部署,以便能够对其进行测试。 项目中最多可以有 10 个部署。

提交部署作业

使用以下 URL、标头和 JSON 正文创建 PUT 请求,开始部署对话语言理解模型。

请求 URL

{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}?api-version={API-VERSION}
占位符 示例
{ENDPOINT} 用于对 API 请求进行身份验证的终结点。 https://<your-custom-subdomain>.cognitiveservices.azure.cn
{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(包括终结点、项目名称和作业 ID)会包含在响应的 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.cn
{PROJECT-NAME} 项目名称。 此值区分大小写。 myProject
{DEPLOYMENT-NAME} 部署名称。 此值区分大小写。 staging
{JOB-ID} 用于查找模型训练状态的 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或者将stagingproduction的部署进行交换时。

使用以下 URL、标头和 JSON 正文创建 POST 请求,以启动交换部署作业。

请求 URL

{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/:swap?api-version={API-VERSION}
占位符 示例
{ENDPOINT} 用于对 API 请求进行身份验证的终结点。 https://<your-custom-subdomain>.cognitiveservices.azure.cn
{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 成功的响应。

删除部署

使用以下 URL、标头和 JSON 正文创建 DELETE 请求,删除对话语言理解部署。

请求 URL

{ENDPOINT}/language/authoring/analyze-conversations/projects/{projectName}/deployments/{deploymentName}?api-version={API-VERSION}
占位符 示例
{ENDPOINT} 用于对 API 请求进行身份验证的终结点。 https://<your-custom-subdomain>.cognitiveservices.azure.cn
{PROJECT-NAME} 项目名称。 此值区分大小写。 myProject
{DEPLOYMENT-NAME} 部署名称。 此值区分大小写。 staging
{API-VERSION} 要调用的 API 的版本 2023-04-01

头文件

使用以下标头对请求进行身份验证。

Ocp-Apim-Subscription-Key 资源密钥。 用于对 API 请求进行身份验证。

发送 API 请求后,会收到指示 202 成功的响应,这意味着部署已删除。

分配部署资源

可以通过分配存在于不同区域中的不同语言资源来将项目部署到多个区域。

以编程方式分配部署资源需要进行 Microsoft Entra 身份验证**。 Microsoft Entra ID 用于确认你有权访问想要分配给项目进行多区域部署的资源。 若要在发出 REST API 调用时以编程方式使用 Azure Microsoft Entra 身份验证,请参阅Azure AI 服务身份验证文档

分配资源

使用以下 URL、标头和 JSON 正文提交 POST 请求以分配部署资源。

请求 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.cn
{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} 要分配的完整资源 ID 路径。 可以在 Azure 门户中资源的“属性”选项卡下的“资源 ID”字段中找到。 /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ContosoResourceGroup/providers/Microsoft.CognitiveServices/accounts/ContosoResource
customDomain {CUSTOM-DOMAIN} 要分配的资源的自定义子域。 可以在 Azure 门户中资源的“密钥和终结点”选项卡下找到,它显示为 URL 中的“终结点”字段的一部分 contosoresource
region {REGION-CODE} 一个区域代码,用于指定你要分配的资源的区域。 可以在 Azure 门户中资源的“密钥和终结点”选项卡下找到,它显示为“位置/区域”字段的一部分。 chinanorth2

获取分配资源状态

使用以下 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.cn
{PROJECT-NAME} 项目名称。 此值区分大小写。 myProject
{JOB-ID} 用于获取分配部署状态的作业 ID。 它位于您从 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"
}

取消分配部署资源

取消分配或删除项目中的部署资源时,还会删除部署到资源区域的所有部署。

取消分配资源

使用以下 URL、标头和 JSON 正文提交 POST 请求,以从项目中取消分配或删除部署资源。

请求 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.cn
{PROJECT-NAME} 项目名称。 此值区分大小写。 myProject
{API-VERSION} 要调用的 API 版本。 2022-10-01-preview

头文件

使用以下标头对请求进行身份验证。

Ocp-Apim-Subscription-Key 资源密钥。 用于对 API 请求进行身份验证。

正文

使用以下示例 JSON 作为正文。

{
  "assignedResourceIds": [
    "{AZURE-RESOURCE-ID}"
  ]
}
占位符 示例
assignedResourceIds {AZURE-RESOURCE-ID} 要取消分配的完整资源 ID 路径。 可以在 Azure 门户中资源的“属性”选项卡下找到,它作为“资源 ID”字段显示。 /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ContosoResourceGroup/providers/Microsoft.CognitiveServices/accounts/ContosoResource

获取取消分配资源状态

使用以下 GET 请求获取取消分配部署资源作业的状态。 将占位符值替换为你自己的值。

请求 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.cn
{PROJECT-NAME} 项目名称。 此值区分大小写。 myProject
{JOB-ID} 用于获取分配部署状态的作业 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"
}

后续步骤