实验设置说明和要求
保护您的账号和进度。请务必在无痕浏览器窗口中,使用实验凭证运行此实验。

使用 Document AI 大規模自動擷取資料:挑戰實驗室

实验 20 分钟 universal_currency_alt 5 积分 show_chart 中级
info 此实验可能会提供 AI 工具来支持您学习。
此内容尚未针对移动设备进行优化。
为获得最佳体验,请在桌面设备上访问通过电子邮件发送的链接。

GSP367

Google Cloud 自學實驗室標誌

總覽

在挑戰研究室中,您會在特定情境下完成一系列任務。挑戰研究室不會提供逐步說明,您將運用從課程研究室學到的技巧,自行找出方法完成任務!自動評分系統 (如本頁所示) 將根據您是否正確完成任務來提供意見回饋。

在您完成任務的期間,挑戰研究室不會介紹新的 Google Cloud 概念。您須靈活運用所學技巧,例如變更預設值或詳讀並研究錯誤訊息,解決遇到的問題。

若想滿分達標,就必須在時限內成功完成所有任務!

本實驗室適合參加下列技能徽章課程的學員:使用 Document AI 大規模自動擷取資料。準備迎接挑戰了嗎?

挑戰情境

您是某大型基礎架構管理公司的資料工程師,目前負責一項內部專案,與公司的財務部門合作。該公司須處理的文件不斷增加,每份文件都要手動驗證及授權,這項工作成本高昂,需大量人力。該公司打算運用 Google Cloud 工具,自動化收集、分類及驗證文件,提高效率並降低人力需求。

您的挑戰

您必須建立文件處理管道,自動處理上傳至 Cloud Storage 的文件。這個管道包含一個主要的 Cloud Run functions,會使用 Document AI 表單處理器處理新檔案,從中擷取資料。接著,該 functions 會將在這些檔案中偵測到的表單資料儲存至 BigQuery。

您會取得 Cloud Run functions 的原始碼,該 functions 將執行處理作業。您必須部署文件處理管道 (如以下架構圖所示),並確實為特定管道正確設定元件。

Document AI 挑戰實驗室解決方案架構

工作 1:啟用 Cloud Document AI API 並複製實驗室原始碼檔案。

在這項工作,您將啟用 Cloud Document AI API,並將啟動檔案複製到 Cloud Shell。

啟用 Cloud Document AI API

  • 啟用 Cloud Document AI API。
啟用 Cloud Document AI API

將實驗室原始碼檔案複製到 Cloud Shell

預先定義程式碼的 Cloud Run functions 會託管在遠端 Cloud Storage bucket。請將這些原始碼檔案複製到 Cloud Shell。這些檔案包含 Cloud Run functions 的原始碼,以及您將在實驗室建立的 BigQuery 資料表結構定義。

  • 在 Cloud Shell 輸入下列指令,複製實驗室的來源存放區:
mkdir ./document-ai-challenge gsutil -m cp -r gs://spls/gsp367/* \ ~/document-ai-challenge/

工作 2:建立表單處理器

在「一般」 (非專用) 區塊,使用 Document AI Form Parser 處理器建立一般表單處理器的執行個體。一般表單處理器能處理任何類型的文件,並擷取文件中可辨識的所有文字內容,還能根據版面配置推測表單資訊。

  • 請使用下列設定詳細資料建立處理器:
屬性
處理器類型 表單剖析器
處理器名稱
地區 美國
注意:在本實驗室的後續步驟,您將使用這個處理器的 PROCESSOR IDPARSER LOCATION 設定 Cloud Run functions,讓 Cloud Run functions 使用這個特定處理器處理帳單。點選建立的處理器,並記下 PROCESSOR ID。不過,處理器區域是 PARSER LOCATION。 建立表單處理器

工作 3:建立 Google Cloud 資源

建立文件處理管道所需的 Google Cloud Storage 和 BigQuery 資源,準備好環境。

建立輸入、輸出和封存 Cloud Storage bucket

  • 在這個步驟,您必須建立下列三個 Cloud Storage bucket,並啟用統一 bucket 層級存取權。
值區名稱 目的 儲存空間級別 位置
輸入帳單 標準
儲存已處理的資料 標準
封存帳單 標準
注意:您可以使用 gsutil 工具和 -mb 參數建立 bucket,並以 -c 參數設定儲存空間級別、用 -l 設定 (區域) 位置,以及透過 -b 旗標 (值為 on 或 off) 設定 bucket 層級的統一存取權。如要進一步瞭解如何使用 gsutil 建立值區,請參閱 mb - Make buckets 參考資料

建立 BigQuery 資料集和資料表

  • 在這個步驟,您必須建立 BigQuery 資料集和資料處理管道所需的輸出資料表。

資料集

資料集名稱 位置
invoice_parser_results 美國
注意:請使用 bq mk 建立 BigQuery 資源。指令列切換參數 -d 用於建立資料集,--location 則用於設定資源位置。如要進一步瞭解如何使用 bq 指令列工具建立資料集,請參閱建立資料集指南

資料表

JSON 檔案 document-ai-challenge/scripts/table-schema/doc_ai_extracted_entities.json 中已提供擷取資訊的資料表結構定義。請使用這個結構定義,在 invoice_parser_results 資料集建立資料表,並命名為 doc_ai_extracted_entities

注意:請使用 bq mk 建立 BigQuery 資源。指令列切換器 --table 用於建立資料表。如要進一步瞭解如何使用 bq 指令列工具,透過結構定義建立資料表,請參閱建立及使用資料表指南

您可以前往 Cloud 控制台的 BigQuery,並使用 BigQuery SQL 工作區檢查 invoice_parser_results 資料集的資料表結構定義。

建立 Google Cloud 資源

工作 4:部署文件處理 Cloud Run functions

如要完成這項工作,您必須部署資料處理管道使用的 Cloud Run functions,處理上傳至 Cloud Storage 的帳單。這個 functions 會使用 Document AI API 一般表單處理器,從原始文件擷取表單資料。

您可以使用程式碼編輯器或任何其他編輯器,檢查 Cloud Run functions 的原始碼。Cloud Run functions 儲存在下列 Cloud Shell 資料夾:

  • Process Invoices - scripts/cloud-functions/process-invoices

您必須設定 Cloud Run functions process-invoices的觸發時機:檔案上傳至先前建立的輸入檔案儲存 bucket 時。

部署 Cloud Run functions,處理上傳至 Cloud Storage 的文件

部署 Cloud Run functions,使用 Document AI 表單處理器剖析上傳至 Cloud Storage bucket 的表單文件。

  1. 前往 scripts 目錄:
cd ~/document-ai-challenge/scripts
  1. 將 Artifact Registry 讀取者角色指派給 Compute Engine 服務帳戶:
PROJECT_ID=$(gcloud config get-value project) PROJECT_NUMBER=$(gcloud projects list --filter="project_id:$PROJECT_ID" --format='value(project_number)') SERVICE_ACCOUNT=$(gcloud storage service-agent --project=$PROJECT_ID) gcloud projects add-iam-policy-binding $PROJECT_ID \ --member serviceAccount:$SERVICE_ACCOUNT \ --role roles/pubsub.publisher
  1. 部署 Cloud Run functions:
export CLOUD_FUNCTION_LOCATION={{{ project_0.default_region | "REGION" }}} gcloud functions deploy process-invoices \ --gen2 \ --region=${CLOUD_FUNCTION_LOCATION} \ --entry-point=process_invoice \ --runtime=python313 \ --service-account=${PROJECT_ID}@appspot.gserviceaccount.com \ --source=cloud-functions/process-invoices \ --timeout=400 \ --env-vars-file=cloud-functions/process-invoices/.env.yaml \ --trigger-resource=gs://${PROJECT_ID}-input-invoices \ --trigger-event=google.storage.object.finalize\ --service-account $PROJECT_NUMBER-compute@developer.gserviceaccount.com \ --allow-unauthenticated 注意:部署 functions 時,如果發生權限錯誤,請等待 2 到 3 分鐘,然後重新執行指令。

檢查 Cloud Run functions 原始碼,您會發現 functions 是透過兩個執行階段環境變數,取得 Document AI 處理器的詳細資料。

  • 您必須重新設定 Cloud Run functions 部署作業,確保環境變數 PROCESSOR_IDPARSER_LOCATION 包含您在前一個步驟部署的表單剖析器處理器的正確值。
  • 請務必將 PARSER_LOCATION 值設為小寫
  • 請務必將 PROJECT_ID 環境變數更新為您的專案 ID。

等待該 functions 完全重新部署。

部署 Document Processing Cloud Run functions

工作 5:測試並驗證端對端解決方案

最後一項工作是使用管道處理 ~/document-ai-challenge/invoices 資料夾中的一組帳單。

  1. 將這些帳單上傳至輸入 Cloud Storage bucket,並監控管道進度。

  2. 查看事件,直到最終事件指出 functions 已執行完畢且狀態為「OK」

當管道完善處理文件後,您會看到 Document AI 處理器從帳單擷取的表單資訊,已寫入 BigQuery 資料表。

注意:如要監控進度,請在 Cloud Run functions 的「管理」部分點選「記錄」來查看記錄。 注意:在本實驗室,您可能會看到一些錯誤,但這些錯誤不會對文件處理造成重大影響,尤其是逾時錯誤。如果沒有資料寫入 BigQuery,請再次確認 Cloud Run 控制台「變數與密鑰」分頁中的參數設定正確無誤,然後再試一次。

請特別確認您設定的處理器 ID 和位置變數有效,並注意位置參數必須為小寫。 此外請注意,活動清單不會自動重新整理。
驗證管道處理的資料

恭喜!

恭喜!您已在本實驗室,成功建立文件處理管道,這個管道會使用 Document AI API 自動處理上傳至 Cloud Storage 的文件。您已建立表單處理器、部署 Cloud Run functions 來處理文件,並透過處理一組帳單驗證端對端解決方案。

「使用 Document AI 大規模自動擷取資料」課程徽章

Google Cloud 教育訓練與認證

協助您瞭解如何充分運用 Google Cloud 的技術。我們的課程會介紹專業技能和最佳做法,讓您可以快速掌握要領並持續進修。我們提供從基本到進階等級的訓練課程,並有隨選、線上和虛擬課程等選項,方便您抽空參加。認證可協助您驗證及證明自己在 Google Cloud 技術方面的技能和專業知識。

使用手冊上次更新日期:2025 年 11 月 14 日

實驗室上次測試日期:2025 年 11 月 14 日

Copyright 2026 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。

准备工作

  1. 实验会创建一个 Google Cloud 项目和一些资源,供您使用限定的一段时间
  2. 实验有时间限制,并且没有暂停功能。如果您中途结束实验,则必须重新开始。
  3. 在屏幕左上角,点击开始实验即可开始

使用无痕浏览模式

  1. 复制系统为实验提供的用户名密码
  2. 在无痕浏览模式下,点击打开控制台

登录控制台

  1. 使用您的实验凭证登录。使用其他凭证可能会导致错误或产生费用。
  2. 接受条款,并跳过恢复资源页面
  3. 除非您已完成此实验或想要重新开始,否则请勿点击结束实验,因为点击后系统会清除您的工作并移除该项目

此内容目前不可用

一旦可用,我们会通过电子邮件告知您

太好了!

一旦可用,我们会通过电子邮件告知您

一次一个实验

确认结束所有现有实验并开始此实验

使用无痕浏览模式运行实验

使用无痕模式或无痕浏览器窗口是运行此实验的最佳方式。这可以避免您的个人账号与学生账号之间发生冲突,这种冲突可能导致您的个人账号产生额外费用。