如何在业务流程工作流中创建项目
业务流程工作流可用于创建那些会将应用程序连接到以下项的项目:
先决条件
开始使用业务流程工作流之前,需具备以下各项:
- Azure 订阅 - 创建试用订阅。
- 一种 Azure AI 语言资源
创建“语言”资源
开始使用业务流程工作流之前,你需要具备 Azure AI 语言资源。
注意
- 你需要分配有资源组的“所有者”角色才能创建语言资源。
- 如果打算使用问题解答,则必须在资源创建中启用问题解答功能
从 Azure 门户创建新资源
要创建新的 Azure AI 语言资源,请转到 Azure 门户。
选择“继续创建资源”
创建包含以下详细信息的语言资源。
通过 Language Studio 创建新语言资源
如果是首次登录,你将在 Language Studio 中看到一个窗口,在该窗口中可以选择现有语言资源或创建新的语言资源。 也可单击右上角的“设置”图标,选择“资源”,然后单击“创建新资源”,从而创建资源 。
创建包含以下详细信息的语言资源。
实例详细信息 |
所需的值 |
Azure 订阅 |
你的 Azure 订阅 |
Azure 资源组 |
你的 Azure 资源组 |
Azure 资源名称 |
你的 Azure 资源名称 |
位置 |
详细了解支持的区域。 |
定价层 |
详细了解支持的定价层。 |
重要
- 请确保在创建语言资源时启用“托管标识”。
- 阅读并确认“负责任的 AI”声明
登录到 Language Studio
若要创建新意向,请选择“+添加”按钮,开始为意向提供一个名称。 你会看到两个选项,一个用于连接到项目,一个用于不连接到项目。 你可以连接到(LUIS、问题解答或对话语言理解)项目,或者选择“否”选项。
创建业务流程工作流项目
创建语言资源后,就可以创建业务流程工作流项目了。
在 Language Studio 中,找到标记为“了解问题和会话语言”的部分,然后选择“业务流程工作流”。
这会将你转到“业务流程工作流项目”页。 选择“创建新项目”。 为了创建项目,你将需要提供以下详细信息:
值 |
描述 |
名称 |
项目名称。 |
说明 |
可选项目说明。 |
语句主要语言 |
项目的主要语言。 训练数据应主要使用此语言。 |
完成后,选择“下一步”,并查看详细信息。 选择“创建项目”以完成过程。 现在应会看到项目中的“生成架构”屏幕。
使用以下 URL、标头和 JSON 正文提交 PATCH 请求,以创建新项目。
请求 URL
创建 API 请求时,请使用以下 URL。 请将以下占位符值替换为你自己的值。
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}?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 请求进行身份验证。 |
Body
使用以下示例 JSON 作为正文。
{
"projectName": "{PROJECT-NAME}",
"language": "{LANGUAGE-CODE}",
"projectKind": "Orchestration",
"description": "Project description"
}
密钥 |
占位符 |
值 |
示例 |
projectName |
{PROJECT-NAME} |
项目名称。 此值区分大小写。 |
EmailApp |
language |
{LANGUAGE-CODE} |
指定项目中所用语句的语言代码的字符串。 如果项目是多语言项目,请选择大多数语句的语言代码。 |
en-us |
导入业务流程工作流项目
你随时可以将业务流程工作流项目导出为 JSON 文件,方式如下:转到业务流程工作流项目页,选择项目并单击顶部菜单中的“导出”。
该项目可以重新导入为新项目。 如果导入完全同名的项目,将用新导入项目的数据替换项目的数据。
若要导入项目,请选择“创建新项目”旁边的箭头按钮,选择“导入”,然后选择 JSON 文件。
可以将业务流程工作流 JSON 导入服务
使用以下 URL、标头和 JSON 正文提交 POST 请求,以导入项目。
请求 URL
创建 API 请求时,请使用以下 URL。 请将以下占位符值替换为你自己的值。
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/:import?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 请求进行身份验证。 |
正文
注意
每个意向只能是一种类型(CLU、LUIS 和 qna)
使用以下示例 JSON 作为正文。
{
"projectFileVersion": "{API-VERSION}",
"stringIndexType": "Utf16CodeUnit",
"metadata": {
"projectKind": "Orchestration",
"settings": {
"confidenceThreshold": 0
},
"projectName": "{PROJECT-NAME}",
"description": "Project description",
"language": "{LANGUAGE-CODE}"
},
"assets": {
"projectKind": "Orchestration",
"intents": [
{
"category": "string",
"orchestration": {
"kind": "luis",
"luisOrchestration": {
"appId": "00000000-0000-0000-0000-000000000000",
"appVersion": "string",
"slotName": "string"
},
"cluOrchestration": {
"projectName": "string",
"deploymentName": "string"
},
"qnaOrchestration": {
"projectName": "string"
}
}
}
],
"utterances": [
{
"text": "Trying orchestration",
"language": "{LANGUAGE-CODE}",
"intent": "string"
}
]
}
}
密钥 |
占位符 |
值 |
示例 |
api-version |
{API-VERSION} |
要调用的 API 版本。 此处使用的版本必须与 URL 中的 API 版本相同。 |
2022-03-01-preview |
projectName |
{PROJECT-NAME} |
项目名称。 此值区分大小写。 |
EmailApp |
language |
{LANGUAGE-CODE} |
指定项目中所用语句的语言代码的字符串。 如果项目是多语言项目,请选择大多数语句的语言代码。 |
en-us |
导出项目
你随时可以将业务流程工作流项目导出为 JSON 文件,方式如下:转到业务流程工作流项目页,选择项目并按“导出”。
你随时可以将业务流程工作流项目导出为 JSON 文件。
使用以下 URL、标头和 JSON 正文创建 POST 请求,以导出项目。
请求 URL
创建 API 请求时,请使用以下 URL。 请将以下占位符值替换为你自己的值。
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/:export?stringIndexType=Utf16CodeUnit&api-version={API-VERSION}
占位符 |
值 |
示例 |
{ENDPOINT} |
用于对 API 请求进行身份验证的终结点。 |
https://<your-custom-subdomain>.cognitiveservices.azure.cn |
{PROJECT-NAME} |
项目名称。 此值区分大小写。 |
EmailApp |
{API-VERSION} |
要调用的 API 的版本。 |
2023-04-01 |
使用以下标头对请求进行身份验证。
键 |
值 |
Ocp-Apim-Subscription-Key |
资源密钥。 用于对 API 请求进行身份验证。 |
当你发送 API 请求后,将收到指示成功的 202
响应。 在响应头中,提取 operation-location
值。 其格式如下:
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}
JOB-ID
用于标识请求,因为此操作是异步操作。 使用此 URL 可以通过相同的身份验证方法获取导出的项目 JSON。
获取业务流程项目详细信息
若要获取业务流程工作流项目的详细信息,请使用以下 URL 和标头提交 GET 请求。 将占位符值替换为你自己的值。
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}?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 请求进行身份验证。 |
响应正文
发送请求后,你将获得以下响应。
{
"createdDateTime": "2022-04-18T13:53:03Z",
"lastModifiedDateTime": "2022-04-18T13:53:03Z",
"lastTrainedDateTime": "2022-04-18T14:14:28Z",
"lastDeployedDateTime": "2022-04-18T14:49:01Z",
"projectKind": "Orchestration",
"projectName": "{PROJECT-NAME}",
"description": "This is a sample orchestration project.",
"language": "{LANGUAGE-CODE}"
}
发送 API 请求后,将收到 200
响应(指示成功)和 JSON 响应正文(包含项目详细信息)。
删除项目
如果不再需要项目,可以使用 Language Studio 删除项目。 在左侧导航菜单中选择“项目”,选择要删除的项目,然后选择顶部菜单中的“删除”。
如果你不再需要项目,可以使用 API 删除该项目。
使用以下 URL、标头和 JSON 正文创建 DELETE 请求,以删除对话语言理解项目。
请求 URL
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}?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 请求进行身份验证。 |
发送 API 请求后,将收到一个指示成功的 202
响应,这意味着项目已被删除。
后续步骤
生成架构