プロジェクト間でプロセッサのバージョンとデータセットをコピーする

このページでは、Document AI のトレーニング済みプロセッサ バージョンを、データセット スキーマとサンプルとともに、ソース プロセッサから宛先プロセッサにコピーする手順について説明します。これらの手順では、プロセッサ バージョンのインポート、デプロイ、宛先プロジェクトでのデフォルト バージョンとしての設定のプロセスが自動化されます。

始める前に

  • Google Cloud プロジェクト ID を取得します。
  • Document AI プロセッサ ID を取得している。
  • Cloud Storage を使用している。
  • Python を使用する: Jupyter ノートブック(Vertex AI)。
  • 移行元プロジェクトと移行先プロジェクトのサービス アカウントにアクセス権を付与する権限が必要です。

手順

手順は次のとおりです。

ステップ 1: Vertex AI Notebook に関連付けられているサービス アカウントを特定する

!gcloud config list account

出力:

[core]
account = example@automl-project.iam.gserviceaccount.com

Your active configuration is: [default]

ステップ 2: サービス アカウントに必要な権限を付与する

移行の宛先となる Google Cloud プロジェクトで、前の手順で取得したサービス アカウントをプリンシパルとして追加し、次の 2 つのロールを割り当てます。

  • Document AI 管理者
  • ストレージ管理者

詳細については、サービス アカウントへのロールの付与顧客管理の暗号鍵(CMEK)をご覧ください。

processor-version-migrate-1

移行を機能させるには、このノートブックの実行に使用されるサービス アカウントに次の権限が必要です。

  • データセット バケットを作成する(存在しない場合は作成する)ための転送元プロジェクトと転送先プロジェクトの両方のロールと、すべてのオブジェクトに対する読み取り / 書き込み権限。
  • プロセッサ バージョンをインポートするで説明されているように、ソース プロジェクトの Document AI 編集者ロール。

サービス アカウントとして認証と認可を行うことができるように、サービス アカウントの JSON キーをダウンロードします。詳細については、サービス アカウント キーをご覧ください。

次は:

  1. サービス アカウントに移動します。
  2. このタスクを実行するサービス アカウントを選択します。
  3. [] タブに移動し、Add Key をクリックして [新しい鍵を作成] を選択します。
  4. キーのタイプ(JSON を推奨)を選択します。
  5. Create をクリックして、特定のパスにダウンロードします。 processor-version-migrate-2

  6. 次のスニペットの service_account_key 変数のパスを更新します。

service_account_key='path_to_sa_key.json'

from google.oauth2 import service_account
from google.cloud import storage

# Authenticate the service account
credentials = service_account.Credentials.from_service_account_file(
    service_account_key
)

# pass this credentials variable to all client initializations
# storage_client = storage.Client(credentials=credentials)
# docai_client = documentai.DocumentProcessorServiceClient(credentials=credentials)

ステップ 3: ライブラリをインポートする

import time
from pathlib