ラボの設定手順と要件
アカウントと進行状況を保護します。このラボを実行するには、常にシークレット ブラウジング ウィンドウとラボの認証情報を使用してください。

Document AI を使用して大規模なデータ キャプチャを自動化: チャレンジラボ

ラボ 20分 universal_currency_alt クレジット: 5 show_chart 中級
info このラボでは、学習をサポートする AI ツールが組み込まれている場合があります。
このコンテンツはまだモバイル デバイス向けに最適化されていません。
快適にご利用いただくには、メールで送信されたリンクを使用して、デスクトップ パソコンでアクセスしてください。

GSP367

Google Cloud セルフペース ラボのロゴ

概要

チャレンジラボでは、シナリオと一連のタスクが提供されます。手順ガイドに沿って進める形式ではなく、コース内のラボで習得したスキルを駆使して、ご自身でタスクを完了していただきます。タスクが適切に完了したかどうかは、このページに表示される自動スコアリング システムで確認できます。

チャレンジラボは、Google Cloud の新しいコンセプトについて学習するためのものではありません。デフォルト値を変更する、エラー メッセージを読み調査を行ってミスを修正するなど、習得したスキルを応用する能力が求められます。

100% のスコアを達成するには、制限時間内に全タスクを完了する必要があります。

このラボは、「Document AI を使用して大規模なデータ キャプチャを自動化」スキルバッジ コースに登録している受講者を対象としています。準備が整ったらチャレンジを開始しましょう。

チャレンジ シナリオ

あなたは、大手インフラストラクチャ管理会社のデータ エンジニアです。社内のプロジェクトで財務部門と連携して作業することになりました。同社では、検証や承認のために個別の手動処理を必要とするドキュメントが増え続けており、それらを大量に処理しなければなりません。これは、多くのスタッフを必要とする高コストな作業です。ドキュメントの収集、分類、検証のプロセスを Google Cloud のツールを活用して自動化し、省力化を進めて効率的な方法で行いたいと考えています。

チャレンジ

Cloud Storage にアップロードされたドキュメントを自動的に処理するドキュメント処理パイプラインを作成する必要があります。このパイプラインはプライマリ Cloud Run functions で構成されており、Document AI フォーム プロセッサを使用して新しいファイルを処理し、ドキュメントからデータを抽出します。そして、それらのファイルで検出されたフォームデータを BigQuery に保存します。

処理を実行する Cloud Run 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 バケットでホストされます。これらのソースファイルを 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 パーサー プロセッサを使用して、汎用フォーム プロセッサのインスタンスを作成します。汎用フォーム プロセッサはあらゆる種類のドキュメントを処理し、ドキュメント内の識別可能なテキスト コンテンツをすべて抽出するほか、レイアウトから推測されるフォーム情報も抽出します。

  • 以下の設定を使用してプロセッサを作成します。
プロパティ
プロセッサ タイプ Form パーサー
プロセッサ名
リージョン 米国
注: このラボでは後ほど、このプロセッサの PROCESSOR IDPARSER LOCATION を使用して Cloud Run functions を構成します。そうすることで、Cloud Run functions はこの特定のプロセッサを使用して請求書を処理します。作成したプロセッサをクリックし、PROCESSOR ID をメモします。ただし、プロセッサのリージョンは PARSER LOCATION です。 フォーム プロセッサを作成する

タスク 3. Google Cloud リソースを作成する

ドキュメント処理パイプラインに必要な Google Cloud Storage と BigQuery のリソースを作成して、環境を準備します。

入力、出力、アーカイブの Cloud Storage バケットを作成する

  • このステップでは、均一なバケットレベルのアクセスを有効にして、以下の 3 つの Cloud Storage バケットを作成する必要があります。
バケット名 目的 ストレージ クラス ロケーション
請求書入力用 標準
処理済みデータ保存用 標準
請求書アーカイブ用 標準
注: バケットは、gsutil ツールで -mb パラメータを指定して作成できます。ストレージ クラスを設定する -c パラメータ、(リージョンの)ロケーションを設定する -l パラメータ、均一なバケットレベルのアクセスを設定する -b フラグ(値はオンまたはオフ)も利用できます。gsutil を使用したバケットの作成について詳しくは、「mb - バケットを作成する」のリファレンスをご覧ください。

BigQuery のデータセットとテーブルを作成する

  • このステップでは、データ処理パイプラインに必要な BigQuery データセットと出力テーブルを作成する必要があります。

データセット

データセット名 ロケーション
invoice_parser_results 米国
注: BigQuery リソースを作成するには、bq mk を使用します。コマンドライン スイッチ パラメータ -d はデータセットの作成に使用され、--location はリソースのロケーションの設定に使用されます。bq コマンドライン ツールを使用してデータセットを作成する方法について詳しくは、データセットの作成ガイドをご覧ください。

テーブル

抽出された情報のテーブル スキーマは、JSON ファイル document-ai-challenge/scripts/table-schema/doc_ai_extracted_entities.json で提供されています。このスキーマを使用して、invoice_parser_results データセットに doc_ai_extracted_entities という名前のテーブルを作成します。

注: BigQuery リソースを作成するには、bq mk を使用します。コマンドライン スイッチ --table は、テーブルを作成するために使用されます。bq コマンドライン ツールを使用してスキーマ定義でテーブルを作成する方法について詳しくは、テーブルの作成と使用に関するガイドをご覧ください。

Cloud コンソールで BigQuery に移動し、BigQuery SQL ワークスペースを使用して invoice_parser_results データセット内のテーブルのスキーマを調べます。

Google Cloud リソースを作成する

タスク 4. ドキュメント処理の Cloud Run functions をデプロイする

このタスクを完了するには、データ処理パイプラインが使用する Cloud Run functions をデプロイして、Cloud Storage にアップロードされた請求書を処理する必要があります。この関数は、Document AI API の汎用フォーム プロセッサを使用して、元のドキュメントからフォームデータを抽出します。

Cloud Run functions のソースコードは、コードエディタまたは任意の他のエディタを使用して確認できます。Cloud Run functions は、Cloud Shell の以下のフォルダに保存されます。

  • 請求書の処理 - scripts/cloud-functions/process-invoices

Cloud Run functions の process-invoices は、先に作成した入力ファイル ストレージ バケットにファイルがアップロードされたときにトリガーされる必要があります。

Cloud Storage にアップロードされたドキュメントを処理する Cloud Run functions をデプロイする

Document AI フォーム プロセッサを使用して Cloud Storage バケットにアップロードされたフォーム ドキュメントを解析する Cloud Run functions をデプロイします。

  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 注: 関数のデプロイ中に権限エラーが発生した場合は、2~3 分待ってからコマンドを再実行してください。

Cloud Run functions のソースコードを調べると、この関数が 2 つのランタイム環境変数を介して Document AI プロセッサの詳細を取得していることがわかります。

  • 前のステップでデプロイした Form パーサー プロセッサの正しい値が環境変数 PROCESSOR_IDPARSER_LOCATION に含まれるように、Cloud Run functions のデプロイを再構成する必要があります。
  • PARSER_LOCATION の値は小文字にしてください。
  • 環境変数 PROJECT_IDを実際のプロジェクト ID に更新してください。

関数が完全に再デプロイされるまで待ちます。

ドキュメント処理の Cloud Run functions をデプロイする

タスク 5. エンドツーエンドのソリューションをテストして検証する

最後のタスクでは、~/document-ai-challenge/invoices フォルダにある一連の請求書をパイプラインを使用して正常に処理する必要があります。

  1. これらの請求書を入力 Cloud Storage バケットにアップロードし、パイプラインの進行状況をモニタリングします。

  2. 関数の実行が完了し、ステータスが 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 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。

マニュアルの最終更新日: 2025 年 11 月 14 日

ラボの最終テスト日: 2025 年 11 月 14 日

Copyright 2026 Google LLC. All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。

始める前に

  1. ラボでは、Google Cloud プロジェクトとリソースを一定の時間利用します
  2. ラボには時間制限があり、一時停止機能はありません。ラボを終了した場合は、最初からやり直す必要があります。
  3. 画面左上の [ラボを開始] をクリックして開始します

シークレット ブラウジングを使用する

  1. ラボで使用するユーザー名パスワードをコピーします
  2. プライベート モードで [コンソールを開く] をクリックします

コンソールにログインする

    ラボの認証情報を使用して
  1. ログインします。他の認証情報を使用すると、エラーが発生したり、料金が発生したりする可能性があります。
  2. 利用規約に同意し、再設定用のリソースページをスキップします
  3. ラボを終了する場合や最初からやり直す場合を除き、[ラボを終了] はクリックしないでください。クリックすると、作業内容がクリアされ、プロジェクトが削除されます

このコンテンツは現在ご利用いただけません

利用可能になりましたら、メールでお知らせいたします

ありがとうございます。

利用可能になりましたら、メールでご連絡いたします

1 回に 1 つのラボ

既存のラボをすべて終了して、このラボを開始することを確認してください

シークレット ブラウジングを使用してラボを実行する

このラボを実行するには、シークレット モードまたはシークレット ブラウジング ウィンドウを使用することをおすすめします。これにより、個人アカウントと受講者アカウントの競合を防ぎ、個人アカウントに追加料金が発生することを防ぎます。