共用方式為

使用命名实体识别 (NER) 和 Power Automate 在 Excel 中提取信息

在本教程中,你将创建 Power Automate 流来提取 Excel 电子表格中的文本,而无需编写代码。

此流使用一个电子表格,其中包含有关公寓大楼的问题,并将其分类为两个类别:管道和其他类别。 它还提取发送它们的租户的姓名和电话号码。 最后,流程会将此信息追加到 Excel 工作表。

本教程中,您将学习如何:

  • 使用 Power Automate 创建流
  • 从 OneDrive 上传 Excel 数据
  • 从 Excel 中提取文本,并将其发送以进行命名实体识别 (NER)
  • 使用 API 中的信息更新 Excel 工作表。

先决条件

将 Excel 文件添加到 OneDrive

GitHub 下载示例 Excel 文件。 此文件必须存储在 OneDrive 帐户中。

Excel 文件中的示例

问题以原始文本报告。 我们使用命名实体识别(NER)功能提取人员名称和电话号码。 然后,此流程在描述中查找“管道”一词来对问题进行分类。

创建新的 Power Automate 工作流

转到 Power Automate 站点并登录。 然后,选择“创建”和“计划的流”。

工作流创建屏幕

在“生成计划的云流”页上,使用以下字段初始化你的流:

字段
流名称 计划的审查或其他名称。
正在启动 输入当前日期和时间。
重复间隔 1 小时

向流添加变量

创建表示添加到 Excel 文件的信息的变量。 选择“新建步骤”并搜索“初始化变量”。 执行此作四次,并创建四个变量。

用于初始化变量的步骤

将以下信息添加到创建的变量中。 它们表示 Excel 文件的列。 如果任何变量已折叠,可以选择它们将其展开。

操作 名称 类型
初始化变量 var_person 字符串 人员
初始化变量 2 var_phone 字符串 电话号码
初始化变量 3 var_plumbing 字符串 管道
初始化变量 4 var_other 字符串 其他

流变量中包含的信息

读取 Excel 文件

选择“新建步骤”,键入“Excel”,然后从操作列表中选择“列出表中显示的行”。

将 Excel 行添加到流中

通过填写此操作中的字段,将 Excel 文件添加到流。 本教程要求将文件上传到 OneDrive。

在流中填充 Excel 行

选择“新建步骤”,添加“应用到每一个”操作。

添加“应用到每一个”操作

选择“从先前的步骤中选择一个输出”。 在显示的动态内容框中选择“值”。

从 Excel 文件中选择输出

发送实体识别的请求

如果尚未创建语言资源,则需要在 Azure 门户中创建语言资源

创建语言服务连接

在“应用到每一个”中,选择“添加操作”。 在 Azure 门户中,转到语言资源的“密钥和终结点”页,获取语言资源的密钥和终结点。

在你的流中,输入以下信息以创建新的语言连接。

注意

如果已创建语言连接并想要更改连接详细信息,请选择右上角的省略号,然后选择“ + 添加新连接”。

字段
连接名称 与语言资源的连接的名称。 例如 TAforPowerAutomate
帐户密钥 语言资源的密钥。
站点 URL 语言资源的终结点。

将语言资源凭据添加到流中

提取 Excel 内容

创建连接后,搜索“文本分析”并选择“命名实体识别”。 这会从问题的说明列中提取信息。

从 Excel 表中提取实体

选择“文本”字段,然后从显示的“动态内容”窗口中选择“说明”。 输入 en 作为语言,并输入唯一名称作为文档 ID(可能需要选择“显示高级选项”)。

从 Excel 表中获取说明列文本

在“应用到每一个”中选择“添加操作”,然后再创建一个“应用到每一个”操作。 在文本框内进行选择,然后在出现的“动态内容”窗口中选择“文档”。

创建另一个“应用到每一个”操作。

提取人名

接下来,在 NER 输出中找到人员实体类型。 在“应用到每一个 2”中选择“添加操作”,然后再创建一个“应用到每一个”操作。 在文本框内进行选择,然后在出现的“动态内容”窗口中选择“实体”。

在 NER 输出中查找人员实体

在新创建的“应用到每一个 3”操作中,选择“添加操作”并添加“条件”控件。

在“应用到每一个 3”操作中添加条件控件

在“条件”窗口中,选择第一个文本框。 在“动态内容”窗口中搜索“类别”并选择它。

将类别添加到控制条件中

确保第二个框设为“等于”。 然后选择第三个框,并在“动态内容”窗口中搜索 var_person

添加人员变量

在“如果是”条件中,在 Excel 中键入并选择“更新行”。

更新“是”条件

输入 Excel 信息,并更新 “键列”、“ 键值”和 “PersonName ”字段。 此步骤将 API 检测到的名称追加到 Excel 工作表。

添加 Excel 信息

获取电话号码

通过选择名称将应用于每个 3 操作最小化。 然后添加另一个 应用于每个 操作到 应用于每个 2,与之前相似,操作命名为 应用于每个 4。 选择文本框,并添加“实体”作为此操作的输出。

将文本分析输出中的实体添加到另一个“应用到每一个”操作。

在“应用到每一个 4”中添加“条件”控件。 此控件名为 条件 2。 从第一个文本框的“动态内容”窗口中搜索并添加“类别”。 确保第中间框设为“等于”。 然后在右侧文本框中输入 var_phone

添加第二个条件控件

在“如果是”条件中添加“更新行”操作。 然后,按照我们之前所做的那样,为 Excel 工作表的电话号码列输入信息。 此步骤将 API 检测到的电话号码追加到 Excel 工作表。

向第二个“如果是”条件添加 Excel 信息

获取管道问题

通过单击名称,最小化“应用到每一个 4”操作。 然后在父操作中创建另一个“应用到每一个”操作。 选择文本框,从“动态内容”窗口添加“实体”作为此操作的输出。

创建另一个“应用到每一个”操作

接下来,流检查 Excel 表格行中的问题说明是否包含“管道”一词。如果是,则会在 IssueType 列中添加“管道”。 否则,我们将输入“其他”选项。

在“应用到每一个 4”操作中添加“条件”控件 。 它被命名为 条件 3。 在第一个文本框中,使用“动态内容”窗口搜索并添加 Excel 文件中的“说明”。 确保中间框显示“包含”。 然后在右侧文本框中查找并选择 var_plumbing

创建新的条件控件

在“如果是”条件中选择“添加操作”,然后选择“更新行”。 然后像之前那样输入信息。 在“问题类型”列中选择 var_plumbing。 此步骤将“管道”标签应用于该行。

在“如果否”条件中选择“添加操作”,然后选择“更新行”。 然后像之前那样输入信息。 在“问题类型”列中选择 var_other。 此步骤向行应用“其他”标签。

向两个条件中添加信息

测试工作流

在屏幕右上角,依次选择“保存”和“测试”。 在“测试流”下,选择“手动”。 然后,选择“测试”和“运行流”。

Excel 文件会在 OneDrive 帐户中更新。 如以下示例所示:

测试工作流并查看输出

后续步骤