frankjoshua/Qwen-Image-Lightning
frankjoshua
Texto a imagen
Modelo de generación de imágenes a partir de texto basado en Qwen-Image y adaptado con Qwen-Image-Lightning mediante distilación/LoRA para inferencia de pocos pasos. Está orientado a crear imágenes detalladas desde prompts en inglés o chino, usando Diffusers y un scheduler FlowMatchEuler configurado para el flujo Lightning.
Como usar
Instalación y uso básico con Diffusers:
pip install -U diffusers transformers accelerate
import torch
from diffusers import DiffusionPipeline
# switch to "mps" for apple devices
pipe = DiffusionPipeline.from_pretrained("frankjoshua/Qwen-Image-Lightning", dtype=torch.bfloat16, device_map="cuda")
prompt = "Astronaut in a jungle, cold color palette, muted colors, detailed, 8k"
image = pipe(prompt).images[0]
Uso recomendado con Diffusers desde la rama principal y pesos LoRA Lightning:
pip install git+https://github.com/huggingface/diffusers.git
from diffusers import DiffusionPipeline, FlowMatchEulerDiscreteScheduler
import torch
import math
scheduler_config = {
"base_image_seq_len": 256,
"base_shift": math.log(3),
"invert_sigmas": False,
"max_image_seq_len": 8192,
"max_shift": math.log(3),
"num_train_timesteps": 1000,
"shift": 1.0,
"shift_terminal": None,
"stochastic_sampling": False,
"time_shift_type": "exponential",
"use_beta_sigmas": False,
"use_dynamic_shifting": True,
"use_exponential_sigmas": False,
"use_karras_sigmas": False,
}
scheduler = FlowMatchEulerDiscreteScheduler.from_config(scheduler_config)
pipe = DiffusionPipeline.from_pretrained(
"Qwen/Qwen-Image",
scheduler=scheduler,
torch_dtype=torch.bfloat16
).to("cuda")
pipe.load_lora_weights(
"lightx2v/Qwen-Image-Lightning",
weight_name="Qwen-Image-Lightning-8steps-V1.0.safetensors"
)
prompt = "a tiny astronaut hatching from an egg on the moon, Ultra HD, 4K, cinematic composition."
negative_prompt = " "
image = pipe(
prompt=prompt,
negative_prompt=negative_prompt,
width=1024,
height=1024,
num_inference_steps=8,
true_cfg_scale=1.0,
generator=torch.manual_seed(0),
).images[0]
image.save("qwen_fewsteps.png")
Funcionalidades
- Generación texto-a-imagen con arquitectura Diffusers.
- Basado en Qwen/Qwen-Image.
- Ajuste Lightning mediante LoRA para generación en pocos pasos, incluyendo ejemplo de 8 pasos.
- Soporte para prompts en inglés y chino.
- Licencia Apache 2.0.
- No está desplegado actualmente en proveedores de inferencia de Hugging Face.
Casos de uso
- Crear imágenes 1024x1024 desde descripciones textuales con pocos pasos de inferencia.
- Prototipar flujos locales de generación visual con Qwen-Image y LoRA Lightning.
- Generar escenas detalladas, cinemáticas o de alta resolución a partir de prompts creativos.
- Integrar generación texto-a-imagen en notebooks, apps locales o pipelines basados en Diffusers.