h1t/oms_b_openclip_15_21
El módulo One More Step (OMS) fue propuesto en el artículo One More Step: A Versatile Plug-and-Play Module for Rectifying Diffusion Schedule Flaws and Enhancing Low-Frequency Controls por Minghui Hu, Jianbin Zheng, Chuanxia Zheng, Tat-Jen Cham y otros. Añadiendo un pequeño paso adicional en el proceso de muestreo, podemos abordar los problemas causados por los defectos en el calendario de difusión sin cambiar los parámetros originales del modelo. Esto también permite cierto control sobre la información de baja frecuencia, como el color. Nuestro modelo es versátil y se puede integrar en casi todos los marcos de Stable Diffusion ampliamente utilizados. Es compatible con favoritos de la comunidad como LoRA, ControlNet, Adapter y modelos fundamentales.
Como usar
OMS ahora es compatible con 🤗 diffusers con una pipeline personalizada en GitHub. Para ejecutar el modelo (especialmente con la variante LCM), primero instala la última versión de la librería diffusers así como accelerate y transformers.
pip install --upgrade pip
pip install --upgrade diffusers transformers accelerate
Y luego clona el repositorio:
git clone https://github.com/mhh0318/OneMoreStep.git
cd OneMoreStep
Ejemplo de uso:
import torch
from diffusers import StableDiffusionPipeline, LCMScheduler
sd_pipe = StableDiffusionPipeline.from_pretrained("stabilityai/stable-diffusion-2-1", torch_dtype=torch.float16, variant="fp16", safety_checker=None).to('cuda')
pipe = OMSPipeline.from_pretrained('h1t/oms_b_openclip_15_21', sd_pipeline = sd_pipe, torch_dtype=torch.float16, variant="fp16", trust_remote_code=True)
pipe.to('cuda')
generator = torch.Generator(device=pipe.device).manual_seed(100)
prompt = "a starry night"
image = pipe(prompt, guidance_scale=7.5, num_inference_steps=20, oms_guidance_scale=2., generator=generator)
image['images'][0]
sin OMS:
image = pipe(prompt, guidance_scale=7.5, num_inference_steps=20, oms_guidance_scale=2., generator=generator, oms_flag=False)
image['images'][0]
Se encontró que la calidad del modelo generativo ha mejorado considerablemente. Para más modelos y funciones como el uso de diferentes prompts, por favor refiérase al repositorio OMS.
Funcionalidades
- Compatibilidad con OMS para SD1.5/SD2.1.
- Integración fácil con marcos de Stable Diffusion.
- Permite control sobre información de baja frecuencia.
- Mejora la calidad de los modelos generativos.
Casos de uso
- Mejorar la calidad de imágenes generadas.
- Controlar información de baja frecuencia en la generación de imágenes.
- Integrar la funcionalidad OMS en marcos de Stable Diffusion existentes.