你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
向模型发送文本分类请求
成功部署模型后,您可以查询部署,以根据您分配给部署的模型对文本进行分类。
你可以通过预测 API 或通过客户端库 (Azure SDK) 以编程方式查询部署。
测试已部署的模型
你可以使用 Language Studio 提交自定义文本分类任务并直观地呈现结果。
若要在 Language Studio 中测试已部署的模型,请执行以下操作:
在左侧菜单中,选择“测试部署”。
选择要测试的部署。 只能测试分配给部署的模型。
对于多语言项目,请从语言下拉列表中选择要测试的文本的语言。
从下拉列表中选择要查询/测试的部署。
可以输入要提交到请求的文本,或上传要使用的 .txt
文件。
选择顶部菜单中的“运行测试”。
在“结果”选项卡中,可以看到从文本中提取的实体及其类型。 还可以在“JSON”选项卡下查看 JSON 响应。
向模型发送文本分类请求
在部署作业成功完成后,选择要使用的部署,然后从顶部菜单中选择“获取预测 URL”。
在出现的窗口中,在“提交”透视下,将示例请求 URL 和正文复制到命令行中。 将占位符值(如 YOUR_DOCUMENT_HERE
和 YOUR_DOCUMENT_LANGUAGE_HERE
)替换为要处理的实际文本和语言。
在终端或命令提示符下提交 POST
cURL 请求。 如果请求成功,你将收到包含 API 结果的 202 响应。
在响应头中,你收到来自 operation-location
的提取 {JOB-ID}
,其格式为:{ENDPOINT}/language/analyze-text/jobs/<JOB-ID}>
返回到 Language Studio;从你之前获得示例请求的同一窗口中选择“检索”透视,然后将示例请求复制到文本编辑器中。
使用从上一步中提取的 ID 将作业 ID 添加到 URL(放到 /jobs/
的后面)。
在终端或命令提示符下提交 GET
cURL 请求。
首先需要获取资源密钥和终结点:
在 Azure 门户中,转到资源概述页面
在左侧菜单中,选择“密钥和终结点”。 你将为 API 请求使用终结点和密钥
提交自定义文本分类任务
使用此 POST 请求启动文本分类任务。
{ENDPOINT}/language/analyze-text/jobs?api-version={API-VERSION}
占位符 |
值 |
示例 |
{ENDPOINT} |
用于对 API 请求进行身份验证的终结点。 |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{API-VERSION} |
要调用的 API 版本。 此处引用的值适用于最新发布的版本。 请参阅模型生命周期,了解有关其他可用 API 版本的详细信息。 |
2022-05-01 |
键 |
价值 |
Ocp-Apim-Subscription-Key |
你的密钥,用于提供对此 API 的访问权限。 |
Body
{
"displayName": "Classifying documents",
"analysisInput": {
"documents": [
{
"id": "1",
"language": "{LANGUAGE-CODE}",
"text": "Text1"
},
{
"id": "2",
"language": "{LANGUAGE-CODE}",
"text": "Text2"
}
]
},
"tasks": [
{
"kind": "CustomMultiLabelClassification",
"taskName": "Multi Label Classification",
"parameters": {
"projectName": "{PROJECT-NAME}",
"deploymentName": "{DEPLOYMENT-NAME}"
}
}
]
}
密钥 |
占位符 |
值 |
示例 |
displayName |
{JOB-NAME} |
作业名称。 |
MyJobName |
documents |
[{},{}] |
要对其运行任务的文档列表。 |
[{},{}] |
id |
{DOC-ID} |
文档名称或 ID。 |
doc1 |
language |
{LANGUAGE-CODE} |
指定文档语言代码的字符串。 如果未指定此密钥,该服务将假定在项目创建时选择项目的默认语言。 有关支持语言代码的列表,请参阅语言支持。 |
en-us |
text |
{DOC-TEXT} |
要对其运行任务的文档任务。 |
Lorem ipsum dolor sit amet |
tasks |
|
要执行的任务列表。 |
[] |
taskName |
CustomMultiLabelClassification |
任务名称 |
CustomMultiLabelClassification |
parameters |
|
要传递给任务的参数列表。 |
|
project-name |
{PROJECT-NAME} |
项目名称。 此值区分大小写。 |
myProject |
deployment-name |
{DEPLOYMENT-NAME} |
部署的名称。 此值区分大小写。 |
prod |
{
"displayName": "Classifying documents",
"analysisInput": {
"documents": [
{
"id": "1",
"language": "{LANGUAGE-CODE}",
"text": "Text1"
},
{
"id": "2",
"language": "{LANGUAGE-CODE}",
"text": "Text2"
}
]
},
"tasks": [
{
"kind": "CustomSingleLabelClassification",
"taskName": "Single Classification Label",
"parameters": {
"projectName": "{PROJECT-NAME}",
"deploymentName": "{DEPLOYMENT-NAME}"
}
}
]
}
密钥 |
占位符 |
值 |
示例 |
displayName |
{JOB-NAME} |
作业名称。 |
MyJobName |
文档 |
|
要对其运行任务的文档列表。 |
|
id |
{DOC-ID} |
文档名称或 ID。 |
doc1 |
language |
{LANGUAGE-CODE} |
指定文档语言代码的字符串。 如果未指定此密钥,该服务将假定在项目创建时选择项目的默认语言。 有关支持语言代码的列表,请参阅语言支持。 |
en-us |
text |
{DOC-TEXT} |
要对其运行任务的文档任务。 |
Lorem ipsum dolor sit amet |
taskName |
CustomSingleLabelClassification |
任务名称 |
CustomSingleLabelClassification |
tasks |
[] |
要执行的任务数组。 |
[] |
parameters |
|
要传递给任务的参数列表。 |
|
project-name |
{PROJECT-NAME} |
项目名称。 此值区分大小写。 |
myProject |
deployment-name |
{DEPLOYMENT-NAME} |
部署的名称。 此值区分大小写。 |
prod |
响应
你将收到 202 响应,指示成功。 在响应头中,提取 operation-location
。
operation-location
的格式如下:
{ENDPOINT}/language/analyze-text/jobs/{JOB-ID}?api-version={API-VERSION}
可以使用此 URL 查询任务完成状态,并在任务完成时获取结果。
获取任务结果
使用以下 GET 请求查询文本分类任务的状态/结果。
{ENDPOINT}/language/analyze-text/jobs/{JOB-ID}?api-version={API-VERSION}
占位符 |
值 |
示例 |
{ENDPOINT} |
用于对 API 请求进行身份验证的终结点。 |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{API-VERSION} |
要调用的 API 版本。 此处引用的值适用于最新发布的模型版本版本。 |
2022-05-01 |
键 |
价值 |
Ocp-Apim-Subscription-Key |
你的密钥,用于提供对此 API 的访问权限。 |
响应正文
响应将是具有以下参数的 JSON 文档。
{
"createdDateTime": "2021-05-19T14:32:25.578Z",
"displayName": "MyJobName",
"expirationDateTime": "2021-05-19T14:32:25.578Z",
"jobId": "xxxx-xxxxxx-xxxxx-xxxx",
"lastUpdateDateTime": "2021-05-19T14:32:25.578Z",
"status": "succeeded",
"tasks": {
"completed": 1,
"failed": 0,
"inProgress": 0,
"total": 1,
"items": [
{
"kind": "customMultiClassificationTasks",
"taskName": "Classify documents",
"lastUpdateDateTime": "2020-10-01T15:01:03Z",
"status": "succeeded",
"results": {
"documents": [
{
"id": "{DOC-ID}",
"classes": [
{
"category": "Class_1",
"confidenceScore": 0.0551877357
}
],
"warnings": []
}
],
"errors": [],
"modelVersion": "2020-04-01"
}
}
]
}
}
{
"createdDateTime": "2021-05-19T14:32:25.578Z",
"displayName": "MyJobName",
"expirationDateTime": "2021-05-19T14:32:25.578Z",
"jobId": "xxxx-xxxxxx-xxxxx-xxxx",
"lastUpdateDateTime": "2021-05-19T14:32:25.578Z",
"status": "succeeded",
"tasks": {
"completed": 1,
"failed": 0,
"inProgress": 0,
"total": 1,
"items": [
{
"kind": "customSingleClassificationTasks",
"taskName": "Classify documents",
"lastUpdateDateTime": "2020-10-01T15:01:03Z",
"status": "succeeded",
"results": {
"documents": [
{
"id": "{DOC-ID}",
"class": [
{
"category": "Class_1",
"confidenceScore": 0.0551877357
}
],
"warnings": []
}
],
"errors": [],
"modelVersion": "2020-04-01"
}
}
]
}
}
首先将需要获取资源密钥和终结点:
下载并安装所选语言的客户端库包:
安装客户端库后,使用 GitHub 上的以下示例开始调用 API。
单标签分类:
多标签分类:
有关客户端和返回对象的详细信息,请参阅以下参考文档:
后续步骤