ComfyUI  >  Fluxos de Trabalho  >  Treinamento FLUX LoRA

Treinamento FLUX LoRA

Este fluxo de trabalho ComfyUI FLUX LoRA Training permite que você ajuste modelos FLUX pré-existentes com seus próprios conjuntos de dados. Com este guia detalhado, você aprenderá como preparar seus dados de treinamento, configurar o fluxo de trabalho, configurar parâmetros essenciais e executar o processo de treinamento. Desbloqueie todo o potencial dos modelos de IA FLUX e crie saídas personalizadas que se alinham perfeitamente com sua visão.

ComfyUI FLUX LoRA Training Fluxo de Trabalho

ComfyUI FLUX LoRA Training
Deseja executar este fluxo de trabalho?
  • Fluxos de trabalho totalmente operacionais
  • Sem nós ou modelos ausentes
  • Nenhuma configuração manual necessária
  • Apresenta visuais impressionantes

ComfyUI FLUX LoRA Training Exemplos

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

ComfyUI FLUX LoRA Training Descrição

FLUX LoRA ganhou imensa popularidade na comunidade de IA, particularmente entre aqueles que buscam ajustar modelos de IA com seus próprios conjuntos de dados. Esta abordagem permite que você adapte facilmente modelos FLUX pré-existentes aos seus conjuntos de dados únicos, tornando-o altamente personalizável e eficiente para uma ampla gama de empreendimentos criativos. Se você já está familiarizado com ComfyUI, usar o fluxo de trabalho ComfyUI FLUX LoRA Training para treinar seu modelo FLUX LoRA será fácil. O fluxo de trabalho e os nós relacionados foram criados por Kijai, então grandes agradecimentos a ele por sua contribuição! Confira para mais informações.

Tutorial de Treinamento ComfyUI FLUX LoRA

O fluxo de trabalho ComfyUI FLUX LoRA Training é um processo poderoso projetado para treinar modelos FLUX LoRA. Treinar com ComfyUI oferece várias vantagens, especialmente para usuários já familiarizados com sua interface. Com o FLUX LoRA Training, você pode usar os mesmos modelos empregados para inferência, garantindo que não haja problemas de compatibilidade ao trabalhar no mesmo ambiente Python. Além disso, você pode construir fluxos de trabalho para comparar diferentes configurações, melhorando seu processo de treinamento. Este tutorial irá guiá-lo pelos passos para configurar e usar o FLUX LoRA Training no ComfyUI.

Cobriremos:

  1. Preparando Seu Conjunto de Dados para o FLUX LoRA Training
  2. O Processo de Treinamento FLUX LoRA
  3. Executando o FLUX LoRA Training
  4. Como e Onde Usar os Modelos FLUX e FLUX LoRA

1. Preparando Seu Conjunto de Dados para o FLUX LoRA Training

Ao preparar seus dados de treinamento para o FLUX LoRA Training, é essencial ter imagens de alta qualidade para seu assunto alvo.

Neste exemplo, estamos treinando um modelo FLUX LoRA para gerar imagens de um influenciador específico. Para isso, você precisará de um conjunto de imagens de alta qualidade do influenciador em várias poses e configurações. Uma maneira conveniente de reunir essas imagens é usando o , que facilita a geração de uma coleção de imagens que mostram o mesmo personagem em diferentes poses, mantendo sua aparência consistente. Para nosso conjunto de dados de treinamento, selecionamos cinco imagens de alta qualidade do influenciador em várias poses e configurações, garantindo que o conjunto de dados seja robusto o suficiente para o FLUX LoRA Training aprender os detalhes intrincados necessários para produzir saídas consistentes e precisas.

Processo para Obter Dados de Treinamento

FLUX LoRA Training Data

Exemplo de Dados de Treinamento

FLUX LoRA Training Data

Você também pode coletar seu próprio conjunto de dados com base em suas necessidades específicas——FLUX LoRA Training é flexível e funciona com vários tipos de dados.

2. O Processo de Treinamento FLUX LoRA

O fluxo de trabalho FLUX LoRA Training consiste em vários nós principais que trabalham juntos para treinar e validar seu modelo. Aqui está uma visão detalhada dos principais nós, separados em três partes: Conjunto de Dados, Configurações e Inicialização, e Treinamento.

2.1. Definir Conjuntos de Dados para o FLUX LoRA Training

A seção de Conjunto de Dados consiste em dois nós essenciais que ajudam a configurar e personalizar seus dados de treinamento: TrainDatasetGeneralConfig e TrainDatasetAdd.

2.1.1. TrainDatasetGeneralConfig

FLUX LoRA Training: TrainDatasetGeneralConfig

O nó TrainDatasetGeneralConfig é onde você define as configurações gerais para seu conjunto de dados de treinamento no FLUX LoRA Training. Este nó dá a você controle sobre vários aspectos da aumento e pré-processamento dos dados. Por exemplo, você pode optar por habilitar ou desabilitar a aumento de cor, o que pode ajudar a melhorar a capacidade do modelo de generalizar em diferentes variações de cor. Da mesma forma, você pode alternar a aumento de flip para inverter aleatoriamente as imagens horizontalmente, fornecendo amostras de treinamento mais diversas. Além disso, você tem a opção de embaralhar as legendas associadas a cada imagem, introduzindo aleatoriedade e reduzindo o overfitting. A taxa de queda de legenda permite que você descarte legendas aleatoriamente durante o treinamento, o que pode ajudar o modelo a se tornar mais robusto a legendas ausentes ou incompletas.

2.1.2. TrainDatasetAdd

FLUX LoRA Training: TrainDatasetAdd

O nó TrainDatasetAdd é onde você especifica os detalhes de cada conjunto de dados individual a ser incluído no seu FLUX LoRA Training.

Diretório de entrada: Caminho do Conjunto de Dados de Treinamento

Para aproveitar ao máximo este nó, é importante organizar seus dados de treinamento adequadamente. Ao usar o navegador de arquivos da RunComfy, coloque os dados de treinamento no diretório /home/user/ComfyUI/input/{file-name}, onde {file-name} é um nome significativo que você atribui ao seu conjunto de dados.

Depois de colocar seus dados de treinamento no diretório apropriado, você precisa fornecer o caminho para esse diretório no parâmetro image_dir do nó TrainDatasetAdd. Isso diz ao nó onde encontrar suas imagens de treinamento.

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

Token de Classe

FLUX LoRA TrainDatasetAdd: Class Token

Se o seu conjunto de dados se beneficia do uso de tokens de classe específicos ou palavras de gatilho, você pode inseri-los no parâmetro class_tokens. Tokens de classe são palavras ou frases especiais que são prefixadas a cada legenda e ajudam a guiar o processo de geração do modelo. Por exemplo, se você estiver treinando em um conjunto de dados de várias espécies de animais, pode usar tokens de classe como "dog", "cat" ou "bird" para indicar o animal desejado nas imagens geradas. Quando você usar esses tokens de classe em seus prompts posteriormente, poderá controlar quais aspectos específicos deseja que o modelo gere.

Defina a resolução (largura e altura), tamanho do lote

Além dos parâmetros image_dir e class_tokens, o nó TrainDatasetAdd fornece várias outras opções para ajustar seu conjunto de dados. Você pode definir a resolução (largura e altura) das imagens, especificar o tamanho do lote para o treinamento e determinar o número de vezes que o conjunto de dados deve ser repetido por época.

Vários conjuntos de dados

FLUX LoRA TrainDatasetAdd: Multiple datasets

Uma das características poderosas do FLUX LoRA Training é a capacidade de combinar vários conjuntos de dados de forma contínua. No fluxo de trabalho FLUX LoRA Training, há três nós TrainDatasetAdd conectados em sequência. Cada nó representa um conjunto de dados distinto com suas próprias configurações exclusivas. Ligando esses nós, você pode criar um conjunto de treinamento rico e diversificado que incorpora imagens e legendas de várias fontes.

Para ilustrar isso, vamos considerar um cenário onde você tem três conjuntos de dados separados: um para gatos, um para cães e outro para ursos. Você pode configurar três nós TrainDatasetAdd, cada um dedicado a um desses conjuntos de dados. No primeiro nó, você especificaria o caminho para o conjunto de dados "gatos" no parâmetro image_dir, definiria o class token como "cat" e ajustaria outros parâmetros, como resolução e tamanho do lote, conforme suas necessidades. Da mesma forma, você configuraria os nós segundo e terceiro para os conjuntos de dados "cães" e "ursos", respectivamente.

Essa abordagem permite que o processo de FLUX LoRA Training aproveite uma variedade de imagens, melhorando a capacidade do modelo de generalizar em diferentes categorias.

Exemplo

Em nosso exemplo, usamos apenas um conjunto de dados para treinar o modelo, então habilitamos um nó TrainDatasetAdd e ignoramos os outros dois. Veja como você pode configurá-lo:

FLUX LoRA TrainDatasetAdd: Multiple datasets

2.2. Configurações e Inicialização

A seção Configurações e Inicialização é onde você configura os componentes e parâmetros chave para o FLUX LoRA Training. Esta seção inclui vários nós essenciais que trabalham juntos para configurar seu ambiente de treinamento.

2.2.1. FluxTrainModelSelect

FLUX LoRA Training: FluxTrainModelSelect

Primeiro, você tem o nó FluxTrainModelSelect, que é responsável por selecionar os modelos FLUX que serão usados durante o FLUX LoRA Training. Este nó permite que você especifique os caminhos para quatro modelos críticos: o transformer, VAE (Variational Autoencoder), CLIP_L (Contrastive Language-Image Pre-training), e T5 (Text-to-Text Transfer Transformer). Esses modelos formam a espinha dorsal do processo de treinamento FLUX, e todos foram configurados na plataforma RunComfy.

2.2.2. OptimizerConfig

FLUX LoRA Training: OptimizerConfig

O nó OptimizerConfig é crucial para configurar o otimizador dentro do FLUX LoRA Training, que determina como os parâmetros do modelo são atualizados durante o treinamento. Você pode escolher o tipo de otimizador (e.g., AdamW, CAME), definir a norma máxima do gradiente para clipping de gradiente para evitar gradientes explosivos, e selecionar o scheduler de taxa de aprendizado (e.g., constante, cosseno decaimento). Além disso, você pode ajustar parâmetros específicos do otimizador, como passos de warmup e potência do scheduler, e fornecer argumentos extras para personalização adicional.

Se você preferir o otimizador Adafactor, conhecido por sua eficiência de memória e capacidade de lidar com modelos grandes, você pode usar o nó OptimizerConfigAdafactor em vez disso.

2.2.3. InitFluxLoRATraining

FLUX LoRA Training: InitFluxLoRATraining

O nó InitFluxLoRATraining é o hub central onde todos os componentes essenciais convergem para iniciar o processo de FLUX LoRA Training.

Diretório de saída: Caminho do FLUX LoRA

Uma das principais coisas que você precisará especificar no nó InitFluxLoRATraining é o diretório de saída, onde seu modelo treinado será salvo. Na plataforma RunComfy, você pode escolher /home/user/ComfyUI/output/{file_name} como a localização para sua saída. Uma vez que o treinamento esteja completo, você poderá visualizá-lo no navegador de arquivos.

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

Dimensões da rede e taxas de aprendizado

Em seguida, você vai querer definir as dimensões da rede e as taxas de aprendizado. As dimensões da rede determinam o tamanho e a complexidade da sua rede LoRA, enquanto as taxas de aprendizado controlam a rapidez com que seu modelo aprende e se adapta.

Máx passos de treinamento

Outro parâmetro importante a considerar é o max_train_steps. Ele determina quanto tempo você quer que o processo de treinamento dure, ou em outras palavras, quantos passos você quer que seu modelo dê antes de estar totalmente pronto. Você pode ajustar esse valor com base em suas necessidades específicas e no tamanho do seu conjunto de dados. É tudo sobre encontrar aquele ponto ideal onde seu modelo aprendeu o suficiente para produzir saídas de alta qualidade!

2.3.4. FluxTrainValidationSettings

FLUX LoRA Training: FluxTrainValidationSettings

Finalmente, o nó FluxTrainValidationSettings permite que você configure as configurações de validação para avaliar o desempenho do seu modelo durante o processo de FLUX LoRA Training. Você pode definir o número de passos de validação, tamanho da imagem, escala de orientação e semente para reprodutibilidade. Além disso, você pode escolher o método de amostragem de timestep e ajustar os parâmetros de escala e deslocamento sigmoid para controlar o agendamento de timestep e melhorar a qualidade das imagens geradas.

3. Treinamento

A seção de Treinamento do FLUX LoRA Training é onde a mágica acontece. É dividida em quatro partes: Train_01, Train_02, Train_03 e Train_04. Cada uma dessas partes representa um estágio diferente no processo de FLUX LoRA Training, permitindo que você refine e melhore gradualmente seu modelo.

3.1. Train_01

FLUX LoRA Training

Vamos começar com Train_01. Este é o local onde o loop de treinamento inicial ocorre. A estrela desta seção é o nó FluxTrainLoop, que é responsável por executar o loop de treinamento por um número especificado de passos. Neste exemplo, definimos para 250 passos, mas você pode ajustar isso com base em suas necessidades. Uma vez que o loop de treinamento esteja completo, o modelo treinado é passado para o nó FluxTrainSave, que salva o modelo em intervalos regulares. Isso garante que você tenha checkpoints do seu modelo em diferentes estágios de treinamento, o que pode ser útil para acompanhar o progresso e recuperar de qualquer interrupção inesperada.

Mas treinar não é apenas sobre salvar o modelo. Também precisamos validar seu desempenho para ver quão bem ele está se saindo. É aí que entra o nó FluxTrainValidate. Ele pega o modelo treinado e o coloca à prova usando um conjunto de dados de validação. Este conjunto de dados é separado dos dados de treinamento e ajuda a avaliar quão bem o modelo generaliza para exemplos não vistos. O nó FluxTrainValidate gera imagens de amostra com base nos dados de validação, dando a você uma representação visual da saída do modelo nesta fase.

Para acompanhar o progresso do treinamento, temos o nó VisualizeLoss. Este nó prático visualiza a perda de treinamento ao longo do tempo, permitindo que você veja quão bem o modelo está aprendendo e se está convergindo para uma boa solução. É como ter um personal trainer que acompanha seu progresso e ajuda você a se manter no caminho certo.

3.2. Train_02, Train_03, Train_04

Em Train_02, continuando a partir de Train_01 no FLUX LoRA Training, a saída é ainda mais treinada por um número adicional especificado de passos (e.g., 250 passos). Train_03 e Train_04 seguem um padrão semelhante, estendendo o treinamento com conexões atualizadas para uma progressão suave. Cada estágio produz um modelo FLUX LoRA, permitindo que você teste e compare o desempenho.

Exemplo

Em nosso exemplo, escolhemos usar apenas Train_01 e Train_02, cada um rodando por 250 passos. Ignoramos Train_03 e Train_04 por enquanto. Mas sinta-se à vontade para experimentar e ajustar o número de seções dejson treinamento e passos com base em suas necessidades específicas e recursos.

FLUX LoRA Training

4. Como e Onde Usar os Modelos FLUX e FLUX LoRA

Uma vez que você tenha o modelo FLUX LoRA, você pode incorporá-lo ao . Substitua o modelo LoRA existente pelo seu modelo treinado e, em seguida, teste os resultados para avaliar seu desempenho.

Exemplo

Em nosso exemplo, usamos o fluxo de trabalho FLUX LoRA para gerar mais imagens do influenciador aplicando o modelo FLUX LoRA e observando seu desempenho.

FLUX LoRA Training

Licença

Ver arquivos de licença:

O Modelo FLUX.1 [dev] é licenciado pela Black Forest Labs. Inc. sob a FLUX.1 [dev] Licença Não-Comercial. Direitos Autorais Black Forest Labs. Inc.

EM NENHUM CASO A BLACK FOREST LABS, INC. SERÁ RESPONSÁVEL POR QUALQUER REIVINDICAÇÃO, DANOS OU OUTRA RESPONSABILIDADE, SEJA EM UMA AÇÃO DE CONTRATO, DELITO OU DE OUTRA FORMA, DECORRENTE DE, OU EM CONEXÃO COM O USO DESTE MODELO.

Mais Tutoriais do ComfyUI

Deseja Mais Fluxos de Trabalho do ComfyUI?

RunComfy

© Copyright 2024 RunComfy. Todos os Direitos Reservados.

RunComfy é a principal ComfyUI plataforma, oferecendo ComfyUI online ambiente e serviços, juntamente com fluxos de trabalho do ComfyUI apresentando visuais impressionantes.