Búsqueda de respuestas visuales (VQA)

Imagen para subtítulos y VQA (imagetext) es el nombre del modelo que admite preguntas y respuestas de imagen. Imagen para subtítulos y VQA responde una pregunta planteada para una imagen determinada, incluso si el modelo no la vio antes.

Para explorar este modelo en la consola, consulta la tarjeta de modelo de Imagen para subtítulos y VQA en Model Garden.

Ir a Model Garden

Casos de uso

A continuación, se mencionan algunos casos de uso comunes de búsqueda de respuestas de imágenes:

  • Permite a los usuarios interactuar con el contenido visual a través de preguntas y respuestas.
  • Permite que los clientes interactúen con las imágenes de productos que se muestran en las apps y los sitios web de venta minorista.
  • Proporciona opciones de accesibilidad para usuarios con discapacidad visual.

Solicitud HTTP

POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/imagetext:predict

Cuerpo de la solicitud

{
  "instances": [
    {
      "prompt": string,
      "image": {
        // Union field can be only one of the following:
        "bytesBase64Encoded": string,
        "gcsUri": string,
        // End of list of possible types for union field.
        "mimeType": string
      }
    }
  ],
  "parameters": {
    "sampleCount": integer,
    "seed": integer
  }
}

Usa los siguientes parámetros para el modelo de generación de preguntas y respuestas visuales imagetext. Para obtener más información, consulta Usa la búsqueda de respuestas visuales (VQA).

Parámetro Descripción Valores aceptables
instances Un array que contiene el objeto con detalles de la imagen y de la instrucción para obtener información. array (se permite 1 objeto de imagen)
prompt La pregunta que deseas que se responda sobre tu imagen. cadena (80 tokens como máximo)
bytesBase64Encoded La imagen sobre la que se debe obtener información. Cadena de imagen codificada en base64 (PNG o JPEG, 20 MB como máximo)
gcsUri El URI de Cloud Storage de la imagen sobre la que se debe obtener información. URI de cadena del archivo de imagen en Cloud Storage (PNG o JPEG, 20 MB como máximo)
mimeType Opcional. El tipo de MIME de la imagen que especificas. cadena (image/jpeg o image/png)
sampleCount Cantidad de cadenas de texto generadas. Valor de nro. entero: de 1 a 3
seed Opcional. El valor inicial para el generador de números aleatorios (RNG). Si el valor inicial de RNG es el mismo para las solicitudes con las entradas, los resultados de la predicción serán los mismos. número entero

Solicitud de muestra

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: El ID del proyecto de Google Cloud.
  • LOCATION: La región del proyecto. Por ejemplo, us-central1, europe-west2 o asia-northeast3. Para obtener una lista de las regiones disponibles, consulta IA generativa en ubicaciones de Vertex AI.
  • VQA_PROMPT: es la pregunta que deseas que se responda sobre tu imagen.
    • ¿De qué color es este zapato?
    • ¿Qué tipo de mangas tiene la camisa?
  • B64_IMAGE: es la imagen para la que se deben obtener subtítulos. La imagen debe especificarse como una cadena de bytes codificada en base64. Límite de tamaño: 10 MB.
  • RESPONSE_COUNT: es la cantidad de respuestas que deseas generar. Valores de números enteros aceptados: de 1 a 3.

Método HTTP y URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagetext:predict

Cuerpo JSON de la solicitud:

{
  "instances": [
    {
      "prompt": "VQA_PROMPT",
      "image": {
          "bytesBase64Encoded": "B64_IMAGE"
      }
    }
  ],
  "parameters": {
    "sampleCount": RESPONSE_COUNT
  }
}

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/publishers/google/models/imagetext:predict"

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/publishers/google/models/imagetext:predict" | Select-Object -Expand Content
Las siguientes respuestas de muestra son para una solicitud con "sampleCount": 2 y "prompt": "What is this?". La respuesta muestra dos respuestas de la cadena de predicción.
{
  "predictions": [
    "cappuccino",
    "coffee"
  ]
}

Cuerpo de la respuesta


{
  "predictions": [
    string
  ]
}
Elemento de la respuesta Descripción
predictions Lista de cadenas de texto que representan respuestas de VQA, ordenadas por confianza.

Respuesta de muestra

Las siguientes respuestas de muestra son para una solicitud con "sampleCount": 2 y "prompt": "What is this?". La respuesta muestra dos respuestas de la cadena de predicción.

{
  "predictions": [
    "cappuccino",
    "coffee"
  ],
  "deployedModelId": "DEPLOYED_MODEL_ID",
  "model": "projects/PROJECT_ID/locations/us-central1/models/MODEL_ID",
  "modelDisplayName": "MODEL_DISPLAYNAME",
  "modelVersionId": "1"
}