Genera imágenes con Imagen 3

La API de Gemini brinda acceso a Imagen 3, de Google de generación de imágenes de vanguardia. Con Imagen, puedes generar modelos imágenes a partir de instrucciones de texto. La integración de la API de Gemini con Imagen está diseñada para ayudarte a compilar aplicaciones de IA de nueva generación que transformen las instrucciones de los usuarios en recursos visuales de alta calidad en cuestión de segundos.

Esta guía te ayudará a comenzar a usar Imagen con la API de Gemini en Python de Google Cloud.

Información acerca de Imagen 3

Imagen 3 es el modelo de texto a imagen de mayor calidad de Google, que incluye varias funciones nuevas y mejoradas. Imagen 3 puede hacer lo siguiente:

  • Genera imágenes con mejor detalle, una iluminación más nítida y menos distracciones artefactos que en los modelos anteriores.
  • Comprende las instrucciones escritas en lenguaje natural y cotidiano, lo que facilita la generación de resultados alineados sin una ingeniería de instrucciones compleja.
  • Genera imágenes en una amplia variedad de formatos y estilos, desde paisajes fotorrealistas hasta pinturas al óleo con texturas espléndidas o escenas de animación con plastilina fantásticas.
  • Renderice texto de forma más eficaz que en modelos anteriores, lo que permite crear nuevos posibilidades para casos de uso como tarjetas de cumpleaños estilizadas, presentaciones y más.

La imagen 3 se creó con las innovaciones de seguridad y responsabilidad más recientes de Google, desde el desarrollo de datos y modelos hasta la producción. El equipo de Google DeepMind usó un filtrado y un etiquetado de datos extensos para minimizar el contenido dañino en los conjuntos de datos y reducir la probabilidad de resultados dañinos. El equipo también llevó a cabo la formación de equipos y evaluaciones sobre temas como equidad, sesgos y seguridad del contenido.

Para obtener más información y ver ejemplos de resultados, consulta la descripción general de Imagen 3 de Google DeepMind.

Antes de comenzar: Configura tu proyecto y clave de API

pip install -U git+https://github.com/google-gemini/generative-ai-python@imagen

Antes de llamar a la API de Gemini, debes configurar tu proyecto y tu clave de API.

Generar imágenes

En esta sección, se muestra cómo crear una instancia de un modelo de Imagen y generar imágenes.

Para ejecutar el código de ejemplo, primero debes instalar Almohada:

pip install --upgrade Pillow

Luego, con Pillow y el SDK de Python instalados, puedes usar el siguiente código para generar imágenes:

import os
import google.generativeai as genai

genai.configure(api_key=os.environ['API_KEY'])

imagen = genai.ImageGenerationModel("imagen-3.0-generate-001")

result = imagen.generate_images(
    prompt="Fuzzy bunnies in my kitchen",
    number_of_images=4,
    safety_filter_level="block_only_high",
    person_generation="allow_adult",
    aspect_ratio="3:4",
    negative_prompt="Outside",
)

for image in result.images:
  print(image)

# The output should look similar to this:
# <vertexai.preview.vision_models.GeneratedImage object at 0x78f3396ef370>
# <vertexai.preview.vision_models.GeneratedImage object at 0x78f3396ef700>
# <vertexai.preview.vision_models.GeneratedImage object at 0x78f33953c2b0>
# <vertexai.preview.vision_models.GeneratedImage object at 0x78f33953c280>

for image in result.images:
  # Open and display the image using your local operating system.
  image._pil_image.show()

El notebook debería mostrar cuatro imágenes similares a esta:

Imagen generada por IA de dos conejos peludos en la cocina

Parámetros del modelo de Imagen

Los siguientes parámetros están disponibles para generate_images():

  • prompt: Es la instrucción de texto para la imagen.
  • negative_prompt: Es una descripción de lo que deseas omitir en el archivo generado. imágenes de contenedores. La configuración predeterminada es "none".

    Por ejemplo, considera el mensaje "una calle lluviosa de noche sin personas". El modelo puede interpretar a “personas” como una directiva de lo que se incluye, en lugar de omitirlo. Para generar mejores resultados, puedes usar el mensaje "una calle de la ciudad bajo la lluvia por la noche" con un mensaje negativo "personas".

  • number_of_images: Es la cantidad de imágenes que se generarán, de 1 a 4 (inclusive). El valor predeterminado es 4.

  • aspect_ratio: Cambia la relación de aspecto de la imagen generada. Compatible los valores son "1:1", "3:4", "4:3", "9:16" y "16:9". El valor predeterminado es "1:1"

  • safety_filter_level: Agrega un nivel de filtro al filtro de seguridad. Lo siguiente son válidos:

    • "block_low_and_above": Bloquea cuando la puntuación de probabilidad o la puntuación de gravedad es LOW, MEDIUM o HIGH.
    • "block_medium_and_above": Bloquea cuando la puntuación de probabilidad o la puntuación de gravedad sea MEDIUM o HIGH.
    • "block_only_high": Bloquea cuando la puntuación de probabilidad o la puntuación de gravedad es HIGH.
  • person_generation: Permite que el modelo genere imágenes de personas. El se admiten los siguientes valores:

    • "dont_allow": Bloquea la generación de imágenes de personas.
    • "allow_adult": Genera imágenes de adultos, pero no de niños.

¿Qué sigue?

La imagen 3 de la API de Gemini está en acceso anticipado. No te pierdas los anuncios sobre el estado de la función.