Las predicciones por lotes te permiten enviar un gran número de peticiones multimodales en una sola solicitud por lotes.
Para obtener más información sobre el flujo de trabajo por lotes y cómo dar formato a los datos de entrada, consulta el artículo Obtener predicciones por lotes para Gemini.
Modelos admitidos
Sintaxis de ejemplo
En el siguiente ejemplo se muestra cómo enviar una solicitud a la API Batch Prediction mediante el comando curl
. Este ejemplo es específico del almacenamiento de 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": "..." } } }'
Parámetros
Consulta los ejemplos para obtener más información sobre la implementación.
Cuerpo de la solicitud
Parámetros | |
---|---|
|
El nombre que elijas para el trabajo. |
|
Modelo que se usará para la predicción por lotes. |
|
El formato de los datos. En el caso de la predicción por lotes de Gemini, se admiten las fuentes de entrada de Cloud Storage y BigQuery. |
|
La configuración de salida que determina la ubicación de la salida del modelo. Se admiten ubicaciones de salida de Cloud Storage y BigQuery. |
inputConfig
Parámetros | |
---|---|
|
El formato de entrada de la petición. Usa |
|
URI de la fuente de entrada. Se trata de una ubicación de Cloud Storage del archivo JSONL con el formato |
|
URI de la fuente de entrada. Se trata de un URI de tabla de BigQuery con el formato |
outputConfig
Parámetros | |
---|---|
|
El formato de salida de la predicción. Usa el valor |
|
Ubicación del segmento y del directorio de Cloud Storage, con el formato
|
|
URI de BigQuery de la tabla de salida de destino, en formato |
Ejemplos
Solicitar una respuesta por lotes
Las solicitudes por lotes de modelos multimodales aceptan fuentes de almacenamiento de Cloud Storage y BigQuery. Para obtener más información, consulta lo siguiente:
En función del número de elementos de entrada que hayas enviado, una tarea de generación por lotes puede tardar un tiempo en completarse.
REST
Para crear una tarea de predicción por lotes, usa el método projects.locations.batchPredictionJobs.create
.
Entrada de Cloud Storage
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- LOCATION: una región que admita modelos de Gemini.
- PROJECT_ID: tu ID de proyecto.
- MODEL_PATH: el nombre del modelo de editor, por ejemplo,
publishers/google/models/gemini-2.5-flash
; o el nombre del endpoint ajustado, por ejemplo,projects/PROJECT_ID/locations/LOCATION/models/MODEL_ID
, donde MODEL_ID es el ID del modelo ajustado. - INPUT_URI: la ubicación de Cloud Storage de la entrada de predicción por lotes JSONL, como
gs://bucketname/path/to/file.jsonl
. - OUTPUT_FORMAT: para enviar la salida a un segmento de Cloud Storage, especifica
jsonl
. - DESTINATION: en BigQuery, especifica
bigqueryDestination
. En el caso de Cloud Storage, especificagcsDestination
. - OUTPUT_URI_FIELD_NAME:
En BigQuery, especifica
outputUri
. En el caso de Cloud Storage, especificaoutputUriPrefix
. - OUTPUT_URI: en BigQuery, especifica la ubicación de la tabla, como
bq://myproject.mydataset.output_result
. La región del conjunto de datos de BigQuery de salida debe ser la misma que la del trabajo de predicción por lotes de Vertex AI. En Cloud Storage, especifica la ubicación del segmento y del directorio, comogs://mybucket/path/to/output
.
Cuerpo JSON de la solicitud:
{ "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" } } }
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
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
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$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
Deberías recibir una respuesta JSON similar a la siguiente.
Entrada de BigQuery
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- LOCATION: una región que admita modelos de Gemini.
- PROJECT_ID: tu ID de proyecto.
- MODEL_PATH: el nombre del modelo de editor, por ejemplo,
publishers/google/models/gemini-2.0-flash-001
; o el nombre del endpoint ajustado, por ejemplo,projects/PROJECT_ID/locations/LOCATION/models/MODEL_ID
, donde MODEL_ID es el ID del modelo ajustado. - INPUT_URI: la tabla de BigQuery en la que se encuentra la entrada de la predicción por lotes, como
bq://myproject.mydataset.input_table
. El conjunto de datos debe estar ubicado en la misma región que el trabajo de predicción por lotes. No se admiten los conjuntos de datos multirregionales. - OUTPUT_FORMAT: para enviar los datos a una tabla de BigQuery, especifica
bigquery
. Para enviar los datos a un segmento de Cloud Storage, especificajsonl
. - DESTINATION: en BigQuery, especifica
bigqueryDestination
. En el caso de Cloud Storage, especificagcsDestination
. - OUTPUT_URI_FIELD_NAME:
En BigQuery, especifica
outputUri
. En el caso de Cloud Storage, especificaoutputUriPrefix
. - OUTPUT_URI: en BigQuery, especifica la ubicación de la tabla, como
bq://myproject.mydataset.output_result
. La región del conjunto de datos de BigQuery de salida debe ser la misma que la del trabajo de predicción por lotes de Vertex AI. En Cloud Storage, especifica la ubicación del segmento y del directorio, comogs://mybucket/path/to/output
.
Cuerpo JSON de la solicitud:
{ "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" } } }
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
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
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$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
Deberías recibir una respuesta JSON similar a la siguiente.
Python
Instalar
pip install --upgrade google-genai
Para obtener más información, consulta la documentación de referencia del SDK.
Define variables de entorno para usar el SDK de IA generativa con Vertex AI:
# 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
Entrada de Cloud Storage
Entrada de BigQuery
Node.js
Antes de probar este ejemplo, sigue las Node.js instrucciones de configuración de la guía de inicio rápido de Vertex AI con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Node.js de Vertex AI.
Para autenticarte en Vertex AI, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Entrada de Cloud Storage
Entrada de BigQuery
Java
Antes de probar este ejemplo, sigue las Java instrucciones de configuración de la guía de inicio rápido de Vertex AI con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Java de Vertex AI.
Para autenticarte en Vertex AI, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Entrada de Cloud Storage
Entrada de BigQuery
Go
Antes de probar este ejemplo, sigue las Go instrucciones de configuración de la guía de inicio rápido de Vertex AI con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Go de Vertex AI.
Para autenticarte en Vertex AI, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Entrada de Cloud Storage
Entrada de BigQuery
Recuperar la salida de un lote
Cuando se completa una tarea de predicción por lotes, la salida se almacena en el segmento de Cloud Storage o en la tabla de BigQuery que hayas especificado en tu solicitud.
Siguientes pasos
- Consulta cómo optimizar un modelo de Gemini en el artículo Descripción general de la optimización de modelos de Gemini.
- Consulta más información sobre cómo obtener predicciones por lotes para Gemini.