ComfyUI  >  Arbejdsgange  >  FLUX LoRA Træning

FLUX LoRA Træning

Denne ComfyUI FLUX LoRA Træningsarbejdsgang giver dig mulighed for at finjustere eksisterende FLUX-modeller med dine egne datasæt. Med denne detaljerede guide vil du lære, hvordan du forbereder dine træningsdata, opsætter arbejdsgangen, konfigurerer vigtige parametre og udfører træningsprocessen. Lås op for det fulde potentiale af FLUX AI-modeller og skab skræddersyede output, der passer perfekt til din vision.

ComfyUI FLUX LoRA Training Arbejdsgang

ComfyUI FLUX LoRA Training
Vil du køre denne arbejdsgang?
  • Fuldt operationelle arbejdsgange
  • Ingen manglende noder eller modeller
  • Ingen manuelle opsætninger krævet
  • Funktioner fantastiske visuals

ComfyUI FLUX LoRA Training Eksempler

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

ComfyUI FLUX LoRA Training Beskrivelse

FLUX LoRA har opnået stor popularitet i AI-fællesskabet, især blandt dem, der ønsker at finjustere AI-modeller med deres egne datasæt. Denne tilgang giver dig mulighed for let at tilpasse eksisterende FLUX-modeller til dine unikke datasæt, hvilket gør det meget tilpasningsdygtigt og effektivt til en bred vifte af kreative projekter. Hvis du allerede er bekendt med ComfyUI, vil det være en leg at bruge ComfyUI FLUX LoRA Træningsarbejdsgangen til at træne din FLUX LoRA-model. Arbejdsgangen og de relaterede noder blev skabt af Kijai, så stor tak til ham for hans bidrag! Tjek for mere info.

ComfyUI FLUX LoRA Træningsguide

ComfyUI FLUX LoRA Træningsarbejdsgangen er en kraftfuld proces designet til at træne FLUX LoRA-modeller. Træning med ComfyUI tilbyder flere fordele, især for brugere, der allerede er fortrolige med dens grænseflade. Med FLUX LoRA Træning kan du bruge de samme modeller, der anvendes til inferens, hvilket sikrer, at der ikke er kompatibilitetsproblemer, når du arbejder inden for det samme Python-miljø. Derudover kan du bygge arbejdsgange til at sammenligne forskellige indstillinger, hvilket forbedrer din træningsproces. Denne tutorial vil guide dig gennem trinene til at opsætte og bruge FLUX LoRA Træning i ComfyUI.

Vi vil dække:

  1. Forberedelse af dit datasæt til FLUX LoRA Træning
  2. FLUX LoRA Træningsprocessen
  3. Udførelse af FLUX LoRA Træning
  4. Hvordan og hvor man bruger FLUX og FLUX LoRA-modellerne

1. Forberedelse af dit datasæt til FLUX LoRA Træning

Når du forbereder dine træningsdata til FLUX LoRA Træning, er det vigtigt at have billeder af høj kvalitet til dit målobjekt.

I dette eksempel træner vi en FLUX LoRA-model til at generere billeder af en bestemt influencer. Til dette skal du bruge et sæt billeder af høj kvalitet af influenceren i forskellige positurer og omgivelser. En praktisk måde at samle disse billeder på er ved at bruge , som gør det nemt at generere en samling af billeder, der viser den samme karakter i forskellige positurer, mens deres udseende forbliver konsistent. Til vores træningsdatasæt har vi valgt fem billeder af høj kvalitet af influenceren i forskellige positurer og omgivelser for at sikre, at datasættet er robust nok til, at FLUX LoRA Træning kan lære de detaljer, der er nødvendige for at producere konsistente og præcise output.

Proces for at skaffe træningsdata

FLUX LoRA Training Data

Træningsdataeksempel

FLUX LoRA Training Data

Du kan også samle dit eget datasæt baseret på dine specifikke behov——FLUX LoRA Træning er fleksibel og fungerer med forskellige typer data.

2. FLUX LoRA Træningsprocessen

FLUX LoRA Træningsarbejdsgangen består af flere centrale noder, der arbejder sammen for at træne og validere din model. Her er en detaljeret oversigt over de vigtigste noder, opdelt i tre dele: Datasæt, Indstillinger og Init, og Træning.

2.1. Indstil datasæt til FLUX LoRA Træning

Datasætafdelingen består af to væsentlige noder, der hjælper dig med at konfigurere og tilpasse dine træningsdata: TrainDatasetGeneralConfig og TrainDatasetAdd.

2.1.1. TrainDatasetGeneralConfig

FLUX LoRA Training: TrainDatasetGeneralConfig

TrainDatasetGeneralConfig-noden er, hvor du definerer de overordnede indstillinger for dit træningsdatasæt i FLUX LoRA Træning. Denne node giver dig kontrol over forskellige aspekter af dataforøgelse og forbehandling. For eksempel kan du vælge at aktivere eller deaktivere farveforøgelse, som kan forbedre modellens evne til at generalisere på tværs af forskellige farvevariationer. På samme måde kan du slå flipforøgelse til for tilfældigt at vende billeder vandret, hvilket giver mere varierede træningsprøver. Derudover har du mulighed for at blande billedteksterne tilknyttet hvert billede, hvilket introducerer tilfældighed og reducerer overfitting. Billedtekst dropout-rate giver dig mulighed for tilfældigt at droppe billedtekster under træning, hvilket kan hjælpe modellen med at blive mere robust over for manglende eller ufuldstændige billedtekster.

2.1.2. TrainDatasetAdd

FLUX LoRA Training: TrainDatasetAdd

TrainDatasetAdd-noden er, hvor du specificerer detaljerne for hvert enkelt datasæt, der skal inkluderes i din FLUX LoRA Træning.

Input directory: Train Dataset Path

For at få mest muligt ud af denne node er det vigtigt at organisere dine træningsdata korrekt. Når du bruger RunComfy’s filbrowser, skal du placere træningsdataene i /home/user/ComfyUI/input/{file-name}-mappen, hvor {file-name} er et meningsfuldt navn, du tildeler dit datasæt.

Når du har placeret dine træningsdata i den relevante mappe, skal du angive stien til den mappe i image_dir-parameteren i TrainDatasetAdd-noden. Dette fortæller noden, hvor den kan finde dine træningsbilleder.

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

Class Token

FLUX LoRA TrainDatasetAdd: Class Token

Hvis dit datasæt drager fordel af at bruge specifikke klasse-token eller triggerord, kan du indtaste dem i class_tokens-parameteren. Klasse-token er særlige ord eller sætninger, der foranstilles hver billedtekst og hjælper med at styre modellens genereringsproces. For eksempel, hvis du træner på et datasæt af forskellige dyrearter, kan du bruge klasse-token som "dog", "cat" eller "bird" for at angive det ønskede dyr i de genererede billeder. Når du senere bruger disse klasse-token i dine prompts, kan du kontrollere, hvilke specifikke aspekter du vil have modellen til at generere.

Indstil opløsning (bredde og højde), batchstørrelse

Ud over image_dir- og class_tokens-parametrene giver TrainDatasetAdd-noden flere andre muligheder for at finjustere dit datasæt. Du kan indstille opløsningen (bredde og højde) af billederne, angive batchstørrelsen til træning og bestemme, hvor mange gange datasættet skal gentages pr. epoke.

Flere datasæt

FLUX LoRA TrainDatasetAdd: Multiple datasets

En af de kraftfulde funktioner ved FLUX LoRA Træning er evnen til at kombinere flere datasæt problemfrit. I FLUX LoRA Træningsarbejdsgangen er der tre TrainDatasetAdd-noder forbundet i rækkefølge. Hver node repræsenterer et særskilt datasæt med sine egne unikke indstillinger. Ved at forbinde disse noder sammen kan du skabe et rigt og varieret træningssæt, der inkorporerer billeder og billedtekster fra forskellige kilder.

For at illustrere dette, lad os overveje et scenarie, hvor du har tre separate datasæt: et til katte, et til hunde og et andet til bjørne. Du kan opsætte tre TrainDatasetAdd-noder, hver dedikeret til et af disse datasæt. I den første node vil du angive stien til "katte"-datasættet i image_dir-parameteren, indstille class token til "cat" og justere andre parametre som opløsning og batchstørrelse for at passe til dine behov. Tilsvarende vil du konfigurere den anden og tredje node til henholdsvis "hunde"- og "bjørne"-datasættene.

Denne tilgang giver FLUX LoRA Træningsprocessen mulighed for at udnytte en bred vifte af billeder, hvilket forbedrer modellens evne til at generalisere på tværs af forskellige kategorier.

Eksempel

I vores eksempel bruger vi kun ét datasæt til at træne modellen, så vi aktiverer en TrainDatasetAdd-node og omgår de andre to. Her er, hvordan du kan sætte det op:

FLUX LoRA TrainDatasetAdd: Multiple datasets

2.2. Indstillinger og Initialisering

Indstillinger og Initialisering-sektionen er, hvor du konfigurerer de vigtigste komponenter og parametre til FLUX LoRA Træning. Denne sektion inkluderer flere væsentlige noder, der arbejder sammen for at opsætte dit træningsmiljø.

2.2.1. FluxTrainModelSelect

FLUX LoRA Training: FluxTrainModelSelect

Først har du FluxTrainModelSelect-noden, som er ansvarlig for at vælge de FLUX-modeller, der skal bruges under FLUX LoRA Træning. Denne node giver dig mulighed for at angive stierne til fire kritiske modeller: transformer, VAE (Variational Autoencoder), CLIP_L (Contrastive Language-Image Pre-training) og T5 (Text-to-Text Transfer Transformer). Disse modeller udgør rygraden i FLUX-træningsprocessen, og alle er blevet opsat på RunComfy-platformen.

2.2.2. OptimizerConfig

FLUX LoRA Training: OptimizerConfig

OptimizerConfig-noden er afgørende for at opsætte optimeringsenheden i FLUX LoRA Træning, som bestemmer, hvordan modellens parametre opdateres under træning. Du kan vælge optimeringstypen (f.eks. AdamW, CAME), indstille den maksimale gradientnorm til gradientklipning for at forhindre eksploderende gradienter og vælge læringsratens scheduler (f.eks. konstant, cosine annealing). Derudover kan du finjustere optimeringsspecifikke parametre som warmup-trin og scheduler-kraft og angive ekstra argumenter for yderligere tilpasning.

Hvis du foretrækker Adafactor-optimeringsenheden, som er kendt for sin hukommelseseffektivitet og evne til at håndtere store modeller, kan du bruge OptimizerConfigAdafactor-noden i stedet.

2.2.3. InitFluxLoRATraining

FLUX LoRA Training: InitFluxLoRATraining

InitFluxLoRATraining-noden er det centrale knudepunkt, hvor alle de væsentlige komponenter samles for at kickstarte FLUX LoRA Træningsprocessen.

Output directory: FLUX LoRA Path

En af de vigtigste ting, du skal specificere i InitFluxLoRATraining-noden, er outputmappen, hvor din trænede model vil blive gemt. På RunComfy-platformen kan du vælge /home/user/ComfyUI/output/{file_name} som placeringen for din output. Når træningen er fuldført, vil du kunne se den i filbrowseren.

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

Netværksdimensioner og læringsrater

Derefter skal du indstille netværksdimensionerne og læringsraterne. Netværksdimensionerne bestemmer størrelsen og kompleksiteten af dit LoRA-netværk, mens læringsraterne kontrollerer, hvor hurtigt din model lærer og tilpasser sig.

Maksimale træningstrin

En anden vigtig parameter at overveje er max_train_steps. Det bestemmer, hvor længe du ønsker, at træningsprocessen skal køre, eller med andre ord, hvor mange trin du ønsker, at din model skal tage, før den er fuldt bagt. Du kan justere denne værdi baseret på dine specifikke behov og størrelsen af dit datasæt. Det handler om at finde det søde punkt, hvor din model har lært nok til at producere lækre output!

2.3.4. FluxTrainValidationSettings

FLUX LoRA Training: FluxTrainValidationSettings

Endelig giver FluxTrainValidationSettings-noden dig mulighed for at konfigurere valideringsindstillingerne til at evaluere din models præstation under FLUX LoRA Træningsprocessen. Du kan indstille antallet af valideringstrin, billedstørrelse, vejledningsskala og frø for reproducerbarhed. Derudover kan du vælge tidsstegprøvetagningsmetoden og justere sigmoid-skala- og skiftparametrene for at kontrollere tidsstegsplanlægningen og forbedre kvaliteten af de genererede billeder.

3. Træning

Træningssektionen af FLUX LoRA Træning er, hvor magien sker. Den er opdelt i fire dele: Train_01, Train_02, Train_03 og Train_04. Hver af disse dele repræsenterer et andet trin i FLUX LoRA Træningsprocessen, hvilket giver dig mulighed for gradvist at forfine og forbedre din model.

3.1. Train_01

FLUX LoRA Training

Lad os starte med Train_01. Dette er, hvor den indledende træningssløjfe finder sted. Stjernen i denne sektion er FluxTrainLoop-noden, som er ansvarlig for at udføre træningssløjfen i et specificeret antal trin. I dette eksempel har vi sat det til 250 trin, men du kan justere dette baseret på dine behov. Når træningssløjfen er færdig, sendes den trænede model til FluxTrainSave-noden, som gemmer modellen med jævne intervaller. Dette sikrer, at du har checkpoints af din model på forskellige stadier af træningen, hvilket kan være nyttigt til at spore fremskridt og gendanne fra uventede afbrydelser.

Men træning handler ikke kun om at gemme modellen. Vi skal også validere dens præstation for at se, hvor godt den klarer sig. Det er her, FluxTrainValidate-noden kommer ind i billedet. Den tager den trænede model og tester den ved hjælp af et valideringsdatasæt. Dette datasæt er adskilt fra træningsdataene og hjælper med at vurdere, hvor godt modellen generaliserer til usete eksempler. FluxTrainValidate-noden genererer prøvebilleder baseret på valideringsdataene og giver dig en visuel repræsentation af modellens output på dette stadium.

For at holde øje med træningsfremskridtene har vi VisualizeLoss-noden. Denne praktiske node visualiserer træningstabet over tid, så du kan se, hvor godt modellen lærer, og om den konvergerer mod en god løsning. Det er som at have en personlig træner, der holder styr på dine fremskridt og hjælper dig med at forblive på rette spor.

3.2. Train_02, Train_03, Train_04

I Train_02, som fortsætter fra Train_01 i FLUX LoRA Træning, trænes outputtet yderligere i et specificeret antal trin (f.eks. 250 trin). Train_03 og Train_04 følger et lignende mønster og forlænger træningen med opdaterede forbindelser for en jævn progression. Hvert trin outputter en FLUX LoRA-model, hvilket giver dig mulighed for at teste og sammenligne præstationen.

Eksempel

I vores eksempel har vi valgt kun at bruge Train_01 og Train_02, hver kørende i 250 trin. Vi har omgået Train_03 og Train_04 for nu. Men føl dig fri til at eksperimentere og justere antallet af træningssektioner og trin baseret på dine specifikke behov og ressourcer.

FLUX LoRA Training

4. Hvordan og hvor man bruger FLUX og FLUX LoRA-modellerne

Når du har FLUX LoRA-modellen, kan du inkorporere den i . Udskift den eksisterende LoRA-model med din trænede model, og test derefter resultaterne for at evaluere dens præstation.

Eksempel

I vores eksempel bruger vi FLUX LoRA-arbejdsgangen til at generere flere influencer-billeder ved at anvende FLUX LoRA-modellen og observere dens præstation.

FLUX LoRA Training

Licens

Se licensfiler:

FLUX.1 [dev]-modellen er licenseret af Black Forest Labs. Inc. under FLUX.1 [dev] Non-Commercial License. Copyright Black Forest Labs. Inc.

UNDER INGEN OMSTÆNDIGHEDER SKAL BLACK FOREST LABS, INC. VÆRE ANSVARLIG FOR NOGEN KRAV, SKADER ELLER ANDRE ANSVAR, HVAD ENTEN I EN KONTRAKTSHANDLING, TORT ELLER ANDEN, SOM OPSTÅR FRA, UDEN ELLER I FORBINDELSE MED BRUGEN AF DENNE MODEL.

Flere ComfyUI-tutorials

Vil du have flere ComfyUI-arbejdsgange?

RunComfy

© Ophavsret 2024 RunComfy. Alle rettigheder forbeholdes.

RunComfy er den førende ComfyUI platform, der tilbyder ComfyUI online miljø og tjenester, sammen med ComfyUI-arbejdsgange med fantastiske visuals.