stable-diffusion-xl-base-0.9

stabilityai
Texto a imagen

SDXL consiste en un pipeline de dos pasos para la difusión latente: primero se utiliza un modelo base para generar latentes del tamaño deseado. En el segundo paso, se utiliza un modelo especializado de alta resolución y se aplica una técnica llamada SDEdit (también conocida como 'img2img') a los latentes generados en el primer paso, utilizando el mismo prompt. Desarrollado por: Stability AI Tipo de modelo: Modelo generativo basado en difusión de texto a imagen Licencia: Licencia de Investigación SDXL 0.9 Descripción del modelo: Este es un modelo que se puede usar para generar y modificar imágenes basadas en prompts de texto. Es un modelo de Difusión Latente que utiliza dos codificadores de texto preentrenados (OpenCLIP-ViT/G y CLIP-ViT/L). Recursos para más información: Repositorio en GitHub, artículo de SDXL en arXiv.

Como usar

Asegúrese de actualizar los difusores a >= 0.18.0:

pip install diffusers --upgrade

Además, asegúrese de instalar transformers, safetensors, y accelerate, así como el watermark invisible:

pip install invisible_watermark transformers accelerate safetensors

Puedes usar el modelo de la siguiente manera:

from diffusers import DiffusionPipeline
import torch

pipe = DiffusionPipeline.from_pretrained("stabilityai/stable-diffusion-xl-base-0.9", torch_dtype=torch.float16, use_safetensors=True, variant="fp16")
pipe.to("cuda")

# si usas torch < 2.0
# pipe.enable_xformers_memory_efficient_attention()

prompt = "Un astronauta montando un caballo verde"

images = pipe(prompt=prompt).images[0]

Si usas torch >= 2.0, puedes mejorar la velocidad de inferencia en un 20-30% con torch.compile. Simplemente envuelve el unet con torch compile antes de ejecutar el pipeline:

pipe.unet = torch.compile(pipe.unet, mode="reduce-overhead", fullgraph=True)

Si estás limitado por la VRAM de la GPU, puedes habilitar la descarga en CPU llamando a enable_model_cpu_offload en lugar de .to("cuda"):

- pipe.to("cuda")
+ pipe.enable_model_cpu_offload()

Funcionalidades

Generación de latentes de tamaño deseado.
Uso de un modelo de alta resolución en el segundo paso.
Aplicación de la técnica SDEdit (img2img).
Utiliza codificadores de texto preentrenados OpenCLIP-ViT/G y CLIP-ViT/L.

Casos de uso

Generación de obras de arte y uso en procesos de diseño y otros procesos artísticos.
Aplicaciones en herramientas educativas o creativas.
Investigación sobre modelos generativos.
Despliegue seguro de modelos que tienen el potencial de generar contenido dañino.
Sondeo y comprensión de las limitaciones y sesgos de los modelos generativos.