Entrenamiento LoRA FLUX con FluxGym: Colab, RunPod y ajustes
Guía para entrenar LoRA FLUX con FluxGym en Colab y RunPod, con los ajustes ocultos de Kohya que todo entrenador debe conocer.
On this page
- TL;DR
- ¿Qué es FluxGym y por qué importa para el entrenamiento de VRAM baja?
- FluxGym en Google Colab: entrenamiento gratuito de LoRA FLUX con GPU T4
- La trampa de la máscara de atención T5
- RunPod: entrenamiento más rápido en GPUs de pago
- Qué recomienda Kohya sd-scripts para entrenamiento de FLUX.1
- Otras funcionalidades ocultas de FluxGym
- Errores comunes y soluciones
- Preguntas frecuentes (FAQ)
FluxGym: entrenamiento de LoRA FLUX en Colab, RunPod y ajustes ocultos
TL;DR
- FluxGym es gratuito y funciona en GPUs con 12 GB de VRAM o menos. Su backend de Kohya sd-scripts descarga bloques del transformer a la RAM de la CPU con
--blocks_to_swap, lo que permite entrenar en hardware fuera del alcance de AI-Toolkit. - La GPU T4 de Google Colab (16 GB) funciona, pero es lenta. FluxGym en Colab es un punto de entrada gratuito: el entrenamiento toma más tiempo que en RunPod, donde GPUs más rápidas reducen la espera de forma notable.
- FluxGym esconde cada ajuste avanzado de Kohya detrás de una pestaña contraída. Los valores predeterminados sirven para pruebas rápidas, pero parámetros críticos como
--guidance_scale,--timestep_samplingy--model_prediction_typeestán en la sección Avanzada y deben establecerse manualmente para obtener los mejores resultados.
¿Qué es FluxGym y por qué importa para el entrenamiento de VRAM baja?
FluxGym es una interfaz web de código abierto para entrenar modelos FLUX LoRA sin usar una terminal. Su interfaz Gradio proviene de un fork de AI-Toolkit, que solo admite GPUs con 24 GB de VRAM o más, mientras que el backend usa Kohya sd-scripts, que implementa el intercambio de bloques entre GPU y CPU para reducir drásticamente los requisitos de VRAM. El resultado es una herramienta que soporta GPUs de 12 GB a 20 GB de VRAM, algo que AI-Toolkit no puede hacer. Para usuarios sin hardware caro, FluxGym cubre esa brecha al exponer la función de intercambio de bloques de Kohya en una interfaz de apuntar y hacer clic. Consulta también nuestra guía completa de entrenamiento de LoRA FLUX con FluxGym para más información.
FluxGym en Google Colab: entrenamiento gratuito de LoRA FLUX con GPU T4
Google Colab ofrece acceso gratuito a GPUs NVIDIA T4 con 16 GB de VRAM. Un miembro de la comunidad creó un cuaderno FluxGym Colab que ejecuta la interfaz FluxGym completa en el navegador, sin instalación local (Civitai 7345).
Cómo preparar FluxGym en Colab
- Abre el cuaderno de Colab enlazado arriba.
- Ejecuta todas las celdas para instalar FluxGym y sus dependencias (PyTorch nightly, Kohya sd-scripts de la rama
sd3). - Espera a que la interfaz de Gradio arranque: aparece una URL pública en la salida.
- Sube tus imágenes de entrenamiento, escribe los captions con una palabra trigger y haz clic en Start.
El cuaderno también ofrece una plantilla de RunPod como alternativa más rápida, de pago.
Lo que FluxGym oculta a los usuarios de Colab
La experiencia predeterminada de Colab solo expone los campos básicos: nombre de la LoRA, directorio de imágenes, prefijo de caption y pasos de entrenamiento. Los ajustes críticos de FLUX que determinan la calidad de la salida están enterrados en la pestaña Avanzada, contraída por defecto. La documentación de FluxGym confirma que esa pestaña "se construye automáticamente al analizar las flags de lanzamiento disponibles para la última versión de kohya sd-scripts", lo que significa que cada función de Kohya es accesible, pero solo si sabes expandirla (README de FluxGym).
Los ajustes ocultos más importantes incluyen:
| Ajuste | Valor predeterminado (en Kohya) | Valor recomendado para FLUX.1 | Para qué sirve |
|---|---|---|---|
--guidance_scale | 3.5 | 1.0 | Deshabilita la guía sin clasificación para el entrenamiento (FLUX.1 dev tiene la CFG integrada en la distillación) |
--timestep_sampling | sigma | flux_shift | Cambia la distribución de los timesteps según la resolución, igualando la inferencia de Flux.1 dev |
--model_prediction_type | sigma_scaled | raw | Usa las predicciones del modelo sin escalado sigma |
--blocks_to_swap | 0 (ninguno) | 16-22 según VRAM | Copia los bloques del transformer a la RAM de la CPU |
--apply_t5_attn_mask | Off | Off para FLUX (requerido para Chroma) | Aplica máscaras de atención al codificador de texto T5-XXL |
Ejecutar con los valores predeterminados en una GPU T4 hace que el script de entrenamiento use --guidance_scale 3.5 (el valor de inferencia) y --model_prediction_type sigma_scaled, dos ajustes que la documentación de Kohya recomienda cambiar explícitamente para el entrenamiento de FLUX.1. La escala de guía predeterminada es especialmente importante: la documentación de Kohya indica que "el valor predeterminado es 3.5, así que asegúrese de especificar esto" en 1.0 para FLUX.1 dev (Documentos de Kohya).
La trampa de la máscara de atención T5
Para cada nivel de VRAM, consulta ajustes de VRAM GPU para entrenamiento de LoRA FLUX.
FLUX.1 es un modelo transformer grande. La documentación oficial de Kohya proporciona una referencia de VRAM por nivel para flux_train_network.py. Todas las recomendaciones siguientes asumen que --fp8_base está habilitado:
| GPU VRAM | Ajustes requeridos | Notas |
|---|---|---|
| 24 GB | Ajustes básicos, tamaño de batch 2 | No se necesita intercambio de bloques |
| 16 GB | Tamaño de batch 1 + --blocks_to_swap | Colab T4 queda aquí |
| 12 GB | --blocks_to_swap 16 + AdamW8bit | |
| 10 GB | --blocks_to_swap 22 + checkpoint fp8 T5XXL | La comunidad reporta una lentitud significativa contra los niveles de VRAM más altos |
| 8 GB | --blocks_to_swap 28 + checkpoint fp8 T5XXL | Nivel más bajo práctico de VRAM bajo |
Source: Documentos de entrenamiento FLUX de Kohya sd-scripts
El mecanismo --blocks_to_swap mueve los pesos de los bloques del transformer de FLUX.1 entre la VRAM de la GPU y la RAM de la CPU. FLUX.1 admite hasta 35 bloques para intercambio. Los recuentos de bloques más altos reducen el uso de VRAM, pero aumentan la sobrecarga de transferencia GPU-CPU, lo que ralentiza el entrenamiento en proporción. Para GPUs por debajo de 10 GB, la documentación de Kohya también recomienda un checkpoint de T5-XXL en formato fp8.
Ten en cuenta que --fp8_base reduce el uso de VRAM, pero la documentación de Kohya advierte que "los resultados del entrenamiento pueden variar": intercambia precisión por ahorro de memoria.
RunPod: entrenamiento más rápido en GPUs de pago
RunPod ofrece GPUs en la nube con facturación por segundo. Una plantilla de RunPod de FluxGym creada por la comunidad instala FluxGym y sus dependencias, eliminando la configuración manual.
Precios de RunPod para GPUs comunes de entrenamiento FLUX
| GPU | VRAM | Precio/hr | Mejor para |
|---|---|---|---|
| A40 | 48 GB | $0.44 | Entrenamiento de presupuesto FLUX.1 dev, tamaño de batch 2 |
| L40S | 48 GB | $0.99 | Entrenamiento más rápido, misma categoría de VRAM |
| A100 PCIe | 80 GB | $1.39 | Tamaños de batch grandes, intercambio mínimo |
| A100 SXM | 80 GB | $1.49 | Opción A100 más rápida |
Source: Página de precios de RunPod
En una GPU de 48 GB como A40 o L40S, puedes entrenar FLUX.1 con tamaño de batch 2 y sin intercambio de bloques, la configuración más sencilla posible. Esto elimina la penalización de velocidad que vuelve lento el entrenamiento en Colab (Civitai 6860).
Errores comunes de RunPod
Para más detalles sobre el flujo de trabajo y configuración de RunPod, consulta nuestra guía de entrenamiento de LoRA FLUX en RunPod.
Dos problemas se repiten en los reportes de la comunidad. Primero, la interfaz web de RunPod puede quedar cargando indefinidamente si un antivirus (en especial Avast) bloquea sus llamadas a la API; deshabilitar el antivirus temporalmente resuelve el problema. Segundo, la interfaz de entrenamiento de RunPod exige rutas que empiecen con una barra diagonal (por ejemplo, /workplace/your-dataset); omitirla hace que el entrenamiento falle en silencio. Los usuarios también deben guardar los ajustes manualmente antes de relanzar el entrenamiento, o los cambios se descartan (reportes de la comunidad).
Qué recomienda Kohya sd-scripts para entrenamiento de FLUX.1
Junto con la pestaña Avanzada de FluxGym, la documentación propia de Kohya especifica estos parámetros de entrenamiento de base para FLUX.1:
--network_dim=16 --network_alpha=1
--learning_rate=1e-4
--optimizer_type="AdamW8bit"
--lr_scheduler="constant"
--mixed_precision="fp16"
--gradient_checkpointing
--sdpa
--guidance_scale=1.0
--timestep_sampling="flux_shift"
--model_prediction_type="raw"
Source: Documentos de entrenamiento FLUX de Kohya.
La documentación también proporciona una combinación recomendada verificada: --timestep_sampling shift --discrete_flow_shift 3.1582 --model_prediction_type raw --guidance_scale 1.0. Para los modelos Chroma, se debe usar --timestep_sampling sigmoid y --guidance_scale 0.0 en su lugar.
Pasos de entrenamiento: qué reporta la comunidad
La experiencia de la comunidad sugiere que 3.000 pasos suelen producir mejores resultados que 4.000 para la LoRA FLUX, ya que recuentos más altos pueden dar salidas sobrecocidas. Se reportan modelos estilizados logrados con tan solo 1.000 pasos. Son cifras reportadas por entrenadores individuales de la comunidad, no benchmarks controlados [Civitai 7431].
Otras funcionalidades ocultas de FluxGym
Más allá de la pestaña Avanzada, FluxGym incluye varias capacidades no inmediatamente visibles:
- Generación automática de imágenes de muestra. Configura prompts y un intervalo de pasos para generar imágenes de vista previa durante el entrenamiento. Cada prompt admite flags:
--dpara la seed,--w/--hpara las dimensiones,--lpara la escala de CFG,--spara el recuento de pasos [README de FluxGym]. - Publicación en Hugging Face. Introduce tu token de HF en la interfaz para publicar una LoRA entrenada directamente en Hugging Face.
- Soporte de Docker. Instala con
docker compose up -d --buildpara despliegue en contenedores. - Instalación de un clic en Pinokio. La instalación local a través del lanzador Pinokio evita los pasos manuales
git cloneypip install.
Errores comunes y soluciones
| Problema | Causa probable | Solución |
|---|---|---|
| La página de RunPod carga indefinidamente | Antivirus que bloquea la API de RunPod (Avast) | Deshabilita el antivirus temporalmente |
| El entrenamiento falla en silencio en RunPod | Falta la diagonal / al inicio de la ruta, o los ajustes no se guardan | Usa /workplace/[ruta] y guarda antes de lanzar |
| OOM en GPU de 12 GB | blocks_to_swap demasiado bajo o ausente | Pon --blocks_to_swap 16 + --fp8_base |
| OOM en GPU de 10 GB | Necesitas intercambio agresivo de bloques + fp8 T5 | Pon --blocks_to_swap 22 + descarga el fp8 T5XXL |
| La LoRA produce salidas malas o de baja calidad | --guidance_scale quedó en el valor predeterminado 3.5 | Pon --guidance_scale 1.0 para FLUX.1 dev |
| Errores de PyTorch en RTX serie 50 | Versión de CUDA incorrecta | Instala torch nightly con CUDA 12.8 y actualiza bitsandbytes |
Preguntas frecuentes (FAQ)
¿Qué tan lenta es el entrenamiento de LoRA FLUX en una GPU T4 de Colab?
Ninguna fuente proporciona una medición concreta. El creador del cuaderno describe el entrenamiento en T4 como "un poco lenta". La arquitectura Turing de la T4 más la sobrecarga del intercambio de bloques la hace significativamente más lenta que una GPU de RunPod de 48 GB, pero cuesta nada.
¿Se puede entrenar LoRA FLUX con solo 10 GB de VRAM?
Sí. La documentación de Kohya recomienda --blocks_to_swap 22 más el checkpoint de T5-XXL en formato fp8. La comunidad reporta una lentitud significativa contra configuraciones de VRAM más altas; no hay un benchmark independiente que fije la penalización exacta.
¿Qué es --blocks_to_swap y por qué ralentiza el entrenamiento?
Mantiene fuera de la VRAM de la GPU los bloques del transformer de FLUX.1 y los intercambia a la RAM de la CPU durante el entrenamiento, y los vuelve a cargar bajo demanda. FLUX.1 admite hasta 35 bloques para intercambio.
¿Se deben cambiar los ajustes de la pestaña Avanzada de FluxGym?
Sí. Por lo menos, establece --guidance_scale 1.0, --timestep_sampling flux_shift y --model_prediction_type raw para FLUX.1 dev. Los valores predeterminados de Kohya (guía 3.5, muestreo sigma, predicciones sigma_scaled) están ajustados para otras arquitecturas.