Subtítulos de imágenes

imagetext es el nombre del modelo que admite la leyenda de las imágenes. imagetext genera una leyenda a partir de una imagen que proporcionas según el idioma que especifiques. El modelo admite los siguientes idiomas: inglés (en), alemán (de), francés (fr), español (es) y, además, italiano (it).

Para explorar este modelo en la consola, consulta la tarjeta de modelo Image Captioning en Model Garden.

Ir a Model Garden

Casos de uso

Estos son algunos casos de uso comunes de las leyendas de imágenes:

  • Los creadores pueden generar leyendas para las imágenes y los videos subidos (por ejemplo, una descripción breve de una secuencia de video).
  • Genera leyendas para describir productos
  • Integra leyendas en una app con la API para crear experiencias nuevas

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": [
    {
      "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,
    "storageUri": string,
    "language": string,
    "seed": integer
  }
}

Usa los siguientes parámetros para el modelo de imagen imagetext. Para obtener más información, consulta Obtén descripciones de imágenes con subtítulos visuales.

Parámetro Descripción Valores aceptables
instances Un arreglo que contiene el objeto con detalles de la imagen para obtener información. arreglo (se permite 1 objeto de imagen)
bytesBase64Encoded La imagen que se debe subtitular. String de imagen codificada en base64 (PNG o JPEG, 20 MB como máximo)
gcsUri El URI de Cloud Storage de la imagen a los que se realizará la leyenda. URI de string 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
storageUri Opcional. La ubicación de Cloud Storage para guardar las respuestas de texto generadas. string
language Opcional. La instrucción de texto para guiar la respuesta. cadena: en (predeterminado), de, fr, it, es

Solicitud de muestra

REST

Para probar un mensaje 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: 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.
  • 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: La cantidad de subtítulos de imágenes que deseas generar. Valores de números enteros aceptados: de 1 a 3.
  • LANGUAGE_CODE: Uno de los códigos de idioma compatibles. Idiomas admitidos:
    • Inglés (en)
    • Francés (fr)
    • Alemán (de)
    • Italiano (it)
    • Español (es)

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": [
    {
      "image": {
          "bytesBase64Encoded": "B64_IMAGE"
      }
    }
  ],
  "parameters": {
    "sampleCount": RESPONSE_COUNT,
    "language": "LANGUAGE_CODE"
  }
}

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. La respuesta muestra dos cadenas de predicción.

Inglés (en):

{
  "predictions": [
    "a yellow mug with a sheep on it sits next to a slice of cake",
    "a cup of coffee with a heart shaped latte art next to a slice of cake"
  ],
  "deployedModelId": "DEPLOYED_MODEL_ID",
  "model": "projects/PROJECT_ID/locations/LOCATION/models/MODEL_ID",
  "modelDisplayName": "MODEL_DISPLAYNAME",
  "modelVersionId": "1"
}

Español (es):

{
  "predictions": [
    "una taza de café junto a un plato de pastel de chocolate",
    "una taza de café con una forma de corazón en la espuma"
  ]
}

Cuerpo de la respuesta

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

Respuesta de muestra

{
  "predictions": [
    "text1",
    "text2"
  ]
}