你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

创建文档翻译流(预览版)

重要

翻译器连接器目前以公共预览版提供。 在正式发布 (GA) 之前,根据用户反馈,功能、方法和流程可能会发生更改。

本教程将指导你配置支持文档翻译的 Microsoft 翻译器 V3 连接器云端流。 翻译器 V3 连接器在翻译器服务实例和 Microsoft Power Automate 之间创建连接,让你能够使用一个或多个预构建操作作为应用和工作流中的步骤。

文档翻译是 Azure AI 翻译服务的一项基于云的 REST API 功能。 文档翻译 API 支持多种复杂的文档翻译,同时保留原始文档的结构和数据格式。

在本教程中:

先决条件

下面是在开始之前需要满足的条件:翻译器资源、至少有两个容器的 Azure 存储帐户,以及一个拥有基于角色的访问权限的系统分配的托管标识

翻译器资源

  • 如果你没有有效的 Azure 帐户,可以免费创建一个

  • 创建单服务翻译资源(而不是多服务 Azure AI 服务资源)。 在填写翻译器项目和实例详细信息字段时,请特别注意以下项:

    • 资源区域。 选择一个地理区域,例如“美国西部”(不要选择“全球”区域)。

    • 定价层。 选择“标准 S1”来试用该服务。

  • 使用翻译器资源的密钥和名称将应用程序连接到 Power Automate。 翻译器资源密钥位于 Azure 门户中的“资源管理”部分下,资源名称位于页面顶部。

    Get key and endpoint.

  • 将你的密钥和资源名称复制并粘贴到方便访问的位置(例如 Microsoft 记事本)。

Azure 存储

  • 接下来,需要一个 Azure Blob 存储帐户,并至少提供两个容器用于存储源文件和目标文件:

    • 源容器。 将在此容器中上传要翻译的文件(必需)。
    • 目标容器。 在此容器中存储已翻译的文件(必需)。
  • 如果你的存储帐户位于防火墙后面,则必须启用额外的配置:

    1. 转到 Azure 门户并登录 Azure 帐户。

    2. 选择你的存储帐户。

    3. 在左窗格的“安全性 + 网络”组中,选择“网络”。

    4. 在“防火墙和虚拟网络”选项卡中,选择“从所选虚拟网络和 IP 地址启用”。

      Screenshot: Selected networks radio button selected.

    5. 取消选中所有复选框。

    6. 确保选中“Microsoft 网络路由”。

    7. 在“资源实例”部分下,选择 Microsoft.CognitiveServices/accounts 作为资源类型,并选择翻译器资源作为实例名称。

    8. 确保选中“允许受信任服务列表中的 Azure 服务访问此存储帐户”框。 有关管理例外的详细信息,请参阅配置 Azure 存储防火墙和虚拟网络

      Screenshot: allow trusted services checkbox, portal view.

    9. 选择“保存”。 网络更改最多可能需要 5 分钟才会传播。

附带 RBAC 的托管标识

最后,必须先使用附带基于角色的访问控制 (RBAC) 的托管标识向翻译器资源授予对你的存储帐户的访问权限,然后才能使用翻译器 V3 连接器的操作翻译文档。

Screenshot of managed identity flow (RBAC).

创建托管标识

首先,为翻译器资源创建系统分配的托管标识,并为该标识授予对你的 Azure 存储帐户的特定访问权限:

  1. 转到 Azure 门户并登录 Azure 帐户。

  2. 选择翻译器资源。

  3. 在左窗格的“资源管理”组中,选择“标识”。

  4. 在“系统分配”选项卡中,打开“状态”切换开关。

  5. 选择“保存”。

    Screenshot: resource management identity tab in the Azure portal.

角色分配

接下来,在存储资源的存储范围为托管标识分配 Storage Blob Data Contributor 角色。

  1. 转到 Azure 门户并登录 Azure 帐户。

  2. 选择翻译器资源。

  3. 在左窗格的“资源管理”组中,选择“标识”。

  4. 在“权限”下,选择“Azure 角色分配” :

    Screenshot: enable system-assigned managed identity in Azure portal.

  5. 在打开的“Azure 角色分配”页面上,从下拉菜单中选择订阅,然后选择“+ 添加角色分配”。

    Screenshot: Azure role assignments page in the Azure portal.

  6. 最后,为翻译器服务资源分配“存储 Blob 数据参与者”角色。 “存储 Blob 数据参与者”角色向翻译器(由系统分配的托管标识表示)授予对 Blob 容器和数据的读取、写入和删除权限。 在“添加角色分配”弹出窗口中,按如下所示填写字段,然后选择“保存” :

    字段
    范围 存储。
    订阅 与存储资源关联的订阅。
    资源 存储资源的名称。
    角色 存储 Blob 数据参与者。
  7. 显示“已添加角色分配”确认消息后,请刷新页面以查看添加的角色分配。

    Screenshot: Added role assignment confirmation pop-up message.

  8. 如果没有立即看到新的角色分配,请稍候,然后尝试再次刷新页面。 分配角色或删除角色分配时,最长可能需要 30 分钟更改才能生效。

    Screenshot: Azure role assignments window.

配置文档翻译流

完成先决条件和初始设置后,让我们开始使用翻译器 V3 连接器创建文档翻译流:

  1. 登录到 Power Automate

  2. 在左侧边栏菜单中选择“创建”。

  3. 在主内容区域中选择“即时云端流”。

    Screenshot showing how to create an instant cloud flow.

  4. 在弹出窗口中为流命名,然后依次选择“手动触发流”、“创建”。

    Screenshot showing how to manually trigger a flow.

  5. 即时流的第一个步骤“手动触发流”会显示在屏幕上。 选择“新建步骤”。

    Screenshot of add new flow step page.

翻译文档

接下来,我们可以选择一个操作。 可以翻译位于“Azure Blob 存储”或“Microsoft SharePoint”帐户中的文档。

Azure Blob 存储

下面是使用翻译器 V3 连接器翻译 Azure Blob 存储中的文件的步骤:

  • 选择“翻译器 V3 连接器”。
  • 选择“文档翻译”。
  • 输入你的 Azure Blob 存储凭据和容器位置。
  • 选择源语言和目标语言,然后翻译文档。
  • 获取翻译操作的状态。
  1. 在“选择操作”弹出窗口的“搜索连接器和操作”搜索栏中输入“翻译器 V3”,然后选择“Microsoft 翻译器 V3”图标。

    Screenshot showing the selection of Translator V3 as the next flow step.

  2. 选择“开始翻译文档”操作。

  3. 如果这是你第一次使用翻译器 V3 连接器,则需要输入你的资源凭据:

    • 连接名称。 输入连接的名称。

    • 订阅密钥。 翻译器资源密钥位于 Azure 门户中资源侧边栏的“资源管理”部分下。 输入一个密钥。 确保将翻译器资源分配到某个地理区域,例如“美国西部”(不要分配到全球区域)。

    • 翻译器资源名称。 输入 Azure 门户中资源页面顶部显示的翻译器资源名称。 选择“创建”。

      Screenshot showing the add connection window.

      注意

      设置连接后,无需为后续流重新输入凭据。

  4. 此时会显示“开始翻译文档”操作窗口。 如下所述填写字段:

    • 输入文档的存储类型: 选择“文件”或“文件夹”。

    • 从下拉菜单中选择“源语言”,或保留默认的“自动检测”选项。

    • 源文档的位置: 输入 Azure 存储源文档容器中文档的 URL。

    • 已翻译文档的位置: 输入 Azure 存储目标文档容器的 URL。

      若要查找源 URL 和目标 URL,请执行以下操作:

      • 导航到 Azure 门户中的存储帐户。

      • 在左侧边栏中的“数据存储”下,选择“容器”:

        Source 目标
        选中源容器旁边的复选框 选中目标容器旁边的复选框。
        在主窗口区域中,选择要翻译的文件或文档。 选择右侧的省略号,然后选择“属性”。
        源 URL 位于“属性”列表的顶部。 选择“复制到剪贴板”图标。 目标 URL 位于“属性”列表的顶部。 选择“复制到剪贴板”图标。
        导航到 Power Automate 流,并将源 URL 粘贴到“源文档的位置”字段中。 导航到 Power Automate 流,并将目标 URL 粘贴到“已翻译文档的位置”字段中。
    • 从下拉菜单中选择一种目标语言,然后选择“保存”。

      Screenshot of the Start document translation dialog window.

获取文档状态

提交要翻译的文档后,让我们检查操作状态。

  1. 选择“新建步骤”。

  2. 在搜索框中输入“翻译器 V3”,然后选择“Microsoft 翻译器 V3”。

  3. 选择“获取文档状态”(并非单纯的获取文档状态操作)。

    Screenshot of the get documents status step.

  4. 接下来,输入一个表达式来检索 operation ID 值。

  5. 选择“操作 ID”字段。 此时会显示一个“动态内容” / “表达式”下拉窗口。

  6. 选择“表达式”选项卡,并在函数字段中输入以下表达式:

    
       body('Start_document_translation').operationID
    
    

    Screenshot showing function creation window.

  7. 选择“确定”。 该函数显示在“操作 ID”窗口中。 选择“保存”。

    Screenshot showing the operation ID field with an expression function value.

测试连接器流

现在,让我们检查我们的流和文档翻译结果。

  1. 页面顶部有一个绿色条形,指出“你的流已准备好运行”

  2. 选择页面右上角的“测试”。

    Screenshot showing the test icon/button.

  3. 在右侧窗口中选择以下按钮:“测试流”→“手动”→“测试”。

  4. 在下一个窗口中,选择“运行流”按钮。

  5. 最后,选择“完成”按钮。

  6. 此时应会出现“你的流已成功运行”消息,并且每个成功的步骤旁边都有一个绿色打勾标记

    Screenshot of successful document translation flow.

  7. 选择“获取文档状态”步骤,然后在“输出”部分选择“显示原始输出”。

  8. 此时会显示“获取文档状态”窗口。 JSON 响应的顶部会显示 "statusCode":200,指出请求成功。

    Screenshot showing the 'Get documents status' JSON response.

  9. 作为最后一项检查,请导航到你的 Azure Blob 存储目标源容器。 在那里,你应会在“概述”部分看到已翻译的文档。 该文档可能位于标有翻译语言代码的文件夹中。

就这么简单! 现在,你已学会了使用 Microsoft 翻译器 V3 连接器和 Power Automate 自动完成文档翻译过程。

后续步骤