Cómo configurar la relación de aspecto

Prueba la generación de imágenes (Vertex AI Studio)

Prueba Imagen en Colab

En esta página, se describe cómo configurar la relación de aspecto para la que Imagen en Vertex AI genera imágenes.

Según cómo planees usar las imágenes generadas, algunas relaciones de aspecto pueden funcionar mejor que otras. Elige la relación de aspecto que mejor se adapte a tu caso de uso.

Puedes usar varios modelos de generación de imágenes, y ciertas relaciones de aspecto están disponibles para modelos específicos de Imagen. Para obtener más información, consulta Modelos de Imagen.

Relación de aspecto Uso previsto Imagen de muestra
1:1 predeterminado, cuadrado, uso general
Imagen generada de muestra en la consola
Mensaje: toma general de una cena de pasta, foto de estudio al estilo de portada de una revista de comida.
3:4 TV, medios de comunicación, cine
Imagen generada de muestra en la consola
Mensaje: sesión de fotos comerciales, anuncio de fragancia, frasco perfumado de lavanda y vainilla sobre un fondo de color claro.
4:3 TV, medios de comunicación, cine
Imagen generada de muestra en la consola
Mensaje: sesión de fotos comerciales, calzado tipo sneakers altas de color verde y gris, 4k, ángulos dramáticos.
9:16 vertical, objetos altos, dispositivos móviles
Imagen generada de muestra en la consola
Mensaje: fotografía de naturaleza, una playa en Hawái con el océano en el fondo, destello de lente, atardecer.
16:9 paisaje
Imagen generada de muestra en la consola
Mensaje: rascacielos en la ciudad de Nueva York, renderización futurista, concepto, arte digital.

Console

  1. En la Google Cloud consola, ve a la página Vertex AI > Media Studio.

    Ir a Media Studio

  2. Haz clic en Imagen. Se mostrará la página de generación de imágenes de Imagen Media Studio.

  3. En el panel Configuración, ajusta las siguientes opciones:

    • Modelo: Elige un modelo entre las opciones disponibles.

      Para obtener más información sobre los modelos disponibles, consulta Modelos de imagen.

    • Relación de aspecto: Es la relación de aspecto que se usará cuando se generen imágenes.

  4. En el cuadro Escribe tu instrucción, ingresa la instrucción de texto que describe las imágenes que se generarán. Por ejemplo, barco pequeño en el agua en la ilustración de acuarela matutina.

  5. Haz clic en Generar .

REST

La relación de aspecto es un campo opcional en el objeto parameters de un cuerpo de solicitud JSON.

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

  • PROJECT_ID: El Google Cloud ID del proyecto.
  • MODEL_VERSION: Es la versión del modelo Imagen que se usará. Para obtener más información sobre los modelos disponibles, consulta Modelos de Imagen.

  • 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.
  • TEXT_PROMPT: Es la instrucción de texto que guía qué imágenes genera el modelo. Este campo es obligatorio para la generación y la edición.
  • IMAGE_COUNT: La cantidad de imágenes generadas. Valores de números enteros aceptados: 1-8 (imagegeneration@002), 1-4 (todas las demás versiones del modelo). Valor predeterminado: 4.
  • Parámetros opcionales adicionales

    Usa las siguientes variables opcionales según tu caso de uso. Agrega algunos o todos los siguientes parámetros en el objeto "parameters": {}. Esta lista muestra parámetros opcionales comunes y no pretende ser exhaustiva. Para obtener más información sobre los parámetros opcionales, consulta la referencia de la API de Imagen: Genera imágenes.

    "parameters": {
      "sampleCount": IMAGE_COUNT,
      "addWatermark": ADD_WATERMARK,
      "aspectRatio": "ASPECT_RATIO",
      "enhancePrompt": ENABLE_PROMPT_REWRITING,
      "includeRaiReason": INCLUDE_RAI_REASON,
      "includeSafetyAttributes": INCLUDE_SAFETY_ATTRIBUTES,
      "outputOptions": {
        "mimeType": "MIME_TYPE",
        "compressionQuality": COMPRESSION_QUALITY
      },
      "personGeneration": "PERSON_SETTING",
      "safetySetting": "SAFETY_SETTING",
      "seed": SEED_NUMBER,
      "storageUri": "OUTPUT_STORAGE_URI"
    }
    
    • ADD_WATERMARK: booleano. Opcional. Indica si se debe habilitar una marca de agua para las imágenes generadas. Cualquier imagen generada cuando el campo se configura como true contiene un SynthID digital que puedes usar para verificar una imagen con marca de agua. Si omites este campo, se usa el valor predeterminado de true. Debes establecer el valor en false para inhabilitar esta función. Puedes usar el campo seed para obtener una salida determinista solo cuando este campo se establece en false.
    • ASPECT_RATIO: cadena. Opcional. Es un parámetro del modo de generación que controla la relación de aspecto. Valores de proporción admitidos y su uso previsto:
      • 1:1 (predeterminado, cuadrado)
      • 3:4 (anuncios y redes sociales)
      • 4:3 (TV, fotografía)
      • 16:9 (horizontal)
      • 9:16 (vertical)
    • ENABLE_PROMPT_REWRITING: booleano. Opcional. Es un parámetro para usar una función de reformulación de instrucciones basada en LLM para generar imágenes de mayor calidad que reflejen mejor la intención de la instrucción original. Inhabilitar esta función puede afectar la calidad de la imagen y el cumplimiento de las instrucciones. Valor predeterminado true.
    • INCLUDE_RAI_REASON: booleano. Opcional. Indica si se debe habilitar el código de motivo filtrado de IA responsable en respuestas con entrada o salida bloqueadas. Valor predeterminado: true.
    • INCLUDE_SAFETY_ATTRIBUTES: booleano. Opcional. Indica si se deben habilitar las puntuaciones redondeadas de IA responsable para obtener una lista de atributos de seguridad en las respuestas de entrada y salida sin filtrar. Categorías de atributos de seguridad: "Death, Harm & Tragedy", "Firearms & Weapons", "Hate", "Health", "Illicit Drugs", "Politics", "Porn", "Religion & Belief", "Toxic", "Violence", "Vulgarity", "War & Conflict". Valor predeterminado: false.
    • MIME_TYPE: cadena. Opcional. El tipo de MIME del contenido de la imagen. Valores disponibles:
      • image/jpeg
      • image/gif
      • image/png
      • image/webp
      • image/bmp
      • image/tiff
      • image/vnd.microsoft.icon
    • COMPRESSION_QUALITY: número entero. Opcional. Solo se aplica a los archivos de salida JPEG. Es el nivel de detalle que conserva el modelo para las imágenes generadas en formato de archivo JPEG. Valores: 0 a 100, donde un número más alto significa más compresión. Valor predeterminado: 75.
    • PERSON_SETTING: cadena. Opcional. Es el parámetro de configuración de seguridad que controla el tipo de generación de personas o rostros que permite el modelo. Valores disponibles:
      • allow_adult (configuración predeterminada): permite la generación de adultos solamente, excepto la generación de celebridades. No se permite la generación de celebridades para ningún parámetro de configuración.
      • dont_allow: Inhabilita la inclusión de personas o rostros en las imágenes generadas.
    • SAFETY_SETTING: cadena. Opcional. Es un parámetro de configuración que controla los umbrales del filtro de seguridad para las imágenes generadas. Valores disponibles:
      • block_low_and_above: El umbral de seguridad más alto, que da como resultado la mayor cantidad de imágenes generadas que se filtran. Valor anterior: block_most.
      • block_medium_and_above (configuración predeterminada): Un umbral de seguridad medio que equilibra el filtrado del contenido potencialmente dañino y seguro. Valor anterior: block_some.
      • block_only_high: Es un umbral de seguridad que reduce la cantidad de solicitudes bloqueadas debido a los filtros de seguridad. Esta configuración puede aumentar el contenido censurable que genera Imagen. Valor anterior: block_few.
    • SEED_NUMBER: número entero. Opcional. Cualquier número entero no negativo que proporciones para que las imágenes de salida sean determinísticas. Proporcionar el mismo número de origen siempre da como resultado las mismas imágenes de salida. Si el modelo que usas admite marcas de agua digitales, debes establecer "addWatermark": false para usar este campo. Valores de números enteros aceptados: 1 a 2147483647.
    • OUTPUT_STORAGE_URI: cadena. Opcional. Es el bucket de Cloud Storage para almacenar las imágenes de salida. Si no se proporciona, se devuelven los bytes de imagen codificados en base64 en la respuesta. Valor de ejemplo: gs://image-bucket/output/.

Método HTTP y URL:

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

Cuerpo JSON de la solicitud:

{
  "instances": [
    {
      "prompt": "TEXT_PROMPT"
    }
  ],
  "parameters": {
    "sampleCount": IMAGE_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/MODEL_VERSION: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/MODEL_VERSION:predict" | Select-Object -Expand Content
La siguiente respuesta de muestra es para una solicitud con "sampleCount": 2. La respuesta muestra dos objetos de predicción, con los bytes de imagen generados codificados en base64.
{
  "predictions": [
    {
      "bytesBase64Encoded": "BASE64_IMG_BYTES",
      "mimeType": "image/png"
    },
    {
      "mimeType": "image/png",
      "bytesBase64Encoded": "BASE64_IMG_BYTES"
    }
  ]
}

Si usas un modelo que admite la mejora de instrucciones, la respuesta incluye un campo prompt adicional con la instrucción mejorada que se usó para la generación:

{
  "predictions": [
    {
      "mimeType": "MIME_TYPE",
      "prompt": "ENHANCED_PROMPT_1",
      "bytesBase64Encoded": "BASE64_IMG_BYTES_1"
    },
    {
      "mimeType": "MIME_TYPE",
      "prompt": "ENHANCED_PROMPT_2",
      "bytesBase64Encoded": "BASE64_IMG_BYTES_2"
    }
  ]
}

¿Qué sigue?