如何在业务流程工作流中创建项目

业务流程工作流可用于创建那些会将应用程序连接到以下项的项目:

  • 自定义语言理解
  • 问答
  • LUIS

先决条件

开始使用业务流程工作流之前,需具备以下各项:

创建“语言”资源

在开始使用编排工作流之前,您需要语言资源。

注释

  • 需要在资源组上分配 所有者 角色才能创建语言资源。
  • 如果打算使用问答,则必须在资源创建中启用问答

从 Azure 门户创建新资源

  1. 转到 Azure 门户 创建新的 Azure 语言资源。

  2. 选择“继续创建资源”

  3. 创建包含以下详细信息的语言资源。

    实例详细信息 所需的值
    区域 支持的区域之一。
    Name 语言资源的名称。
    定价等级 支持的定价层之一。

创建编排工作流项目(REST API)

创建语言资源后,就可以创建业务流程工作流项目了。

使用以下 URL、标头和 JSON 正文提交 PATCH 请求,以创建新项目。

请求的 URL

创建 API 请求时,请使用以下 URL。 将占位符中的值替换为您自己的值。

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

Headers

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

Key 价值
Ocp-Apim-Subscription-Key 资源的键。 用于对 API 请求进行身份验证。

Body

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

{
  "projectName": "{PROJECT-NAME}",
  "language": "{LANGUAGE-CODE}",
  "projectKind": "Orchestration",
  "description": "Project description"
 }
Key Placeholder 价值 Example
projectName {PROJECT-NAME} 项目名称。 此值区分大小写。 EmailApp
language {LANGUAGE-CODE} 指定项目中所用语句的语言代码的字符串。 如果您的项目是多语言项目,请为大多数话语选择语言代码 en-us

使用 REST API 导入编排工作流项目

可以将业务流程工作流 JSON 导入服务

使用以下 URL、标头和 JSON 正文提交 POST 请求,以导入项目

请求的 URL

创建 API 请求时,请使用以下 URL。 将占位符中的值替换为您自己的值。

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

Headers

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

Key 价值
Ocp-Apim-Subscription-Key 资源的键。 用于对 API 请求进行身份验证。

Body

注释

每个意向只能是一种类型(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": "00001111-aaaa-2222-bbbb-3333cccc4444",
            "appVersion": "string",
            "slotName": "string"
          },
          "cluOrchestration": {
            "projectName": "string",
            "deploymentName": "string"
          },
          "qnaOrchestration": {
            "projectName": "string"
          }
        }
      }
    ],
    "utterances": [
      {
        "text": "Trying orchestration",
        "language": "{LANGUAGE-CODE}",
        "intent": "string"
      }
    ]
  }
}

Key Placeholder 价值 Example
api-version {API-VERSION} 要调用的 API 的版本。 此处使用的版本必须与 URL 中的 API 版本相同。 2022-03-01-preview
projectName {PROJECT-NAME} 项目名称。 此值区分大小写。 EmailApp
language {LANGUAGE-CODE} 指定项目中所用语句的语言代码的字符串。 如果您的项目是多语言项目,请为大多数话语选择语言代码 en-us

导出项目(REST API)

你随时可以将业务流程工作流项目导出为 JSON 文件。

使用以下 URL、标头和 JSON 正文创建 POST 请求,以导出项目

请求的 URL

创建 API 请求时,请使用以下 URL。 将占位符中的值替换为您自己的值。

{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/:export?stringIndexType=Utf16CodeUnit&api-version={API-VERSION}
Placeholder 价值 Example
{ENDPOINT} 用于对 API 请求进行身份验证的终结点。 https://<your-custom-subdomain>.cognitiveservices.azure.cn
{PROJECT-NAME} 项目名称。 此值区分大小写。 EmailApp
{API-VERSION} 要调用的 API 的版本 2023-04-01

Headers

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

Key 价值
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。

获取编排项目详细信息(REST API)

若要获取业务流程工作流项目的详细信息,请使用以下 URL 和标头提交 GET 请求。 将占位符中的值替换为您自己的值。

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

Headers

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

Key 价值
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 响应正文以及项目详细信息。

删除项目 (REST API)

如果你不再需要项目,可以使用 API 删除该项目。

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

请求的 URL

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

Headers

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

Key 价值
Ocp-Apim-Subscription-Key 资源的键。 用于对 API 请求进行身份验证。

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

显示如何导入业务流程项目的屏幕截图。

后续步骤

生成架构