Full fine-tuning de un modelo de difusión de gran escala (SDXL) para aprender y controlar una identidad visual consistente.
El reto no era generar imágenes — era hacer que el modelo respetara estilo, proporciones y coherencia dentro de un universo visual definido.
Entrenar un modelo de esta escala con un dataset limitado implicó gestionar convergencia rápida, overfitting temprano y pérdida de diversidad, requiriendo iteraciones sucesivas de ajuste fino hasta estabilizar el comportamiento del modelo.
Entrenamiento
- Full fine-tuning de SDXL sobre dataset propio (~16k imágenes tras data augmentation), con captions generados y refinados para conditioning texto-imagen.
- Entrenamiento ejecutado en GPUs A100 (Vast.ai), con sesiones de 8–12h por corrida.
- Trabajar con un dataset limitado para un modelo de esta escala implicó: convergencia rápida · overfitting temprano · pérdida de diversidad en epochs avanzadas.
- Se realizaron múltiples iteraciones de ajuste (learning rate, epochs, composición del dataset) hasta lograr un equilibrio entre coherencia visual y variabilidad.
- La selección del modelo final se basó en estabilidad de generación y consistencia visual, no únicamente en métricas de entrenamiento.
Adaptación por categoría (LoRAs)
- Una vez estabilizado el modelo base, se entrenaron LoRAs especializados por categoría sobre el modelo fine-tuneado.
- Cada LoRA introduce variaciones controladas sin alterar la identidad visual global, permitiendo: modularidad en generación · reducción de coste computacional · incorporación incremental de nuevas categorías.
- Entrenamiento en GPU (A100 / RTX 4090), con tiempos de 1.5–2h por LoRA.
Orquestación
- El sistema no es un único modelo, sino una arquitectura de generación orquestada.
- Cada categoría se implementa como un ensamblado independiente en ComfyUI, compuesto por: modelo base fine-tuneado · LoRA específico · refiner ajustado al dominio.
- Estos ensamblados están diseñados para producir resultados coherentes dentro de su categoría y no son intercambiables.
- Cada ensamblado define no solo el estilo, sino también el comportamiento de generación — arquitectura de control, no solo configuración.
Interpretación y ejecución
- El input del usuario no se envía directamente al modelo.
- Un LLM intermedio: interpreta el prompt · entiende el contexto semántico · clasifica la intención y selecciona dinámicamente el ensamblado adecuado · inyecta automáticamente la palabra activadora del LoRA.
- Esto abstrae completamente al usuario de la complejidad del sistema.
- La API actúa como capa de orquestación: recibe el prompt enriquecido · identifica el ensamblado correspondiente · enruta la ejecución al workflow adecuado en ComfyUI.
- Flujo completo: Prompt → LLM (interpretación + clasificación + enriquecimiento) → API (routing) → ComfyUI (workflow) → generación → respuesta.
- El sistema desacopla intención (LLM) de generación (modelo de difusión), permitiendo evolucionar cada capa de forma independiente.
Resultado
- Sistema de generación controlada donde el modelo mantiene una identidad visual consistente y permite variaciones dirigidas de forma modular.
- La intención del usuario se traduce automáticamente en configuración de generación coherente, sin exponer la complejidad del sistema.
- No es solo generación: es una arquitectura que interpreta intención y decide dinámicamente cómo generar.
- Este enfoque es directamente aplicable a cualquier sistema generativo que requiera control semántico sobre múltiples estilos o dominios.
- Separación clara entre intención, selección y generación, permitiendo escalar el sistema sin acoplar lógica entre componentes.
Reconocimientos
- 🏆 Mejor TFM Deep Learning — MIOTI 2025
- 🏆 Mejor Proyecto Académico — MIOTI 2024–2025