バッチ予測を使用すると、1 つのバッチ リクエストで大量のマルチモーダル プロンプトを送信できます。
バッチ ワークフローと入力データの形式設定の詳細については、Gemini のバッチ予測を取得するをご覧ください。
サポートされているモデル
- Gemini 2.5 Flash 画像
- Gemini 2.5 Flash-Lite
- Gemini 2.5 Pro
- Gemini 2.5 Flash
- Gemini 2.0 Flash
- Gemini 2.0 Flash-Lite
構文の例
次の例は、curl コマンドを使用してバッチ予測 API リクエストを送信する方法を示しています。この例は BigQuery ストレージに固有のものです。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://${LOCATION}-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/${LOCATION}/batchPredictionJobs \ -d '{ "displayName": "...", "model": "publishers/google/models/${MODEL_ID}", "inputConfig": { "instancesFormat": "bigquery", "bigquerySource": { "inputUri" : "..." } }, "outputConfig": { "predictionsFormat": "bigquery", "bigqueryDestination": { "outputUri": "..." } } }'
パラメータ
実装の詳細については、例をご覧ください。
本文リクエスト
| パラメータ | |
|---|---|
|
ジョブに付ける名前。 |
|
バッチ予測に使用するモデル。 |
|
データ形式。Gemini のバッチ予測では、Cloud Storage と BigQuery の入力ソースがサポートされています。 |
|
モデルの出力場所を決定する出力構成。Cloud Storage と BigQuery の出力場所がサポートされています。 |
inputConfig
| パラメータ | |
|---|---|
|
プロンプトの入力形式。Cloud Storage の場合は |
|
入力ソース URI。これは、 |
|
入力ソース URI。これは、 |
outputConfig
| パラメータ | |
|---|---|
|
予測の出力形式。 |
|
Cloud Storage バケットとディレクトリのロケーション( |
|
ターゲット出力テーブルの BigQuery URI( |
例
バッチ レスポンスをリクエストする
マルチモーダル モデルのバッチ リクエストは、Cloud Storage ストレージ ソースと BigQuery ストレージ ソースを受け入れます。詳細については、以下をご覧ください。
送信した入力アイテム数によっては、バッチ生成タスクが完了するまでに時間がかかることがあります。
REST
バッチ予測ジョブの作成には、projects.locations.batchPredictionJobs.create メソッドを使用します。
Cloud Storage 入力
リクエストのデータを使用する前に、次のように置き換えます。
- ENDPOINT_PREFIX: モデルリソースのリージョンと
-(例:us-central1-)。グローバル エンドポイントを使用する場合は、空白のままにします。注: チューニング済みモデルを使用するバッチ推論では、グローバル エンドポイントはサポートされていません。 - LOCATION: Gemini モデルをサポートするリージョン。グローバル エンドポイントを使用する場合は、「
global」と入力します。 - PROJECT_ID: プロジェクト ID。
- MODEL_PATH: パブリッシャー モデル名(
publishers/google/models/gemini-2.5-flashなど)またはチューニング済みエンドポイント名(projects/PROJECT_ID/locations/LOCATION/models/MODEL_IDなど)。ここで、MODEL_ID はチューニング済みモデルのモデル ID です。 - INPUT_URI: JSONL バッチ予測入力の Cloud Storage の場所(
gs://bucketname/path/to/file.jsonlなど)。 - OUTPUT_FORMAT:Cloud Storage バケットに出力するには、
jsonlを指定します。 - DESTINATION: BigQuery の場合は、
bigqueryDestinationを指定します。Cloud Storage の場合は、gcsDestinationを指定します。 - OUTPUT_URI_FIELD_NAME: BigQuery の場合は、
outputUriを指定します。Cloud Storage の場合は、outputUriPrefixを指定します。 - OUTPUT_URI: BigQuery の場合は、テーブルの場所(
bq://myproject.mydataset.output_resultなど)を指定します。BigQuery の出力データセットのリージョンは、Vertex AI バッチ予測ジョブのリージョンと同じである必要があります。Cloud Storage の場合は、バケットとディレクトリの場所(例:gs://mybucket/path/to/output)を指定します。
リクエストの本文(JSON):
{
"displayName": "my-cloud-storage-batch-prediction-job",
"model": "MODEL_PATH",
"inputConfig": {
"instancesFormat": "jsonl",
"gcsSource": {
"uris" : "INPUT_URI"
}
},
"outputConfig": {
"predictionsFormat": "OUTPUT_FORMAT",
"DESTINATION": {
"OUTPUT_URI_FIELD_NAME": "OUTPUT_URI"
}
}
}
リクエストを送信するには、次のいずれかのオプションを選択します。
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://ENDPOINT_PREFIXaiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs"
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://ENDPOINT_PREFIXaiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
BigQuery 入力
リクエストのデータを使用する前に、次のように置き換えます。
- LOCATION: Gemini モデルをサポートするリージョン。
- PROJECT_ID: 実際のプロジェクト ID。
- MODEL_PATH: パブリッシャー モデル名(
publishers/google/models/gemini-2.0-flash-001など)またはチューニング済みエンドポイント名(projects/PROJECT_ID/locations/LOCATION/models/MODEL_IDなど)。ここで、MODEL_ID はチューニング済みモデルのモデル ID です。 - INPUT_URI: バッチ予測入力が配置されている BigQuery テーブル(
bq://myproject.mydataset.input_tableなど)。データセットは、バッチ予測ジョブと同じリージョンに配置する必要があります。マルチリージョン データセットはサポートされていません。 - OUTPUT_FORMAT: BigQuery テーブルに出力するには、
bigqueryを指定します。Cloud Storage バケットに出力するには、jsonlを指定します。 - DESTINATION: BigQuery の場合は、
bigqueryDestinationを指定します。Cloud Storage の場合は、gcsDestinationを指定します。 - OUTPUT_URI_FIELD_NAME: BigQuery の場合は、
outputUriを指定します。Cloud Storage の場合は、outputUriPrefixを指定します。 - OUTPUT_URI: BigQuery の場合は、テーブルの場所(
bq://myproject.mydataset.output_resultなど)を指定します。BigQuery の出力データセットのリージョンは、Vertex AI バッチ予測ジョブのリージョンと同じである必要があります。Cloud Storage の場合は、バケットとディレクトリの場所(例:gs://mybucket/path/to/output)を指定します。
リクエストの本文(JSON):
{
"displayName": "my-bigquery-batch-prediction-job",
"model": "MODEL_PATH",
"inputConfig": {
"instancesFormat": "bigquery",
"bigquerySource":{
"inputUri" : "INPUT_URI"
}
},
"outputConfig": {
"predictionsFormat": "OUTPUT_FORMAT",
"DESTINATION": {
"OUTPUT_URI_FIELD_NAME": "OUTPUT_URI"
}
}
}
リクエストを送信するには、次のいずれかのオプションを選択します。
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-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs"
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-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
Python
インストール
pip install --upgrade google-genai
詳しくは、SDK リファレンス ドキュメントをご覧ください。
Vertex AI で Gen AI SDK を使用するための環境変数を設定します。
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_VERTEXAI=True
Cloud Storage 入力
BigQuery 入力
Node.js
このサンプルを試す前に、Vertex AI クイックスタート: クライアント ライブラリの使用にある Node.js の設定手順を完了してください。詳細については、Vertex AI Node.js API のリファレンス ドキュメントをご覧ください。
Vertex AI に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Cloud Storage 入力
BigQuery 入力
Java
このサンプルを試す前に、Vertex AI クイックスタート: クライアント ライブラリの使用にある Java の設定手順を完了してください。詳細については、Vertex AI Java API のリファレンス ドキュメントをご覧ください。
Vertex AI に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Cloud Storage 入力
BigQuery 入力
Go
このサンプルを試す前に、Vertex AI クイックスタート: クライアント ライブラリの使用にある Go の設定手順を完了してください。詳細については、Vertex AI Go API のリファレンス ドキュメントをご覧ください。
Vertex AI に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Cloud Storage 入力
BigQuery 入力
バッチ出力を取得する
バッチ予測タスクが完了すると、リクエストで指定した Cloud Storage バケットまたは BigQuery テーブルに出力が保存されます。
次のステップ
- Gemini モデルのチューニング方法を確認する。Gemini のモデル チューニングの概要をご覧ください。
- Gemini のバッチ予測を取得する方法を確認する。