Legendas de imagens

imagetext é o nome do modelo que suporta a legenda de imagens. imagetext gera uma legenda a partir de uma imagem que fornecer com base no idioma que especificar. O modelo suporta os seguintes idiomas: alemão (de), espanhol (es), francês (fr), inglês (en) e italiano (it).

Para explorar este modelo na consola, consulte o cartão do modelo Image Captioning no Model Garden.

Veja o cartão do modelo Imagen for Captioning e VQA

Exemplos de utilização

Seguem-se alguns exemplos de utilização comuns para a geração de legendas de imagens:

  • Os criadores podem gerar legendas para imagens e vídeos carregados (por exemplo, uma breve descrição de uma sequência de vídeo)
  • Gere legendas para descrever produtos
  • Integre as legendas com uma app através da API para criar novas experiências

Pedido HTTP

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

Corpo do pedido

{
  "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
  }
}

Use os seguintes parâmetros para o modelo Imagen imagetext. Para mais informações, consulte o artigo Obtenha descrições de imagens através de legendas visuais.

Parâmetro Descrição Valores aceitáveis
instances Uma matriz que contém o objeto com detalhes da imagem para obter informações sobre o mesmo. matriz (1 objeto de imagem permitido)
bytesBase64Encoded A imagem a legendar. String de imagem codificada em base64 (PNG ou JPEG, máximo de 20 MB)
gcsUri O URI do Cloud Storage da imagem a legendas. URI de string do ficheiro de imagem no Cloud Storage (PNG ou JPEG, máximo de 20 MB)
mimeType Opcional. O tipo MIME da imagem que especificar. string (image/jpeg ou image/png)
sampleCount Número de strings de texto geradas. Valor int: 1-3
seed Opcional. A semente para o gerador de números aleatórios (GNA). Se o número aleatório for o mesmo para pedidos com as entradas, os resultados da previsão serão os mesmos. número inteiro
storageUri Opcional. A localização do Cloud Storage para guardar as respostas de texto geradas. de string
language Opcional. O comando de texto para orientar a resposta. string: en (predefinição), de, fr, it, es

Exemplo de pedido

REST

Para testar um comando de texto através da API Vertex AI, envie um pedido POST para o ponto final do modelo do publicador.

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • PROJECT_ID: o seu Google Cloud ID do projeto.
  • LOCATION: a região do seu projeto. Por exemplo, us-central1, europe-west2 ou asia-northeast3. Para ver uma lista das regiões disponíveis, consulte Localizações da IA generativa no Vertex AI.
  • B64_IMAGE: a imagem para gerar legendas. A imagem tem de ser especificada como uma string de bytes codificada em base64. Limite de tamanho: 10 MB.
  • RESPONSE_COUNT: o número de legendas de imagens que quer gerar. Valores inteiros aceites: 1 a 3.
  • LANGUAGE_CODE: um dos códigos de idioma suportados. Idiomas compatíveis:
    • Inglês (en)
    • Francês (fr)
    • Alemão (de)
    • Italiano (it)
    • Espanhol (es)

Método HTTP e URL:

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

Corpo JSON do pedido:

{
  "instances": [
    {
      "image": {
          "bytesBase64Encoded": "B64_IMAGE"
      }
    }
  ],
  "parameters": {
    "sampleCount": RESPONSE_COUNT,
    "language": "LANGUAGE_CODE"
  }
}

Para enviar o seu pedido, escolha uma destas opções:

curl

Guarde o corpo do pedido num ficheiro com o nome request.json, e execute o seguinte 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

Guarde o corpo do pedido num ficheiro com o nome request.json, e execute o seguinte 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
As seguintes respostas de exemplo destinam-se a um pedido com "sampleCount": 2. A resposta devolve duas strings de previsão.

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"
}

Espanhol (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"
  ]
}

Corpo da resposta

{
  "predictions": [ string ]
}
Elemento de resposta Descrição
predictions Lista de strings de texto que representam legendas, ordenadas por confiança.

Exemplo de resposta

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