ComfyUI  >  Flujos de trabajo  >  Entrenamiento FLUX LoRA

Entrenamiento FLUX LoRA

Este flujo de trabajo de Entrenamiento ComfyUI FLUX LoRA le permite ajustar modelos FLUX preexistentes con sus propios conjuntos de datos. Con esta guía detallada, aprenderá cómo preparar sus datos de entrenamiento, configurar el flujo de trabajo, configurar parámetros esenciales y ejecutar el proceso de entrenamiento. Desbloquee el pleno potencial de los modelos de IA FLUX y cree resultados personalizados que se alineen perfectamente con su visión.

ComfyUI FLUX LoRA Training Flujo de trabajo

ComfyUI FLUX LoRA Training
¿Quiere ejecutar este flujo de trabajo?
  • Flujos de trabajo completamente operativos
  • Sin nodos ni modelos faltantes
  • No se requiere configuración manual
  • Presenta visuales impresionantes

ComfyUI FLUX LoRA Training Ejemplos

comfyui-flux-lora-training-detailed-guides-1123

ComfyUI FLUX LoRA Training Descripción

FLUX LoRA ha ganado una inmensa popularidad en la comunidad de IA, especialmente entre aquellos que buscan ajustar modelos de IA con sus propios conjuntos de datos. Este enfoque le permite adaptar sin esfuerzo los modelos FLUX preexistentes a sus conjuntos de datos únicos, haciéndolo altamente personalizable y eficiente para una amplia gama de esfuerzos creativos. Si ya está familiarizado con ComfyUI, usar el flujo de trabajo de Entrenamiento ComfyUI FLUX LoRA para entrenar su modelo FLUX LoRA será muy fácil. El flujo de trabajo y los nodos relacionados fueron creados por Kijai, ¡así que muchas gracias a él por su contribución! Consulte para obtener más información.

Tutorial de Entrenamiento ComfyUI FLUX LoRA

El flujo de trabajo de Entrenamiento ComfyUI FLUX LoRA es un poderoso proceso diseñado para entrenar modelos FLUX LoRA. Entrenar con ComfyUI ofrece varias ventajas, especialmente para los usuarios ya familiarizados con su interfaz. Con el Entrenamiento FLUX LoRA, puede usar los mismos modelos empleados para inferencia, asegurando que no haya problemas de compatibilidad al trabajar dentro del mismo entorno de Python. Además, puede construir flujos de trabajo para comparar diferentes configuraciones, mejorando su proceso de entrenamiento. Este tutorial lo guiará a través de los pasos para configurar y usar el Entrenamiento FLUX LoRA en ComfyUI.

Cubriremos:

  1. Preparación de su Conjunto de Datos para el Entrenamiento FLUX LoRA
  2. El Proceso de Entrenamiento FLUX LoRA
  3. Ejecución del Entrenamiento FLUX LoRA
  4. Cómo y Dónde Usar los Modelos FLUX y FLUX LoRA

1. Preparación de su Conjunto de Datos para el Entrenamiento FLUX LoRA

Al preparar sus datos de entrenamiento para el Entrenamiento FLUX LoRA, es esencial tener imágenes de alta calidad para su sujeto objetivo.

En este ejemplo, estamos entrenando un modelo FLUX LoRA para generar imágenes de un influencer específico. Para esto, necesitará un conjunto de imágenes de alta calidad del influencer en varias poses y configuraciones. Una forma conveniente de reunir estas imágenes es usando el , que facilita la generación de una colección de imágenes que muestran el mismo personaje en diferentes poses mientras mantiene su apariencia consistente. Para nuestro conjunto de datos de entrenamiento, hemos seleccionado cinco imágenes de alta calidad del influencer en varias poses y configuraciones, asegurando que el conjunto de datos sea lo suficientemente robusto para que el Entrenamiento FLUX LoRA aprenda los detalles intrincados necesarios para producir resultados consistentes y precisos.

Proceso para Obtener Datos de Entrenamiento

FLUX LoRA Training Data

Ejemplo de Datos de Entrenamiento

FLUX LoRA Training Data

También puede recopilar su propio conjunto de datos según sus necesidades específicas——El Entrenamiento FLUX LoRA es flexible y funciona con varios tipos de datos.

2. El Proceso de Entrenamiento FLUX LoRA

El flujo de trabajo de Entrenamiento FLUX LoRA consta de varios nodos clave que trabajan juntos para entrenar y validar su modelo. Aquí hay una visión general detallada de los principales nodos, separados en tres partes: Conjunto de Datos, Configuración e Inicio, y Entrenamiento.

2.1. Configurar Conjuntos de Datos para el Entrenamiento FLUX LoRA

La sección del Conjunto de Datos consta de dos nodos esenciales que le ayudan a configurar y personalizar sus datos de entrenamiento: TrainDatasetGeneralConfig y TrainDatasetAdd.

2.1.1. TrainDatasetGeneralConfig

FLUX LoRA Training: TrainDatasetGeneralConfig

El nodo TrainDatasetGeneralConfig es donde define la configuración general para su conjunto de datos de entrenamiento en el Entrenamiento FLUX LoRA. Este nodo le da control sobre varios aspectos de la augmentación y preprocesamiento de datos. Por ejemplo, puede elegir habilitar o deshabilitar la augmentación de color, lo que puede ayudar a mejorar la capacidad del modelo para generalizar a través de diferentes variaciones de color. De manera similar, puede activar la augmentación de volteo para voltear imágenes horizontalmente al azar, proporcionando muestras de entrenamiento más diversas. Además, tiene la opción de barajar los subtítulos asociados con cada imagen, introduciendo aleatoriedad y reduciendo el sobreajuste. La tasa de abandono de subtítulos le permite eliminar subtítulos aleatoriamente durante el entrenamiento, lo que puede ayudar al modelo a volverse más robusto ante subtítulos faltantes o incompletos.

2.1.2. TrainDatasetAdd

FLUX LoRA Training: TrainDatasetAdd

El nodo TrainDatasetAdd es donde especifica los detalles de cada conjunto de datos individual para incluir en su Entrenamiento FLUX LoRA.

Directorio de entrada: Ruta del Conjunto de Datos de Entrenamiento

Para aprovechar al máximo este nodo, es importante organizar sus datos de entrenamiento adecuadamente. Al usar el navegador de archivos de RunComfy, coloque los datos de entrenamiento en el directorio /home/user/ComfyUI/input/{file-name}, donde {file-name} es un nombre significativo que asigna a su conjunto de datos.

Una vez que haya colocado sus datos de entrenamiento en el directorio apropiado, necesita proporcionar la ruta a ese directorio en el parámetro image_dir del nodo TrainDatasetAdd. Esto le indica al nodo dónde encontrar sus imágenes de entrenamiento.

FLUX LoRA TrainDatasetAdd: Dataset Path FLUX LoRA TrainDatasetAdd: Dataset Path

Token de Clase

FLUX LoRA TrainDatasetAdd: Class Token

Si su conjunto de datos se beneficia del uso de tokens de clase específicos o palabras clave, puede ingresarlos en el parámetro class_tokens. Los tokens de clase son palabras o frases especiales que se anteponen a cada subtítulo y ayudan a guiar el proceso de generación del modelo. Por ejemplo, si está entrenando en un conjunto de datos de varias especies de animales, podría usar tokens de clase como "dog", "cat" o "bird" para indicar el animal deseado en las imágenes generadas. Cuando use estos tokens de clase en sus indicaciones más adelante, puede controlar qué aspectos específicos quiere que el modelo genere.

Establecer la resolución (ancho y alto), tamaño del lote

Además de los parámetros image_dir y class_tokens, el nodo TrainDatasetAdd proporciona varias otras opciones para ajustar finamente su conjunto de datos. Puede establecer la resolución (ancho y alto) de las imágenes, especificar el tamaño del lote para el entrenamiento y determinar el número de veces que el conjunto de datos debe repetirse por época.

Múltiples conjuntos de datos

FLUX LoRA TrainDatasetAdd: Multiple datasets

Una de las características poderosas del Entrenamiento FLUX LoRA es la capacidad de combinar múltiples conjuntos de datos sin problemas. En el flujo de trabajo de Entrenamiento FLUX LoRA, hay tres nodos TrainDatasetAdd conectados en secuencia. Cada nodo representa un conjunto de datos distinto con su propia configuración única. Al vincular estos nodos juntos, puede crear un conjunto de entrenamiento rico y diverso que incorpore imágenes y subtítulos de varias fuentes.

Para ilustrar esto, consideremos un escenario donde tiene tres conjuntos de datos separados: uno para gatos, otro para perros y otro para osos. Puede configurar tres nodos TrainDatasetAdd, cada uno dedicado a uno de estos conjuntos de datos. En el primer nodo, especificaría la ruta al conjunto de datos de "cats" en el parámetro image_dir, establecería el class token en "cat" y ajustaría otros parámetros como resolución y tamaño del lote según sus necesidades. De manera similar, configuraría los nodos segundo y tercero para los conjuntos de datos de "dogs" y "bears", respectivamente.

Este enfoque permite que el proceso de Entrenamiento FLUX LoRA aproveche una gama diversa de imágenes, mejorando la capacidad del modelo para generalizar a través de diferentes categorías.

Ejemplo

En nuestro ejemplo, usamos solo un conjunto de datos para entrenar el modelo, así que habilitamos un nodo TrainDatasetAdd y pasamos por alto los otros dos. Aquí está cómo puede configurarlo:

FLUX LoRA TrainDatasetAdd: Multiple datasets

2.2. Configuración e Inicialización

La sección de Configuración e Inicialización es donde configura los componentes y parámetros clave para el Entrenamiento FLUX LoRA. Esta sección incluye varios nodos esenciales que trabajan juntos para configurar su entorno de entrenamiento.

2.2.1. FluxTrainModelSelect

FLUX LoRA Training: FluxTrainModelSelect

Primero, tiene el nodo FluxTrainModelSelect, que es responsable de seleccionar los modelos FLUX que se utilizarán durante el Entrenamiento FLUX LoRA. Este nodo le permite especificar las rutas a cuatro modelos críticos: el transformador, VAE (Autoencoder Variacional), CLIP_L (Preentrenamiento de Lenguaje-Imagen Contrastivo) y T5 (Transformador de Transferencia de Texto a Texto). Estos modelos forman la columna vertebral del proceso de entrenamiento FLUX, y todos han sido configurados en la plataforma RunComfy.

2.2.2. OptimizerConfig

FLUX LoRA Training: OptimizerConfig

El nodo OptimizerConfig es crucial para configurar el optimizador dentro del Entrenamiento FLUX LoRA, que determina cómo se actualizan los parámetros del modelo durante el entrenamiento. Puede elegir el tipo de optimizador (p. ej., AdamW, CAME), establecer la norma máxima del gradiente para el recorte de gradiente para evitar gradientes explosivos y seleccionar el programador de tasa de aprendizaje (p. ej., constante, enfriamiento cosenoidal). Además, puede ajustar parámetros específicos del optimizador como los pasos de calentamiento y la potencia del programador, y proporcionar argumentos adicionales para una mayor personalización.

Si prefiere el optimizador Adafactor, conocido por su eficiencia de memoria y capacidad para manejar modelos grandes, puede usar el nodo OptimizerConfigAdafactor en su lugar.

2.2.3. InitFluxLoRATraining

FLUX LoRA Training: InitFluxLoRATraining

El nodo InitFluxLoRATraining es el centro donde convergen todos los componentes esenciales para iniciar el proceso de Entrenamiento FLUX LoRA.

Directorio de salida: Ruta FLUX LoRA

Una de las cosas clave que necesitará especificar en el nodo InitFluxLoRATraining es el directorio de salida, donde se guardará su modelo entrenado. En la plataforma RunComfy, puede elegir /home/user/ComfyUI/output/{file_name} como la ubicación para su salida. Una vez que el entrenamiento esté completo, podrá verlo en el navegador de archivos.

FLUX LoRA InitFluxLoRATraining: FLUX LoRA Path FLUX LoRA InitFluxLoRATraining: FLUX LoRA Path

Dimensiones de la red y tasas de aprendizaje

A continuación, querrá establecer las dimensiones de la red y las tasas de aprendizaje. Las dimensiones de la red determinan el tamaño y la complejidad de su red LoRA, mientras que las tasas de aprendizaje controlan qué tan rápido su modelo aprende y se adapta.

Máximos pasos de entrenamiento

Otro parámetro importante a considerar es el max_train_steps. Determina cuánto tiempo desea que dure el proceso de entrenamiento, o en otras palabras, cuántos pasos desea que dé su modelo antes de que esté completamente listo. Puede ajustar este valor según sus necesidades específicas y el tamaño de su conjunto de datos. Se trata de encontrar ese punto óptimo donde su modelo ha aprendido lo suficiente como para producir resultados impresionantes.

2.3.4. FluxTrainValidationSettings

FLUX LoRA Training: FluxTrainValidationSettings

Finalmente, el nodo FluxTrainValidationSettings le permite configurar los ajustes de validación para evaluar el rendimiento de su modelo durante el proceso de Entrenamiento FLUX LoRA. Puede establecer el número de pasos de validación, el tamaño de la imagen, la escala de guía y la semilla para la reproducibilidad. Además, puede elegir el método de muestreo de pasos de tiempo y ajustar los parámetros de escala y desplazamiento sigmoidal para controlar la programación de pasos de tiempo y mejorar la calidad de las imágenes generadas.

3. Entrenar

La sección de Entrenar del Entrenamiento FLUX LoRA es donde sucede la magia. Está dividida en cuatro partes: Train_01, Train_02, Train_03 y Train_04. Cada una de estas partes representa una etapa diferente en el proceso de Entrenamiento FLUX LoRA, permitiéndole refinar y mejorar gradualmente su modelo.

3.1. Train_01

FLUX LoRA Training

Comencemos con Train_01. Aquí es donde tiene lugar el bucle de entrenamiento inicial. La estrella de esta sección es el nodo FluxTrainLoop, que es responsable de ejecutar el bucle de entrenamiento durante un número especificado de pasos. En este ejemplo, lo hemos establecido en 250 pasos, pero puede ajustar esto según sus necesidades. Una vez que el bucle de entrenamiento esté completo, el modelo entrenado se pasa al nodo FluxTrainSave, que guarda el modelo a intervalos regulares. Esto asegura que tenga puntos de control de su modelo en diferentes etapas del entrenamiento, lo que puede ser útil para rastrear el progreso y recuperarse de cualquier interrupción inesperada.

Pero entrenar no se trata solo de guardar el modelo. También necesitamos validar su rendimiento para ver qué tan bien está funcionando. Ahí es donde entra el nodo FluxTrainValidate. Toma el modelo entrenado y lo pone a prueba usando un conjunto de datos de validación. Este conjunto de datos es separado de los datos de entrenamiento y ayuda a evaluar qué tan bien el modelo se generaliza a ejemplos no vistos. El nodo FluxTrainValidate genera imágenes de muestra basadas en los datos de validación, dándole una representación visual de la salida del modelo en esta etapa.

Para mantener un ojo en el progreso del entrenamiento, tenemos el nodo VisualizeLoss. Este útil nodo visualiza la pérdida de entrenamiento a lo largo del tiempo, permitiéndole ver qué tan bien está aprendiendo el modelo y si está convergiendo hacia una buena solución. Es como tener un entrenador personal que rastrea su progreso y le ayuda a mantenerse en el camino.

3.2. Train_02, Train_03, Train_04

En Train_02, continuando desde Train_01 en el Entrenamiento FLUX LoRA, la salida se sigue entrenando durante un número adicional de pasos especificado (p. ej., 250 pasos). Train_03 y Train_04 siguen un patrón similar, extendiendo el entrenamiento con conexiones actualizadas para una progresión suave. Cada etapa producejson la salida se sigue entrenando durante un número adicional de pasos especificado (p. ej., 250 pasos). Train_03 y Train_04 siguen un patrón similar, extendiendo el entrenamiento con conexiones actualizadas para una progresión suave. Cada etapa produce un modelo FLUX LoRA, lo que le permite probar y comparar el rendimiento.

Ejemplo

En nuestro ejemplo, hemos elegido usar solo Train_01 y Train_02, cada uno funcionando durante 250 pasos. Hemos pasado por alto Train_03 y Train_04 por ahora. Pero siéntase libre de experimentar y ajustar el número de secciones de entrenamiento y pasos según sus necesidades específicas y recursos.

FLUX LoRA Training

4. Cómo y Dónde Usar los Modelos FLUX y FLUX LoRA

Una vez que tenga el modelo FLUX LoRA, puede incorporarlo en el . Reemplace el modelo LoRA existente con su modelo entrenado, luego pruebe los resultados para evaluar su rendimiento.

Ejemplo

En nuestro ejemplo, usamos el flujo de trabajo FLUX LoRA para generar más imágenes del influencer aplicando el modelo FLUX LoRA y observando su rendimiento.

FLUX LoRA Training

Licencia

Ver archivos de licencia:

El Modelo FLUX.1 [dev] está licenciado por Black Forest Labs. Inc. bajo la Licencia No Comercial FLUX.1 [dev]. Copyright Black Forest Labs. Inc.

EN NINGÚN CASO BLACK FOREST LABS, INC. SERÁ RESPONSABLE DE NINGUNA RECLAMACIÓN, DAÑOS U OTRA RESPONSABILIDAD, YA SEA EN UNA ACCIÓN DE CONTRATO, AGRAVIO O DE OTRO TIPO, QUE SURJA DE, O EN CONEXIÓN CON EL USO DE ESTE MODELO.

Más tutoriales de ComfyUI

¿Quiere más flujos de trabajo de ComfyUI?

RunComfy

© Derechos de autor 2024 RunComfy. Todos los derechos reservados.

RunComfy es la principal ComfyUI plataforma, ofreciendo ComfyUI en línea entorno y servicios, junto con flujos de trabajo de ComfyUI con impresionantes imágenes.