Kandinsky 2.2
Kandinsky hereda las mejores prácticas de Dall-E 2 y la difusión latente al tiempo que introduce algunas ideas nuevas. Utiliza el modelo CLIP como un codificador de texto e imagen, y un previo de imagen por difusión (mapeo) entre espacios latentes de modalidades CLIP. Este enfoque aumenta el rendimiento visual del modelo y revela nuevos horizontes en la mezcla de imágenes y la manipulación de imágenes guiada por texto. El modelo Kandinsky ha sido creado por Arseniy Shakhmatov, Anton Razzhigaev, Aleksandr Nikolich, Igor Pavlov, Andrey Kuznetsov y Denis Dimitrov.
Como usar
Kandinsky 2.2 está disponible en diffusers!
pip install diffusers transformers accelerate
from diffusers import AutoPipelineForInpainting
from diffusers.utils import load_image
import torch
import numpy as np
pipe = AutoPipelineForInpainting.from_pretrained("kandinsky-community/kandinsky-2-2-decoder-inpaint", torch_dtype=torch.float16)
pipe.enable_model_cpu_offload()
prompt = "un sombrero"
init_image = load_image(
"https://huggingface.co/datasets/hf-internal-testing/diffusers-images/resolve/main/kandinsky/cat.png")
mask = np.zeros((768, 768), dtype=np.float32)
# Vamos a enmascarar un área sobre la cabeza del gato
mask[:250, 250:-250] = 1
out = pipe(
prompt=prompt,
image=init_image,
mask_image=mask,
height=768,
width=768,
num_inference_steps=150,
)
image = out.images[0]
image.save("gato_con_sombrero.png")
🚨🚨🚨 Cambio disruptivo para la pintura de máscaras de Kandinsky 🚨🚨🚨
Hemos introducido un cambio disruptivo en la tubería de pintura de máscaras de Kandinsky en la siguiente solicitud de extracción: https://github.com/huggingface/diffusers/pull/4207. Anteriormente aceptábamos un formato de máscara donde los píxeles negros representaban el área enmascarada. Esto es inconsistente con todas las demás tuberías en diffusers. Hemos cambiado el formato de la máscara en Kandinsky y ahora usamos píxeles blancos en su lugar. Por favor, actualice su código de pintura para seguir lo anterior. Si está usando Kandinsky Inpaint en producción, ahora necesita cambiar la máscara a:
# Para entrada PIL
import PIL.ImageOps
mask = PIL.ImageOps.invert(mask)
# Para entrada PyTorch y Numpy
mask = 1 - mask
Funcionalidades
- Generación de imágenes guiadas por texto
- Mezcla avanzada de imágenes
- Manipulación de imágenes guiada por texto
- Entorno de difusión latente
- Código abierto bajo licencia apache-2.0
Casos de uso
- Generación de imágenes a partir de descripciones de texto
- Mezcla de imágenes
- Edición y manipulación de imágenes basada en texto
- Creación de contenido visual avanzado