Stable Diffusion v1-2

CompVis
Texto a imagen

Stable Diffusion es un modelo de difusión de texto a imagen capaz de generar imágenes fotorrealistas a partir de cualquier entrada de texto. El punto de control Stable-Diffusion-v1-2 se inicializó con los pesos del punto de control Stable-Diffusion-v1-1 y posteriormente se mejoró con 515,000 pasos a una resolución de 512x512 en 'laion-improved-aesthetics' (un subconjunto de laion2B-en, filtrado a imágenes con un tamaño original de 512x512, una puntuación estética estimada de 5.0 y una probabilidad de marca de agua estimada <0.5).

Como usar

Recomendamos usar la biblioteca Diffusers de 🤗 para ejecutar Stable Diffusion.

pip install --upgrade diffusers transformers scipy

Running the pipeline with the default PNDM scheduler:
```python
import torch
from torch import autocast
from diffusers import StableDiffusionPipeline

model_id = "CompVis/stable-diffusion-v1-2"
device = "cuda"

pipe = StableDiffusionPipeline.from_pretrained(model_id)
pipe = pipe.to(device)

prompt = "a photo of an astronaut riding a horse on mars"
with autocast("cuda"):
    image = pipe(prompt)["sample"][0]  
    
image.save("astronaut_rides_horse.png")
Note:
Si estás limitado por la memoria de la GPU y tienes menos de 10GB de RAM disponible, asegúrate de cargar el StableDiffusionPipeline en precisión float16 en lugar de la precisión float32 predeterminada.
```python
import torch

pipe = StableDiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.float16)
pipe = pipe.to(device)

prompt = "a photo of an astronaut riding a horse on mars"
with autocast("cuda"):
    image = pipe(prompt, guidance_scale=7.5)["sample"][0]  
    
image.save("astronaut_rides_horse.png")

To swap out the noise scheduler, pass it to from_pretrained:

from diffusers import StableDiffusionPipeline, LMSDiscreteScheduler

model_id = "CompVis/stable-diffusion-v1-2"
# Use the K-LMS scheduler here instead
scheduler = LMSDiscreteScheduler(beta_start=0.00085, beta_end=0.012, beta_schedule="scaled_linear", num_train_timesteps=1000)
pipe = StableDiffusionPipeline.from_pretrained(model_id, scheduler=scheduler, use_auth_token=True)
pipe = pipe.to("cuda")

prompt = "a photo of an astronaut riding a horse on mars"
with autocast("cuda"):
    image = pipe(prompt, guidance_scale=7.5)["sample"][0]  
    
image.save("astronaut_rides_horse.png")

Funcionalidades

Generación de imágenes fotorrealistas basadas en entradas de texto.
Modelo de difusión de texto a imagen latente.
Uso del codificador de texto preentrenado CLIP ViT-L/14.
Entrenado a resolución de 512x512 en 'laion-improved-aesthetics'.

Casos de uso

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