calcuis/qwen-image-gguf

calcuis
Texto a imagen

Versión cuantizada en formato GGUF de Qwen-Image, orientada a generación de imágenes a partir de texto. Publica variantes de cuantización de un modelo de 20B parámetros para ejecutarlo con gguf-node, gguf-connector, ComfyUI o Diffusers, usando como base Qwen/Qwen-Image.

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("calcuis/qwen-image-gguf", dtype=torch.bfloat16, device_map="cuda")

prompt = "cute anime girl with massive fennec ears and a big fluffy fox tail with long wavy blonde hair between eyes and large blue eyes blonde colored eyelashes chubby wearing oversized clothes summer uniform long blue maxi skirt muddy clothes happy sitting on the side of the road in a run down dark gritty cyberpunk city with neon and a crumbling skyscraper in the rain at night while dipping her feet in a river of water she is holding a sign that says \"ComfyUI is the best\" written in cursive"
image = pipe(prompt).images[0]

Uso con GGUF en Diffusers:

import torch
from diffusers import DiffusionPipeline, GGUFQuantizationConfig, QwenImageTransformer2DModel

model_path = "https://huggingface.co/calcuis/qwen-image-gguf/blob/main/qwen-image-q2_k.gguf"
transformer = QwenImageTransformer2DModel.from_single_file(
    model_path,
    quantization_config=GGUFQuantizationConfig(compute_dtype=torch.bfloat16),
    torch_dtype=torch.bfloat16,
    config="callgg/qi-decoder",
    subfolder="transformer")

pipe = DiffusionPipeline.from_pretrained(
    "callgg/qi-decoder",
    transformer=transformer,
    torch_dtype=torch.bfloat16,
)
pipe.enable_model_cpu_offload()

prompt = "a pig holding a sign that says hello world"
positive_magic = {"en": "Ultra HD, 4K, cinematic composition."}
negative_prompt = " "

image = pipe(
    prompt=prompt + positive_magic["en"],
    negative_prompt=negative_prompt,
    height=1024,
    width=1024,
    num_inference_steps=24,
    true_cfg_scale=2.5,
    generator=torch.Generator()
).images[0]

image.save("output.png")

Nota de la página: Diffusers todavía no soporta algunas cuantizaciones t e i; para esas variantes se recomienda usar gguf-node con ComfyUI o ejecutarlo directamente con gguf-connector.

Funcionalidades

Generación texto-a-imagen con arquitectura Qwen-Image cuantizada en GGUF.
Modelo de 20B parámetros con múltiples cuantizaciones: 1-bit, 2-bit, 3-bit, 4-bit, 5-bit, 6-bit, 8-bit y BF16/F16.
Integración documentada con ComfyUI mediante gguf-node.
Ejemplo de uso con Diffusers y QwenImageTransformer2DModel cargando un archivo GGUF.
Usa qwen2.5-vl-7b como text encoder en el flujo indicado para ComfyUI.
Licencia Apache 2.0.
No aparece desplegado en proveedores de inferencia de Hugging Face en la página proporcionada.

Casos de uso

Generar imágenes 1024x1024 desde prompts de texto usando una versión GGUF de Qwen-Image.
Ejecutar Qwen-Image cuantizado en entornos locales con ComfyUI.
Probar distintas cuantizaciones GGUF para equilibrar tamaño, memoria y calidad.
Integrar Qwen-Image cuantizado en flujos Python con Diffusers cuando la cuantización elegida esté soportada.