Instruct Customization

É possível usar o Imagen na Vertex AI para instruir o modelo a personalizar e transformar os assuntos em uma imagem para um estilo especificado em um comando de texto.

Ver o card do modelo do Imagen para edição e personalização

Como escrever comandos de personalização

O comando usado com a personalização do Imagen 3 pode afetar a qualidade das imagens geradas. Use os modelos de comando a seguir como ponto de partida para escrever comandos de personalização. Talvez seja necessário enviar várias solicitações para receber o resultado desejado.

Caso de uso Imagens de referência Modelo de comando Exemplo
Personalização de instruções: transferência de estilo Imagem (1) Transforme o subject in image [1] para ter um estilo de ${STYLE_DESCRIPTION}. A imagem mostra ${IMAGE_DESCRIPTION}. Transforme o subject in image [1] para ter um estilo de uma pintura em aquarela da imagem com técnicas soltas de aquarela, tom suave, cores pastel, pinceladas, delicado, plano de fundo limpo, espontaneidade, desenho de estilo analógico, pintura intrincada e altamente detalhada. A imagem mostra o retrato de uma mulher orgulhosa.

Personalizar usando a personalização de instruções para transferência de estilo

Use os exemplos de código a seguir para especificar o estilo das imagens de saída com base no estilo descrito no comando de texto.

REST

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_ID: o ID do projeto do Google Cloud .
  • LOCATION: a região do seu projeto. Por exemplo, us-central1, europe-west2 ou asia-northeast3. Para uma lista de regiões disponíveis, consulte IA generativa em locais da Vertex AI.
  • TEXT_PROMPT: o prompt de texto fornece orientações sobre quais imagens o modelo gera. Para usar a personalização do Imagen 3, inclua o referenceId da imagem ou imagens de referência que você fornecer no formato [$referenceId]. Por exemplo:
    • Transforme o assunto na imagem [1] para ter um estilo de imagem de vitral digital.
    • Adicione um chapéu de cowboy vermelho ao gato na imagem [1].
    • Remova o cachorro corgi na imagem [1].
    • Mude a bola vermelha na imagem [1] para uma caixa azul.
  • "referenceId": o ID da imagem de referência ou de uma série de imagens de referência que correspondem ao mesmo assunto ou estilo.
  • BASE64_REFERENCE_IMAGE: uma imagem de referência para orientar a geração de imagens. A imagem precisa ser especificada como uma string de bytes codificada em base64.
  • IMAGE_COUNT: o número de imagens geradas. Valores inteiros aceitos: 1 a 4. Valor padrão: 4.

Método HTTP e URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagen-3.0-capability-001:predict

Corpo JSON da solicitação:

{
  "instances": [
    {
      "prompt": "TEXT_PROMPT",
      "referenceImages": [
        {
          "referenceType": "REFERENCE_TYPE_RAW",
          "referenceId": 1,
          "referenceImage": {
            "bytesBase64Encoded": "BASE64_REFERENCE_IMAGE"
          }
        }
      ]
    }
  ],
  "parameters": {
    "sampleCount": IMAGE_COUNT
  }
}

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

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/imagen-3.0-capability-001:predict"

PowerShell

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

$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/imagen-3.0-capability-001:predict" | Select-Object -Expand Content
O exemplo de resposta a seguir é para uma solicitação com "sampleCount": 2. A resposta retorna dois objetos de previsão, com os bytes de imagem gerados codificados em base64.
{
  "predictions": [
    {
      "bytesBase64Encoded": "BASE64_IMG_BYTES",
      "mimeType": "image/png"
    },
    {
      "mimeType": "image/png",
      "bytesBase64Encoded": "BASE64_IMG_BYTES"
    }
  ]
}

Uso do produto

Para ver os padrões de uso e as restrições de conteúdo associados ao Imagen na Vertex AI, consulte as diretrizes de uso.

Versões do modelo

Há vários modelos de geração de imagens que podem ser usados. Para mais informações, consulte Modelos do Imagen.

A seguir

Confira artigos sobre o Imagen e outras IAs generativas nos produtos da Vertex AI: