Google Cloud アカウントを設定し、プロセッサを作成したら、Document AI プロセッサにリクエストを送信できます。
リクエストの送信に使用されるコードは、すべてのプロセッサで同じです。各プロセッサが出力する情報で、プロセッサの機能の違いを確認できます。
Document AI の v1 API バージョンまたは Google Cloud コンソールを使用すると、特定のプロセッサ バージョンに処理リクエストを送信できます。プロセッサ バージョンを指定しない場合、デフォルトのバージョンが使用されます。詳細については、プロセッサ バージョンの管理をご覧ください。
オンライン処理
オンライン(同期)リクエストでは、処理する単一のドキュメントを送信できます。Document AI はリクエストを直ちに処理し、document を返します。
プロセッサにリクエストを送信する
次のコードサンプルは、プロセッサにリクエストを送信する方法を示しています。
REST
このサンプルでは、rawDocument オブジェクトでドキュメント コンテンツ(Base64 でエンコードされた文字列を介したバイト単位の未加工のドキュメント コンテンツ)を指定する方法を示します。
また、Document AI から返される Document JSON 形式と同じ inlineDocument を指定することもできます。これにより、同じ形式をやり取りしてリクエストをチェーンできます(ドキュメントを分類してからコンテンツを抽出する場合など)。
リクエストのデータを使用する前に、次のように置き換えます。
- LOCATION: プロセッサのロケーション(例:
-
)
us- 米国eu- 欧州連合
- PROJECT_ID: 実際の Google Cloud プロジェクト ID。
- PROCESSOR_ID: カスタム プロセッサの ID。
- skipHumanReview: 人間によるレビューを無効にするブール値(人間参加型プロセッサでのみサポートされます)。
true- 人間によるレビューをスキップしますfalse- 人間による確認を有効にします(デフォルト)
- MIME_TYPE†: 有効な MIME タイプ オプションのいずれか。
- IMAGE_CONTENT†: 有効なインライン ドキュメント コンテンツのいずれか。バイト ストリームとして表されます。JSON 表現の場合、バイナリ画像データの base64 エンコード(ASCII 文字列)。これは次のような文字列になります。
/9j/4QAYRXhpZgAA...9tAVx/zDQDlGxn//2Q==
- FIELD_MASK:
Document出力に含めるフィールドを指定します。これは、FieldMask形式の完全修飾フィールド名のカンマ区切りリストです。- 例:
text,entities,pages.pageNumber
- 例:
- INDIVIDUAL_PAGES: 処理する個々のページのリスト。
† このコンテンツは、inlineDocument オブジェクトで base64 エンコードされたコンテンツを使用して指定することもできます。
HTTP メソッドと URL:
POST https://LOCATION-documentai.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID:process
リクエストの本文(JSON):
{
"skipHumanReview": skipHumanReview,
"rawDocument": {
"mimeType": "MIME_TYPE",
"content": "IMAGE_CONTENT"
},
"fieldMask": "FIELD_MASK",
"processOptions": {
"individualPageSelector" {
"pages": [INDIVIDUAL_PAGES]
}
}
}
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-documentai.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID:process"
PowerShell
リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-documentai.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID:process" | Select-Object -Expand Content
リクエストが成功すると、サーバーは 200 OK HTTP ステータス コードと JSON 形式のレスポンスを返します。レスポンスの本文には Document のインスタンスが含まれます。
プロセッサ バージョンにリクエストを送信する
リクエストのデータを使用する前に、次のように置き換えます。
- LOCATION: プロセッサのロケーション(例:
-
)
us- 米国eu- 欧州連合
- PROJECT_ID: 実際の Google Cloud プロジェクト ID。
- PROCESSOR_ID: カスタム プロセッサの ID。
- PROCESSOR_VERSION: プロセッサのバージョン ID。詳細については、プロセッサ バージョンを選択するをご覧ください。例:
pretrained-TYPE-vX.X-YYYY-MM-DDstablerc
- skipHumanReview: 人間によるレビューを無効にするブール値(人間参加型プロセッサでのみサポートされます)。
true- 人間によるレビューをスキップしますfalse- 人間による確認を有効にします(デフォルト)
- MIME_TYPE†: 有効な MIME タイプ オプションのいずれか。
- IMAGE_CONTENT†: 有効なインライン ドキュメント コンテンツのいずれか。バイト ストリームとして表されます。JSON 表現の場合、バイナリ画像データの base64 エンコード(ASCII 文字列)。これは次のような文字列になります。
/9j/4QAYRXhpZgAA...9tAVx/zDQDlGxn//2Q==
- FIELD_MASK:
Document出力に含めるフィールドを指定します。これは、FieldMask形式の完全修飾フィールド名のカンマ区切りリストです。- 例:
text,entities,pages.pageNumber
- 例:
† このコンテンツは、inlineDocument オブジェクトで base64 エンコードされたコンテンツを使用して指定することもできます。
HTTP メソッドと URL:
POST https://LOCATION-documentai.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID/processorVersions/PROCESSOR_VERSION:process
リクエストの本文(JSON):
{
"skipHumanReview": skipHumanReview,
"rawDocument": {
"mimeType": "MIME_TYPE",
"content": "IMAGE_CONTENT"
},
"fieldMask": "FIELD_MASK"
}
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-documentai.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID/processorVersions/PROCESSOR_VERSION:process"
PowerShell
リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-documentai.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID/processorVersions/PROCESSOR_VERSION:process" | Select-Object -Expand Content
リクエストが成功すると、サーバーは 200 OK HTTP ステータス コードと JSON 形式のレスポンスを返します。レスポンスの本文には Document のインスタンスが含まれます。
C#
詳細については、Document AI C# API リファレンス ドキュメントをご覧ください。
Document AI に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Java
詳細については、Document AI Java API リファレンス ドキュメントをご覧ください。
Document AI に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Node.js
詳細については、Document AI Node.js API リファレンス ドキュメントをご覧ください。
Document AI に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。