成功添加部署后,可以根据分配给部署的模型,从你的话语中查询意图和实体预测。 可以通过 预测 API 或客户端库(Azure SDK)以编程方式查询部署。
测试已部署的模型
部署模型后,可以通过发送预测请求来测试模型,以使用实际话语评估其性能。 在将模型集成到生产应用程序之前,测试有助于验证模型是否准确识别意图并按预期提取实体。 可以使用 REST API 或 Azure SDK 客户端库测试部署。
发送对话语言理解请求
首先需要获取资源密钥和终结点:
在 Azure 门户中,转到资源概述页面。 在左侧菜单中,选择“密钥和终结点”。 使用端点和密钥来进行 API 请求
查询您的模型
使用以下 URL、标头和 JSON 正文创建 POST 请求,开始测试对话语言理解模型。
请求的 URL
{ENDPOINT}/language/:analyze-conversations?api-version={API-VERSION}
| 占位符 | 价值 | 示例: |
|---|---|---|
{ENDPOINT} |
用于对 API 请求进行身份验证的终结点。 | https://<your-custom-subdomain>.cognitiveservices.azure.cn |
{API-VERSION} |
要调用的 API 的版本。 | 2023-04-01 |
标头
使用以下标头对请求进行身份验证。
| 密钥 | 价值 |
|---|---|
Ocp-Apim-Subscription-Key |
资源的键。 用于对 API 请求进行身份验证。 |
请求主体
{
"kind": "Conversation",
"analysisInput": {
"conversationItem": {
"id": "1",
"participantId": "1",
"text": "Text 1"
}
},
"parameters": {
"projectName": "{PROJECT-NAME}",
"deploymentName": "{DEPLOYMENT-NAME}",
"stringIndexType": "TextElement_V8"
}
}
| 密钥 | 占位符 | 价值 | 示例: |
|---|---|---|---|
participantId |
{JOB-NAME} |
"MyJobName |
|
id |
{JOB-NAME} |
"MyJobName |
|
text |
{TEST-UTTERANCE} |
你要预测意图并从中提取实体的语句。 | "Read Matt's email |
projectName |
{PROJECT-NAME} |
项目名称。 此值区分大小写。 | myProject |
deploymentName |
{DEPLOYMENT-NAME} |
部署的名称。 此值区分大小写。 | staging |
发送请求后,你会收到以下预测响应
响应体
{
"kind": "ConversationResult",
"result": {
"query": "Text1",
"prediction": {
"topIntent": "inten1",
"projectKind": "Conversation",
"intents": [
{
"category": "intent1",
"confidenceScore": 1
},
{
"category": "intent2",
"confidenceScore": 0
},
{
"category": "intent3",
"confidenceScore": 0
}
],
"entities": [
{
"category": "entity1",
"text": "text1",
"offset": 29,
"length": 12,
"confidenceScore": 1
}
]
}
}
}
| 密钥 | 示例值 | DESCRIPTION |
|---|---|---|
| 查询 | 阅读马特的电子邮件 | 提交用于查询的文本。 |
| topIntent | 阅读 | 具有最高置信度分数的预测意向。 |
| 意图 | [] | 针对查询文本所预测的所有意向的列表,每个意向都有一个置信度分数。 |
| 实体 | [] | 一个数组,包含从查询文本中提取的实体列表。 |
对话项目的 API 响应
在对话项目中,系统将同时返回项目中定义的意图和实体的预测结果。
- 意图和实体包括一个介于 0.0 到 1.0 之间的置信度分数,该分数与模型对于预测项目中某个元素的信心程度相关。
- 评分最高的意图将单独输出在专属参数中。
- 仅有预测的实体会出现在您的响应中。
- 实体指示:
- 提取的实体的文本
- 用偏移值表示的开始位置
- 用长度值表示的实体文本的长度。
还可以使用 Azure SDK 提供的客户端库将请求发送到模型。
注释
用于对话语言理解的客户端库仅适用于:
- .NET
- Python
在 Azure 门户中,转到资源概述页面
在左侧菜单中,选择“密钥和终结点”。 使用 API 请求的端点,您需要请求标头的
Ocp-Apim-Subscription-Key密钥。下载并安装所选语言的客户端库包:
语言 软件包版本 .NET 1.0.0 Python 1.0.0 安装客户端库后,请在 GitHub 上使用以下示例开始调用 API。
有关详细信息, 请参阅 以下参考文档: