Las predicciones por lotes te permiten enviar una gran cantidad de instrucciones multimodales en una sola solicitud por lotes.
Para obtener más información acerca del flujo de trabajo por lotes y cómo dar formato a tus datos de entrada, consulta Obtén predicciones por lotes para Gemini.
Modelos compatibles:
Modelo | Versión |
---|---|
Gemini 1.5 Flash | gemini-1.5-flash-001 |
Gemini 1.5 Pro | gemini-1.5-pro-001 |
Gemini 1.0 Pro | gemini-1.0-pro-001 gemini-1.0-pro-002 |
Ejemplo de sintaxis
Sintaxis para enviar una solicitud a la API de predicción por lotes.
curl
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 ejemplos para obtener detalles sobre la implementación.
Solicitud del cuerpo
Parámetros | |
---|---|
|
Un nombre que elijas para tu trabajo. |
|
El modelo que se usará para la predicción por lotes. |
|
El formato de los datos. Para la predicción por lotes de Gemini, se admite la entrada de BigQuery. |
|
La configuración de salida que determina la ubicación de resultado del modelo. |
inputConfig
Parámetros | |
---|---|
|
El formato de entrada de la instrucción. Usa |
|
Es el URI de la fuente de entrada. Este es un URI de tabla de BigQuery con
el formato |
outputConfig
Parámetros | |
---|---|
|
El formato de salida de la predicción. Debe coincidir con el formato de entrada.
Usa |
|
El URI de BigQuery de la tabla de salida de destino, con el
formato |
Ejemplos
Solicitar una respuesta por lotes
Las solicitudes por lotes para modelos multimodales solo aceptan fuentes de almacenamiento de BigQuery. Para obtener más información, consulta lo siguiente:
- Descripción general del almacenamiento de BigQuery
- Detalles del formato de entrada de la solicitud por lotes
Según la cantidad de elementos de entrada que hayas enviado, una tarea de predicción por lotes puede tardar un tiempo en completarse.
REST
Para probar una instrucción de texto con la API de Vertex AI, envía una solicitud POST al extremo del modelo de publicador.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- PROJECT_ID: Es el nombre de tu proyecto de Google Cloud.
- BP_JOB_NAME: el nombre que elijas para tu trabajo.
- INPUT_URI: Es el URI de la fuente de entrada. Este es un URI de tabla de BigQuery con el formulario
bq://PROJECT_ID.DATASET.TABLE
. - OUTPUT_URI: el URI de BigQuery de la tabla de salida de destino, con el
formato
bq://PROJECT_ID.DATASET.TABLE
. Si la tabla aún no existe, se creará para ti.
Método HTTP y URL:
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/batchPredictionJobs
Cuerpo JSON de la solicitud:
{ "displayName": "BP_JOB_NAME", "model": "publishers/google/models/gemini-1.0-pro-002", "inputConfig": { "instancesFormat":"bigquery", "bigquerySource":{ "inputUri" : "INPUT_URI" } }, "outputConfig": { "predictionsFormat":"bigquery", "bigqueryDestination":{ "outputUri": "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://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/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://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/batchPredictionJobs" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "name": "projects/{PROJECT_ID}/locations/us-central1/batchPredictionJobs/{BATCH_JOB_ID}", "displayName": "My first batch prediction", "model": "projects/{PROJECT_ID}/locations/us-central1/models/gemini-1.0-pro-002", "inputConfig": { "instancesFormat": "bigquery", "bigquerySource": { "inputUri": "bq://{PROJECT_ID}.mydataset.batch_predictions_input" } }, "modelParameters": {}, "outputConfig": { "predictionsFormat": "bigquery", "bigqueryDestination": { "outputUri": "bq://{PROJECT_ID}.mydataset.batch_predictions_output" } }, "state": "JOB_STATE_PENDING", "createTime": "2023-07-12T20:46:52.148717Z", "updateTime": "2023-07-12T20:46:52.148717Z", "modelVersionId": "1" }
En la respuesta, se incluye un identificador único para el trabajo por lotes.
Puedes consultar el estado del trabajo por lotes mediante BATCH_JOB_ID hasta que el state
sea JOB_STATE_SUCCEEDED
. Por ejemplo:
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
Recuperar los resultados por lotes
Cuando se completa una tarea de predicción por lotes, el resultado se almacena en la tabla de BigQuery que especificaste en la solicitud.
¿Qué sigue?
- Aprende a ajustar un modelo de Gemini en Descripción general del ajuste de modelos para Gemini.
- Obtén más información acerca de cómo obtener predicciones por lotes para Gemini.