クイックスタート: Document AI API を設定する

このガイドでは、Document AI の使用を開始するために必要なすべての設定手順を説明します。

Google Cloud コンソールについて

Google Cloud console は、 Google Cloud プロダクトを使用するシステムのプロビジョニング、構成、管理、モニタリングに使用されるウェブ UI です。 Google Cloud コンソールを使用して、Document AI リソースを設定して管理します。

プロジェクトを作成する

Google Cloudが提供するサービスを使用するには、プロジェクトを作成する必要があります。プロジェクトは、すべての Google Cloud リソースを整理し、次のコンポーネントで構成されます。

  • 共同編集者
  • 有効な API とその他のリソース
  • モニタリング ツール
  • お支払い情報
  • 認証とアクセス制御
  • Document AI プロセッサ

1 つのプロジェクトを作成することも、複数のプロジェクトを作成することもできます。プロジェクトを使用して、リソース階層内で Google Cloud リソースを整理することもできます。プロジェクトの詳細については、Resource Manager ドキュメントをご覧ください。

Google Cloud コンソールのプロジェクト セレクタページで、 Google Cloud プロジェクトを選択または作成します。

プロジェクトの選択または作成に必要なロール

  • プロジェクトを選択する: プロジェクトの選択に特定の IAM ロールは必要ありません。ロールが付与されているプロジェクトであれば、どのプロジェクトでも選択できます。
  • プロジェクトを作成する: プロジェクトを作成するには、resourcemanager.projects.create 権限を含むプロジェクト作成者ロール(roles/resourcemanager.projectCreator)が必要です。詳しくは、ロールを付与する方法をご覧ください。

プロジェクト セレクタに移動

API を有効にする

プロジェクトで Document AI API を有効にする必要があります。API の有効化の詳細については、サービス使用状況のドキュメントをご覧ください。

Document AI API を有効にします。

API を有効にするために必要なロール

API を有効にするには、serviceusage.services.enable 権限が必要です。プロジェクトを作成した場合は、オーナーロール(roles/owner)を介してこの権限がすでに付与されている可能性があります。それ以外の場合は、Service Usage 管理者ロール(roles/serviceusage.serviceUsageAdmin)を介してこの権限を取得できます。ロールを付与する方法をご覧ください。

API の有効化

課金を有効にする

請求先アカウントは、特定のリソースセットに対する支払いを誰が行うかを定義します。 請求先アカウントは 1 つ以上のプロジェクトにリンクできます。プロジェクトの利用料金は、リンクされた請求先アカウントに請求されます。課金は、プロジェクトの作成時に構成します。詳細については、お支払いとご請求に関するドキュメントをご覧ください。

Google Cloud プロジェクトに対して課金が有効になっていることを確認します

必要なロールを取得する

プリンシパルに Cloud Storage 内のファイルへのアクセス権を付与するために必要な権限を取得するには、バケットに対するストレージ管理者 roles/storage.admin)IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。

必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。

ロケーション

Document AI では、プロジェクトのリソースが保存、処理されるロケーションをある程度制御できます。特に、プロセッサを作成するときは、データを保存して処理するロケーションを選択する必要があります。デフォルトでは、Document AI は米国ロケーションにリソースを保存して処理します。ロケーションとして欧州連合を選択した場合、データとプロセスは欧州連合でのみ保存されます。

API を使用してロケーションを設定する

API を使用して処理リクエストを送信するたびに、プロセッサのロケーションを指定する必要があります。たとえば、データが EU で保存および処理されるようにプロセッサが構成されている場合は、次のように URI eu-documentai.googleapis.com を使用します。

Process
  • https://eu-documentai.googleapis.com/v1/projects/$PROJECT_ID/locations/eu/processors/$PROCESSOR_ID:process
  • https://eu-documentai.googleapis.com/v1beta3/projects/$PROJECT_ID/locations/eu/processors/$PROCESSOR_ID:process
batchProcess
  • https://eu-documentai.googleapis.com/v1/projects/$PROJECT_ID/locations/eu/processors/$PROCESSOR_ID:batchProcess
  • https://eu-documentai.googleapis.com/v1beta3/projects/$PROJECT_ID/locations/eu/processors/$PROCESSOR_ID:batchProcess

Document AI API クライアント ライブラリをインストールする

Document AI API を呼び出すには、次の 3 つのオプションがあります。

クライアント ライブラリは複数のよく使われている言語で利用できます。クライアント ライブラリのインストールについては、Document AI API クライアント ライブラリをご覧ください。

Google Cloud CLI をインストールして初期化する

gcloud CLI は、 Google Cloudでホストされるリソースやアプリケーションの管理に使用できる一連のツールを提供します。

次のリンクで手順を説明します。

Google Cloud CLI をインストールします。インストール後、次のコマンドを実行して Google Cloud CLI を初期化します。

gcloud init

外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。

認証を設定する

API を使用するクライアント アプリケーションはすべて、認証の対象であり、リクエストされるリソースへのアクセス権が付与されている必要があります。認証の設定方法は、ローカル開発環境で作業しているか、本番環境を設定しているのかによって異なります。詳細については、アプリケーションのデフォルト認証情報を設定するをご覧ください。

API へのアクセス方法に応じてタブを選択してください。

gcloud

Google Cloud CLI をインストールします。インストール後、次のコマンドを実行して Google Cloud CLI を初期化します。

gcloud init

外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。

クライアント ライブラリ

ローカル開発環境でクライアント ライブラリを使用するには、gcloud CLI をインストールして初期化し、ユーザー認証情報を使用してアプリケーションのデフォルト認証情報を設定します。

  1. Google Cloud CLI をインストールします。

  2. 外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。

  3. ローカルシェルを使用している場合は、ユーザー アカウントのローカル認証情報を作成します。

    gcloud auth application-default login

    Cloud Shell を使用している場合は、この操作を行う必要はありません。

    認証エラーが返され、外部 ID プロバイダ(IdP)を使用している場合は、 連携 ID を使用して gcloud CLI にログインしていることを確認します。

詳細については、 Google Cloud 認証ドキュメントの ローカル開発環境の ADC の設定をご覧ください。

REST

ローカル開発環境で REST API を使用するには、gcloud CLI に指定した認証情報を使用します。

    Google Cloud CLI をインストールします。

    外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。

詳細については、 Google Cloud 認証ドキュメントの REST を使用して認証するをご覧ください。

本番環境での認証の設定については、 Google Cloud 認証ドキュメントの Google Cloudで実行されるコードのアプリケーションのデフォルト認証情報を設定する をご覧ください。

ロールについて

認証されたプリンシパルが Google Cloudリソースにアクセスしようとすると、IAM はプリンシパルに必要な権限があるかどうかを確認します。プリンシパルに権限を付与するには、IAM 許可ポリシーでロールを付与します。プリンシパル、ロール、リソース、許可ポリシーの詳細については、IAM の概要をご覧ください。

Google Cloud リソースに対するロールをプリンシパルに付与する際は、最小権限の原則に従います。リクエストの完了に必要な権限よりも多くの権限をプリンシパルに付与しないでください。アクセス制御のベスト プラクティスの詳細については、IAM を安全に使用するをご覧ください。

Document AI のリソースにアクセスするには、必要な特定の権限を持つロールを使用します。詳細については、Document AI の権限Document AI のロールをご覧ください。

プロジェクト間のファイル アクセスの設定

1 つのプロジェクトで Document AI プロセッサを設定するときに、Document AI プロセッサをホストする同じ組織内の別のプロジェクトに保存されている入力ファイルにこのプロジェクトがアクセスできるようにすることがあります。

プロジェクト間のアクセスを許可するには、次の図に示すように、Document AI サービス エージェントに Storage オブジェクト閲覧者ロール(roles/storage.objectViewer)を付与する必要があります。

setup-1

  • プロジェクト A が Document AI プロセッサをホストし、必要に応じてバケット プロセッサの出力が書き込まれるバケットをホストするとします。
  • プロジェクト B は、Document AI プロセッサの入力ファイルを含むバケットを所有しています。
  • プロジェクト B のファイルに プロジェクト A からアクセスできるようにするには、プロジェクト B の入力バケットに対する Storage オブジェクト閲覧者ロール(roles/storage.objectViewer)を プロジェクト A の Document AI サービス エージェントに付与する必要があります。

    setup-2

IAM とストレージ オブジェクト閲覧者のロールの詳細については、Cloud Storage の IAM ロールをご覧ください。

組み込みサービス アカウント

Document AI サービス エージェントは、次の命名規則に従います。

service-{project number}@gcp-sa-prod-dai-core.iam.gserviceaccount.com

例: service-361747088407@gcp-sa-prod-dai-core.iam.gserviceaccount.com

setup-3

次のステップ: ユースケース

Document AI API を有効にすると、Document AI プロセッサを作成して使用できるようになります。どのタイプのプロセッサが最適かは、ユースケースによって異なります。