Stable Diffusion v2-base
Este modelo se puede utilizar para generar y modificar imágenes basadas en indicaciones de texto. Es un Modelo de Difusión Latente que utiliza un codificador de texto preentrenado fijo (OpenCLIP-ViT/H). El modelo se entrena desde cero con 550k pasos a una resolución de 256x256 en un subconjunto de LAION-5B filtrado para material pornográfico explícito, utilizando el clasificador NSFW de LAION con punsafe=0.1 y una puntuación estética=4.5. Luego se entrena adicionalmente con 850k pasos a una resolución de 512x512 en el mismo conjunto de datos con imágenes de resolución=512x512.
Como usar
Usando la biblioteca Diffusers de 🤗 para ejecutar Stable Diffusion 2 de una manera simple y eficiente.
pip install diffusers transformers accelerate scipy safetensors
Ejecutando el pipeline (si no cambia el programador, se ejecutará con el programador PNDM/PLMS por defecto, en este ejemplo lo cambiamos a EulerDiscreteScheduler):
from diffusers import StableDiffusionPipeline, EulerDiscreteScheduler
import torch
model_id = "stabilityai/stable-diffusion-2-base"
# Use the Euler scheduler here instead
scheduler = EulerDiscreteScheduler.from_pretrained(model_id, subfolder="scheduler")
pipe = StableDiffusionPipeline.from_pretrained(model_id, scheduler=scheduler, torch_dtype=torch.float16)
pipe = pipe.to("cuda")
prompt = "a photo of an astronaut riding a horse on mars"
image = pipe(prompt).images[0]
image.save("astronaut_rides_horse.png")
# Notas:
# A pesar de que no es una dependencia, recomendamos instalar xformers para una atención eficiente en memoria (mejor rendimiento).
# Si tienes poca memoria GPU disponible, asegúrate de añadir `pipe.enable_attention_slicing()` después de enviarlo a cuda para un menor uso de VRAM (a costa de velocidad).
Funcionalidades
- Modelo basado en difusión
- Generación de imágenes a partir de texto
- Codificación de texto mediante OpenCLIP-ViT/H
- Compatible con la biblioteca Diffusers
- Código abierto bajo licencia CreativeML Open RAIL++-M
Casos de uso
- Investigación sobre modelos generativos.
- Despliegue seguro de modelos con potencial para generar contenido dañino.
- Generación de arte y uso en procesos de diseño y otros procesos artísticos.
- Aplicaciones en herramientas educativas o creativas.
- Comprender y sondear las limitaciones y sesgos de los modelos generativos.