Workflows de Flux en ComfyUI: base, GGUF, SDXL, 360°
Workflows de Flux en ComfyUI: texto a imagen base, GGUF para poca VRAM, refiner SDXL para animales, panoramas 360° equirectangulares.
On this page
TL;DR
Workflows de Flux en ComfyUI: grafo base, GGUF, refiner SDXL, panoramas 360°
- Usa
flux1-dev.safetensorsenmodels/diffusion_models/con el codificador T5-XXL fp8 para 12–16 GB de VRAM;flux1-schnell.safetensorsenmodels/unet/funciona en 4 pasos con guidance 0. - Cuantiza con GGUF (Q4_K_S / Q5_K_M) mediante ComfyUI-GGUF; la comunidad reporta que Q4_K_S funciona en tarjetas de 12 GB con pérdida mínima de calidad.
- Para animales/criaturas, encadena Flux → SDXL (Ratatoskr) en una pasada de refiner; para panoramas 360°, usa el LoRA de SeanScripts + el workflow de corrección de costura shift-inpaint.
Grafo base de texto a imagen
Flux usa un transformador de flujo rectificado (12 B de parámetros) con dos codificadores de texto: CLIP-L y T5-XXL. El grafo de ComfyUI difiere de SDXL en tres formas. Para profundizar en los fundamentos de ComfyUI, ver tipos de nodos y cableado de ComfyUI.
| Componente | Archivo | Carpeta ComfyUI | Fuente |
|---|---|---|---|
| Modelo FLUX.1-dev | flux1-dev.safetensors | models/diffusion_models/ | HF |
| Modelo FLUX.1-schnell | flux1-schnell.safetensors | models/unet/ | HF |
| VAE | ae.safetensors | models/vae/ | HF |
| Codificador CLIP-L | clip_l.safetensors | models/text_encoders/ | HF |
| T5-XXL fp16 | t5xxl_fp16.safetensors | models/text_encoders/ | HF |
| T5-XXL fp8 (escalado) | t5xxl_fp8_e4m3fn_scaled.safetensors | models/text_encoders/ | HF |
Ajustes clave de los ejemplos oficiales
| Modelo | Pasos | guidance_scale | max_sequence_length | Licencia |
|---|---|---|---|---|
| FLUX.1-dev | 50 | 3.5 | 512 | No comercial |
| FLUX.1-schnell | 4 | 0.0 | 256 | Apache 2.0 |
Fuente: FLUX.1-dev README, FLUX.1-schnell README, ejemplos de Flux para ComfyUI
Nota: Las guías de la comunidad suelen citar 20 pasos para dev; el ejemplo oficial usa 50. El ajuste de 20 pasos es un compromiso entre velocidad y calidad, no un requisito del modelo.
Por qué Flux renderiza bien el texto
El codificador T5-XXL ofrece contexto de 512 tokens con fuerte anclaje semántico. El flujo rectificado aprende trayectorias más rectas en el espacio latente, preservando el detalle de glifos de alta frecuencia que los modelos de difusión suelen difuminar. HF FLUX.1-dev README
Prompts negativos
El pipeline estándar de Flux no tiene parámetro negative_prompt; el condicionamiento se controla solo mediante guidance_scale. Los nodos de la comunidad añaden condicionamiento negativo, pero el grafo base lo omite por completo. XLabs-AI publica un LoRA de realismo (flux-RealismLora) entrenado sobre FLUX.1-dev, con licencia no comercial. XLabs-AI/flux-RealismLora
GGUF y variantes de poca VRAM
Opciones de cuantización
ComfyUI-GGUF carga directamente checkpoints de Flux cuantizados en GGUF. El repositorio señala: "Si bien la cuantización no era factible para modelos UNET regulares (conv2d), los modelos transformer/DiT como flux parecen menos afectados por la cuantización." ComfyUI-GGUF
Niveles de cuantización comunes para Flux:
| Cuant | Tamaño aprox. | VRAM (solo modelo, est.) | Nota de calidad |
|---|---|---|---|
| Q8_0 | ~23 GB | ~24 GB | Casi sin pérdida |
| Q5_K_M | ~15 GB | ~16 GB | Equilibrio sólido |
| Q4_K_S | ~12 GB | ~13 GB | Reportes de la comunidad: funciona en tarjetas de 12 GB |
La VRAM exacta depende del codificador T5 elegido (fp16 ≈ 10 GB, fp8-escalado ≈ 5 GB) y de los ajustes de offload. Las cifras de VRAM son estimaciones de la comunidad; no hay mínimos oficiales publicados.
Checkpoints FP8 (alternativa)
Kijai publica flux1-dev-fp8.safetensors y flux1-schnell-fp8.safetensors (float8_e4m3fn / float8_e5m2). Los ejemplos de ComfyUI advierten: "fp8 degrada un poco la calidad, así que si tienes recursos se recomienda la versión oficial completa de 16 bits." ejemplos de Flux para ComfyUI Los pesos publicados incluyen flux1-dev-fp8-e4m3fn.safetensors, flux1-dev-fp8-e5m2.safetensors y flux1-schnell-fp8-e4m3fn.safetensors. Kijai/flux-fp8
Ahorro de memoria del codificador T5
| Codificador | Tamaño de archivo | Impacto en VRAM |
|---|---|---|
t5xxl_fp16.safetensors | 9.8 GB | ~10 GB |
t5xxl_fp8_e4m3fn_scaled.safetensors | 5.2 GB | ~5 GB |
Cambiar al codificador fp8-escalado es la mayor reducción de VRAM individual para Flux en tarjetas de consumo. Para más sobre los compromisos de cuantización, ver GGUF vs FP8 vs bitsandbytes.
Combinar Flux con una pasada de refiner SDXL
Motivación
Flux sobresale en texto, composición y coherencia general, pero los reportes de la comunidad señalan menor fidelidad en animales/criaturas/anthro. La solución: generar una imagen base con Flux y luego ejecutar una pasada img2img con un fine-tune de SDXL especializado en esos dominios.
Workflow Ratatoskr Refiner
- Flux txt2img → salida latente o de píxeles
- SDXL img2img con
Ratatoskr(modelo Civitai 192854: "Animal, Creature and Furry") a denoise bajo (0.2–0.4) - Opcional: ControlNet (depth/canny) para preservar la estructura
El artículo de Civitai describe el método como "usa mi modelo Ratatoskr como refiner" Civitai 6547. El workflow adjunto (16 MB) no fue inspeccionable públicamente en el momento de la investigación; el patrón de integración sigue el encadenamiento estándar Flux→SDXL de ComfyUI.
Ajustes prácticos
| Etapa | Modelo | Denoise | Pasos | CFG |
|---|---|---|---|---|
| Base | FLUX.1-dev | N/A | 20–50 | 3.5 |
| Refine | SDXL (Ratatoskr) | 0.25–0.35 | 15–25 | 5–7 |
Un denoise más bajo preserva la composición de Flux; un denoise más alto inyecta más detalle de criatura de SDXL. Para el fine-tuning de SDXL, ver guía de entrenamiento de LoRAs SDXL para personajes.
Panoramas 360° equirectangulares
LoRA y workflow
SeanScripts entrenó un LoRA de Flux (Flux Equirectangular 360° Panorama, v3, trigger equirectangular 360) con imágenes equirectangulares profesionales. Civitai 735980 Workflow actualizado con anotaciones: Civitai 745010
El problema de la costura
La proyección equirectangular mapea esfera → rectángulo: los bordes izquierdo y derecho se unen detrás del espectador. La generación estándar produce una costura visible porque el modelo no tiene restricción de consistencia cíclica.
Corrección de costura shift-inpaint (lógica del workflow)
- Generar imagen equirectangular con LoRA
- Desplazar la imagen 50 % horizontalmente (modo wrap)
- Inpainting de la nueva región central (antigua costura) a denoise bajo
- Desplazar de vuelta 50 % → textura 360° sin costura
El artículo describe: "desplazar la imagen hasta la mitad, luego hacer inpainting de la sección central de la imagen para eliminar la costura. Después, desplaza de vuelta para obtener la composición original de la imagen." Civitai 7287
Pasada de upscale opcional
Para resolución VR, upscale 2× → pasada de denoise bajo en las versiones normal y desplazada → desplazar de vuelta.
Nodos personalizados requeridos
| Paquete de nodos | Repositorio | Propósito |
|---|---|---|
| ComfyUI-GGUF | city96/ComfyUI-GGUF | Carga de modelos GGUF |
| ComfyMath | evanspearman/ComfyMath | Operaciones matemáticas para cálculos de desplazamiento |
| ComfyStereo | Dobidop/ComfyStereo | Panoramas 3D estéreo (opcional) |
Ver el resultado
- Web: visor 360 de renderstuff.com
- VR: SteamVR Media Player, DeoVR
- Metadatos:
exiftool -XMP:ProjectionType="equirectangular" image.pnginyecta la etiqueta de proyección compatible con Google
Notas de calidad (autorreporte del autor)
- Paisajes: resultados sólidos
- Escenas de interior: pueden necesitar múltiples seeds o pasadas img2img adicionales
Errores comunes y correcciones
| Síntoma | Causa | Corrección | Fuente |
|---|---|---|---|
| OOM con 16 GB de VRAM | T5-XXL fp16 ≈ 10 GB solo | Usar t5xxl_fp8_e4m3fn_scaled.safetensors (~5 GB) | ejemplos de Flux para ComfyUI |
| Flux dev no aparece en la lista de checkpoints | Modelo en checkpoints/ y no en diffusion_models/ | Mover a ComfyUI/models/diffusion_models/ | ejemplos de Flux para ComfyUI |
| Flux schnell no se encuentra | Modelo en checkpoints/ y no en unet/ | Mover a ComfyUI/models/unet/ | ejemplos de Flux para ComfyUI |
| El panorama tiene costura visible | Sin consistencia cíclica en la generación | Desplazar 50 % → inpainting del centro → desplazar de vuelta | Civitai 7287 |
| Pérdida de calidad con checkpoint FP8 | Pérdida de precisión float8 | Usar fp16 si la VRAM lo permite | ejemplos de Flux para ComfyUI |
Preguntas frecuentes (FAQ)
¿Por qué FLUX.1-schnell usa 4 pasos mientras dev usa 50? Schnell es un modelo estudiante destilado mediante destilación de difusión adversaria latente para igualar la salida de dev en 1–4 pasos. Dev usa destilación de guidance y requiere más pasos para calidad completa. HF FLUX.1-schnell README
¿Necesito prompts negativos con Flux? El pipeline base no tiene entrada negative_prompt; el condicionamiento se controla con guidance_scale (dev: 3.5, schnell: 0). Los nodos de la comunidad pueden añadir condicionamiento negativo si se desea.
¿Puedo ejecutar Flux con 12 GB de VRAM? Los reportes de la comunidad sugieren que funciona con el codificador T5 fp8 y/o cuantización GGUF Q4_K_S. No hay un mínimo oficial publicado. Civitai 6464
¿Cómo corrijo la costura en imágenes equirectangulares 360? Desplaza la imagen 50 % horizontalmente, haz inpainting de la nueva región central a denoise bajo y luego desplaza de vuelta. Esto está implementado en el workflow de SeanScripts. Civitai 7287
¿Cuál es la diferencia entre los checkpoints fp8 y fp16 de Flux? FP8 (float8_e4m3fn) reduce a la mitad el tamaño de los pesos pero "degrada un poco la calidad" según los ejemplos de ComfyUI. Usa fp16 cuando la VRAM lo permita. ejemplos de Flux para ComfyUI
¿Qué codificador T5 debo elegir para poca VRAM? t5xxl_fp8_e4m3fn_scaled.safetensors (~5 GB) en lugar de t5xxl_fp16.safetensors (~10 GB). ejemplos de Flux para ComfyUI
¿Es segura la cuantización GGUF para Flux? El autor de ComfyUI-GGUF afirma que los modelos transformer/DiT como Flux son "menos afectados por la cuantización" en comparación con U-Nets basados en conv. ComfyUI-GGUF
¿Dónde pongo los archivos del modelo Flux en ComfyUI?
flux1-dev.safetensors→models/diffusion_models/flux1-schnell.safetensors→models/unet/ae.safetensors→models/vae/- Codificadores de texto →
models/text_encoders/