Le previsioni batch ti consentono di inviare un numero elevato di prompt multimodali in una singola richiesta batch.
Per ulteriori informazioni sul flusso di lavoro batch e su come formattare i dati di input, consulta Ottenere previsioni batch per Gemini.
Modelli supportati:
Modello | Versione |
---|---|
Gemini 1.5 Flash | gemini-1.5-flash-002 gemini-1.5-flash-001 |
Gemini 1.5 Pro | gemini-1.5-pro-002 gemini-1.5-pro-001 |
Gemini 1.0 Pro | gemini-1.0-pro-001 gemini-1.0-pro-002 |
Sintassi di esempio
La seguente sintassi mostra come inviare una richiesta all'API di previsione batch utilizzando il comando curl
. Questo esempio è specifico per lo spazio di archiviazione 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": "..." } } }'
Parametri
Per informazioni dettagliate sull'implementazione, consulta gli esempi.
Richiesta del corpo
Parametri | |
---|---|
|
Un nome scelto per il tuo job. |
|
Il modello da utilizzare per la previsione batch. |
|
Il formato dei dati. Per la previsione batch di Gemini, sono supportate le origini di input Cloud Storage e BigQuery. |
|
La configurazione di output che determina la posizione dell'output del modello. Le posizioni di output di Cloud Storage e BigQuery sono supportate. |
inputConfig
Parametri | |
---|---|
|
Il formato di input del prompt. Utilizza |
|
L'URI dell'origine di input. Si tratta di una posizione di Cloud Storage del
file JSONL nel formato |
|
L'URI dell'origine di input. Si tratta di un URI della tabella BigQuery nel
formato |
outputConfig
Parametri | |
---|---|
|
Il formato di output della previsione. Utilizza |
|
La posizione del bucket e della directory Cloud Storage, nel formato
|
|
L'URI BigQuery della tabella di output di destinazione, nel
formato |
Esempi
Richiedere una risposta collettiva
Le richieste batch per i modelli multimodali accettano origini di archiviazione Cloud Storage e BigQuery. Per saperne di più, consulta le seguenti risorse:
A seconda del numero di elementi di input inviati, il completamento di un'attività di generazione batch può richiedere del tempo.
Per creare un job di previsione batch, utilizza il metodo
projects.locations.batchPredictionJobs.create
.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
LOCATION : una regione che supporta modelli Gemini.PROJECT_ID : il tuo ID progetto.INPUT_URI : la posizione di Cloud Storage dell'input di previsione batch JSONL, ad esempiogs://bucketname/path/to/file.jsonl
.OUTPUT_FORMAT : per eseguire l'output in una tabella BigQuery, specificabigquery
. Per eseguire l'output in un bucket Cloud Storage, specificajsonl
.DESTINATION : per BigQuery, specificabigqueryDestination
. Per Cloud Storage, specificagcsDestination
.OUTPUT_URI_FIELD_NAME : Per BigQuery, specificaoutputUri
. Per Cloud Storage, specificaoutputUriPrefix
.OUTPUT_URI : per BigQuery, specifica la posizione della tabella, ad esempiobq://myproject.mydataset.output_result
. La regione del set di dati BigQuery di output deve essere la stessa del job di previsione in batch di Vertex AI. Per Cloud Storage, specifica la posizione del bucket e della directory, ad esempiogs://mybucket/path/to/output
.
Corpo JSON della richiesta:
{ "displayName": "my-cloud-storage-batch-prediction-job", "model": "publishers/google/models/gemini-1.5-flash-002", "inputConfig": { "instancesFormat": "jsonl", "gcsSource": { "uris" : "INPUT_URI " } }, "outputConfig": { "predictionsFormat": "OUTPUT_FORMAT ", "DESTINATION ": { "OUTPUT_URI_FIELD_NAME ": "OUTPUT_URI " } } }
Per inviare la richiesta, scegli una delle seguenti opzioni:
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
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"
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$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
Dovresti ricevere una risposta JSON simile alla seguente.
Risposta
{ "name": "projects/PROJECT_ID /locations/LOCATION /batchPredictionJobs/BATCH_JOB_ID ", "displayName": "my-cloud-storage-batch-prediction-job", "model": "publishers/google/models/gemini-1.5-flash-002", "inputConfig": { "instancesFormat": "jsonl", "gcsSource": { "uris": [ "INPUT_URI " ] } }, "outputConfig": { "predictionsFormat": "OUTPUT_FORMAT ", "DESTINATION ": { "OUTPUT_URI_FIELD_NAME ": "OUTPUT_URI " } }, "state": "JOB_STATE_PENDING", "createTime": "2024-10-16T19:33:59.153782Z", "updateTime": "2024-10-16T19:33:59.153782Z", "modelVersionId": "1" }
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
LOCATION : una regione che supporta modelli Gemini.PROJECT_ID : il tuo ID progetto.INPUT_URI : la tabella BigQuery in cui si trova l'input di previsione batch, ad esempiobq://myproject.mydataset.input_table
. I set di dati multiregione non sono supportati.OUTPUT_FORMAT : per eseguire l'output in una tabella BigQuery, specificabigquery
. Per eseguire l'output in un bucket Cloud Storage, specificajsonl
.DESTINATION : per BigQuery, specificabigqueryDestination
. Per Cloud Storage, specificagcsDestination
.OUTPUT_URI_FIELD_NAME : Per BigQuery, specificaoutputUri
. Per Cloud Storage, specificaoutputUriPrefix
.OUTPUT_URI : per BigQuery, specifica la posizione della tabella, ad esempiobq://myproject.mydataset.output_result
. La regione del set di dati BigQuery di output deve essere la stessa del job di previsione in batch di Vertex AI. Per Cloud Storage, specifica la posizione del bucket e della directory, ad esempiogs://mybucket/path/to/output
.
Corpo JSON della richiesta:
{ "displayName": "my-bigquery-batch-prediction-job", "model": "publishers/google/models/gemini-1.5-flash-002", "inputConfig": { "instancesFormat": "bigquery", "bigquerySource":{ "inputUri" : "INPUT_URI " } }, "outputConfig": { "predictionsFormat": "OUTPUT_FORMAT ", "DESTINATION ": { "OUTPUT_URI_FIELD_NAME ": "OUTPUT_URI " } } }
Per inviare la richiesta, scegli una delle seguenti opzioni:
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
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"
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$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
Dovresti ricevere una risposta JSON simile alla seguente.
Risposta
{ "name": "projects/PROJECT_ID /locations/LOCATION /batchPredictionJobs/BATCH_JOB_ID ", "displayName": "my-bigquery-batch-prediction-job", "model": "publishers/google/models/gemini-1.5-flash-002", "inputConfig": { "instancesFormat": "bigquery", "bigquerySource": { "inputUri" : "INPUT_URI " } }, "outputConfig": { "predictionsFormat": "OUTPUT_FORMAT ", "DESTINATION ": { "OUTPUT_URI_FIELD_NAME ": "OUTPUT_URI " } }, "state": "JOB_STATE_PENDING", "createTime": "2024-10-16T19:33:59.153782Z", "updateTime": "2024-10-16T19:33:59.153782Z", "modelVersionId": "1" }
La risposta include un identificatore univoco per il job batch.
Puoi eseguire il polling dello stato del job batch utilizzando
BATCH_JOB_ID finché il job state
non è
JOB_STATE_SUCCEEDED
. Ad esempio:
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
Per scoprire come installare o aggiornare l'SDK Vertex AI per Python, consulta Installare l'SDK Vertex AI per Python. Per saperne di più, consulta la documentazione di riferimento dell'API Python.
Prima di provare questo esempio, segui le istruzioni di configurazione Node.js riportate nella guida rapida all'utilizzo delle librerie client di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Node.js di Vertex AI.
Per autenticarti a Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Prima di provare questo esempio, segui le istruzioni di configurazione Java riportate nella guida rapida all'utilizzo delle librerie client di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java di Vertex AI.
Per autenticarti a Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Prima di provare questo esempio, segui le istruzioni di configurazione Go riportate nella guida rapida all'utilizzo delle librerie client di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Go di Vertex AI.
Per autenticarti a Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Recuperare l'output batch
Al termine di un'attività di previsione batch, l'output viene archiviato nel bucket Cloud Storage o nella tabella BigQuery specificata nella richiesta.
Passaggi successivi
- Scopri come ottimizzare un modello Gemini in Panoramica dell'ottimizzazione del modello per Gemini.
- Scopri di più su come ottenere le previsioni batch per Gemini.