🚀 flux-lora-training
This project is a standard PEFT LoRA derived from black-forest-labs/FLUX.1-dev, which is mainly used for text - to - image and image - to - image tasks.
Metadata
Property |
Details |
License |
other |
Base Model |
black-forest-labs/FLUX.1-dev |
Pipeline Tag |
text-to-image |
Inference |
true |
Widget Examples
- Unconditional (blank prompt):
- Negative Prompt: ''
- Output: image
- Specific Prompt:
- Prompt: '(ultra detailed,photo,photograph,best quality,high resolution,4k,8k,photorealistic,Japanese early twenties,(slim) and curvy body,waist,detailed beautiful eyes,super detailed eyes and skins,very beautiful woman:3.0), (Wearing tight short sleeves white (one piece) sailor uniform, blue collar, red neckerchief, dark blue pleated dress, standing in empty classroom,sweet smiling:2.0), long straight hair, standing in empty classroom,'
- Negative Prompt: ''
- Output: image
🚀 Quick Start
Validation Prompt
The main validation prompt used during training was:
(ultra detailed,photo,photograph,best quality,high resolution,4k,8k,photorealistic,Japanese early twenties,(slim) and curvy body,waist,detailed beautiful eyes,super detailed eyes and skins,very beautiful woman:3.0), (Wearing tight short sleeves white (one piece) sailor uniform, blue collar, red neckerchief, dark blue pleated dress, standing in empty classroom,sweet smiling:2.0), long straight hair, standing in empty classroom,
Validation Settings
- CFG:
3.5
- CFG Rescale:
0.0
- Steps:
20
- Sampler:
FlowMatchEulerDiscreteScheduler
- Seed:
42
- Resolution:
1024x1024
- Skip - layer guidance:
Note: The validation settings are not necessarily the same as the training settings.
You can find some example images in the following gallery:
The text encoder was not trained. You may reuse the base model text encoder for inference.
📦 Training Settings
- Training epochs: 92
- Training steps: 2400
- Learning rate: 0.0001
- Learning rate schedule: constant_with_warmup
- Warmup steps: 100
- Max grad value: 1.0
- Effective batch size: 1
- Micro - batch size: 1
- Gradient accumulation steps: 1
- Number of GPUs: 1
- Gradient checkpointing: True
- Prediction type: flow - matching (extra parameters=['flow_schedule_auto_shift', 'shift=0.0', 'flux_guidance_mode=constant', 'flux_guidance_value=1.0', 'flow_matching_loss=compatible', 'flux_lora_target=all+ffs'])
- Optimizer: adamw_bf16
- Trainable parameter precision: Pure BF16
- Base model precision:
no_change
- Caption dropout probability: 0.0%
- LoRA Rank: 16
- LoRA Alpha: None
- LoRA Dropout: 0.1
- LoRA initialisation style: default
📚 Datasets
cissy
- Repeats: 0
- Total number of images: 26
- Total number of aspect buckets: 1
- Resolution: 1.0 megapixels
- Cropped: true
- Crop style: center
- Crop aspect: square
- Used for regularisation data: No
💻 Usage Examples
Basic Usage
import torch
from diffusers import DiffusionPipeline
model_id = 'black-forest-labs/FLUX.1-dev'
adapter_id = 'hok00i3/flux-lora-training'
pipeline = DiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.bfloat16)
pipeline.load_lora_weights(adapter_id)
prompt = "(ultra detailed,photo,photograph,best quality,high resolution,4k,8k,photorealistic,Japanese early twenties,(slim) and curvy body,waist,detailed beautiful eyes,super detailed eyes and skins,very beautiful woman:3.0), (Wearing tight short sleeves white (one piece) sailor uniform, blue collar, red neckerchief, dark blue pleated dress, standing in empty classroom,sweet smiling:2.0), long straight hair, standing in empty classroom,"
pipeline.to('cuda' if torch.cuda.is_available() else 'mps' if torch.backends.mps.is_available() else 'cpu')
model_output = pipeline(
prompt=prompt,
num_inference_steps=20,
generator=torch.Generator(device='cuda' if torch.cuda.is_available() else 'mps' if torch.backends.mps.is_available() else 'cpu').manual_seed(42),
width=1024,
height=1024,
guidance_scale=3.5,
).images[0]
model_output.save("output.png", format="PNG")