使用具名實體辨識 (NER) 和 Power Automate 來擷取 Excel 中的資訊
在本教學課程中,您將建立 Power Automate 流程來擷取 Excel 試算表中的文字,而不需要撰寫程式碼。
此流程會擷取有關公寓型社區回報問題的試算表,並將其分類為兩個類別:「配管」和「其他」。 它也會擷取送出問題的租用戶姓名和電話號碼。 最後,該流程會將此資訊附加至 Excel 工作表。
在本教學課程中,您將了解如何:
- 使用 Power Automate 建立流程
- 從商務用 OneDrive 上傳 Excel 資料
- 從 Excel 擷取文字,並將其傳送給具名實體辨識 (NER)
- 使用 API 中的資訊來更新 Excel 工作表。
必要條件
- Microsoft Azure 帳戶。 建立免費帳戶或登入。
- 語言資源。 如果您沒有,可以在 Azure 入口網站中建立一項,並使用免費層來完成本教學課程。
- 當您建立資源時為您產生的金鑰和端點。
- 包含租用戶問題的試算表。 本教學課程中的範例資料可在 GitHub 上找到。
- Microsoft 365 (含商務用 OneDrive)。
將 Excel 檔案新增至商務用 OneDrive
從 GitHub 下載範例 Excel 檔案。 此檔案必須儲存在您的商務用 OneDrive 帳戶中。
問題會以原始文字回報。 我們將使用 NER 功能來擷取個人姓名和電話號碼。 然後,流程會尋找描述中的「配管」一字,以分類問題。
建立新的 Power Automate 工作流程
移至 Power Automate 網站並登入。 然後選取 [建立] 和 [已排程的流程]。
在 [建置預定雲端流程] 頁面上,使用下列欄位初始化您的流程:
欄位 | 值 |
---|---|
流程名稱 | 預定檢閱或其他名稱。 |
正在啟動 | 輸入目前的日期和時間。 |
重複間隔 | 1 小時 |
將變數新增至流程
建立變數來代表將新增至 Excel 檔案的資訊。 選取 [新增步驟],然後搜尋 [初始化變數]。 執行這項操作四次,以建立四個變數。
將下列資訊新增至您建立的變數。 這些變數代表 Excel 檔案的資料行。 如有任何變數處於摺疊狀態,您可以加以選取來展開。
動作 | 名稱 | 類型 | 值 |
---|---|---|---|
將變數初始化 | var_person | String | 個人 |
初始化變數 2 | var_phone | String | 電話號碼 |
初始化變數 3 | var_plumbing | String | 配管 |
初始化變數 4 | var_other | String | 其他 |
讀取 Excel 檔案
選取 [新增步驟] 並鍵入 Excel,然後從 [動作] 清單中選取 [列出資料表中的資料列]。
填入此動作中的欄位,以將 Excel 檔案新增至流程。 本教學課程需要將檔案上傳至商務用 OneDrive。
選取 [新增步驟],然後新增 [套用至各項] 動作。
選取 [選取先前步驟中的輸出]。 在顯示的 [動態內容] 方塊中,選取 [值]。
傳送實體辨識的要求
如果您還沒有這麼做,則必須在 Azure 入口網站中建立語言資源。
建立語言服務連線
在 [套用至各項] 中,選取 [新增動作]。 在 Azure 入口網站中,移至您語言資源的 [金鑰與端點] 頁面,然後取得您語言資源的金鑰與端點。
在您的流程中輸入下列資訊,以建立新的語言連線。
注意
如果您已建立語言連線,並想變更連線詳細資料,請選取右上角的省略符號,然後選取 [+ 新增連線]。
欄位 | 值 |
---|---|
連線名稱 | 語言資源的連線名稱。 例如: TAforPowerAutomate 。 |
帳戶金鑰 | 語言資源的金鑰。 |
網站 URL | 語言資源的端點。 |
擷取 Excel 內容
建立連線之後,請搜尋文字分析,然後選取 [具名實體辨識]。 這會從問題的 [描述] 資料行擷取資訊。
在 [文字] 欄位中選取,然後從顯示的 [動態內容] 視窗中選取 [描述]。 輸入 en
作為語言,並輸入唯一名稱作為文件識別碼 (您可能需要選取 [顯示進階選項])。
在 [套用至各項] 中,選取 [新增動作],然後建立另一個 [套用至各項] 動作。 在文字方塊中選取,然後在顯示的 [動態內容] 視窗中選取 [文件]。
擷取個人姓名
接下來,我們將在 NER 輸出中尋找個人實體類型。 在 [套用至各項 2] 中,選取 [新增動作],然後建立另一個 [套用至各項] 動作。 在文字方塊中選取,然後在顯示的 [動態內容] 視窗中選取 [實體]。
在新建立的 [套用至各項 3] 動作中,選取 [新增動作],然後新增 [條件] 控制項。
在 [條件] 視窗中,選取第一個文字方塊。 在 [動態內容] 視窗中,搜尋並選取 [類別]。
確定將第二個方塊設定為 [等於]。 然後選取第三個方塊,並在 [動態內容] 視窗中搜尋 var_person
。
在 [如果是] 條件中鍵入 Excel,然後選取 [更新資料列]。
輸入 Excel 資訊,並更新 [索引鍵資料行]、[索引鍵值] 和 [PersonName] 欄位。 這會將 API 偵測到的名稱附加至 Excel 工作表。
取得電話號碼
按一下 [套用至各項 3] 動作的名稱將其最小化。 然後,將另一個 [套用至各項] 動作新增至 [套用至各項 2] (如前所述), 並將其命名為套用至各項 4。 選取文字方塊,並新增 [實體] 作為此動作的輸出。
在 [套用至各項 4] 中,新增 [條件] 控制項, 並將其命名為條件 2。 在第一個文字方塊中,從 [動態內容] 視窗中搜尋並新增 [類別]。 確定將中間方塊設定為 [等於]。 然後,在右側文字方塊中輸入 var_phone
。
在 [如果是] 條件中,新增 [更新資料列] 動作。 然後,針對 Excel 工作表的 [電話號碼] 資料行,如前所述輸入資訊。 這會將 API 偵測到的電話號碼附加至 Excel 工作表。
取得配管問題
按一下 [套用至各項 4] 的名稱將其最小化。 然後在父動作中建立另一個 [套用至各項]。 選取文字方塊,並從 [動態內容] 視窗中新增 [實體] 作為此動作的輸出。
接下來,流程會檢查 Excel 資料表資料列中的問題描述是否包含「配管」一字。 如果是,則會在 [IssueType] 資料行中新增「配管」。 如果否,我們將輸入「其他」。
在 [套用至各項 4] 動作中,新增 [條件] 控制項, 並將其命名為條件 3。 在第一個文字方塊中,使用 [動態內容] 視窗從 Excel 檔案中搜尋並新增 [描述]。 確定中間方塊顯示 [包含]。 然後,在右側文字方塊中尋找並選取 [var_plumbing
]。
在 [如果是] 條件中,選取 [新增動作],然後選取 [更新資料列]。 然後如前所述輸入資訊。 在 [IssueType] 資料行中,選取 [var_plumbing
]。 這會將「配管」標籤套用至資料列。
在 [如果否] 條件中,選取 [新增動作],然後選取 [更新資料列]。 然後如前所述輸入資訊。 在 [IssueType] 資料行中,選取 [var_other
]。 這會將「其他」標籤套用至資料列。
測試工作流程
在畫面右上角選取 [儲存],然後選取 [測試]。 在 [測試流程] 下,選取 [手動]。 然後依序選取 [測試] 和 [執行流程]。
Excel 檔案將會在您的 OneDrive 帳戶中更新, 如下所示。