您可以透過批次預測,在單一批次要求中傳送大量多模態提示。
如要進一步瞭解批次工作流程和如何設定輸入資料的格式,請參閱「取得 Gemini 的批次預測結果」。
支援的模型
語法範例
以下範例說明如何使用 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
參數 | |
---|---|
|
提示輸入格式。請使用 |
|
輸入來源 URI。這是 JSONL 檔案的 Cloud Storage 位置,格式為 |
|
輸入來源 URI。這是 |
outputConfig
參數 | |
---|---|
|
預測的輸出格式。使用 |
|
Cloud Storage 值區和目錄位置,格式為 |
|
目標輸出資料表的 BigQuery URI,格式為 |
範例
要求批次回應
多模態模型的批次要求可接受 Cloud Storage 儲存空間和 BigQuery 儲存空間來源。如需更多資訊,請參閱下列資源:
視您提交的輸入項目數量而定,批次產生作業可能需要一些時間才能完成。
REST
如要建立批次預測工作,請使用 projects.locations.batchPredictionJobs.create
方法。
Cloud Storage 輸入
使用任何要求資料之前,請先替換以下項目:
- LOCATION:支援 Gemini 模型的區域。
- PROJECT_ID:您的專案 ID。
- INPUT_URI:JSONL 批次預測輸入內容的 Cloud Storage 位置,例如
gs://bucketname/path/to/file.jsonl
。 - 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-cloud-storage-batch-prediction-job", "model": "publishers/google/models/gemini-2.0-flash-001", "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://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 回應。
BigQuery 輸入
使用任何要求資料之前,請先替換以下項目:
- LOCATION:支援 Gemini 模型的區域。
- PROJECT_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": "publishers/google/models/gemini-2.0-flash-001", "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 回應。
回應中會包含批次作業的專屬 ID。您可以使用 BATCH_JOB_ID 輪詢批次工作狀態,直到工作 state
為 JOB_STATE_SUCCEEDED
為止。例如:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/batchPredictionJobs/BATCH_JOB_ID
Gen AI SDK for 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 的批次預測結果。