forked from ostris/ai-toolkit
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
b3e0329
commit 2308ef2
Showing
4 changed files
with
128 additions
and
23 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
--- | ||
job: extension | ||
config: | ||
# this name will be the folder and filename name | ||
name: "my_first_flux_lora_v1" | ||
process: | ||
- type: 'sd_trainer' | ||
# root folder to save training sessions/samples/weights | ||
training_folder: "output" | ||
# uncomment to see performance stats in the terminal every N steps | ||
# performance_log_every: 1000 | ||
device: cuda:0 | ||
# if a trigger word is specified, it will be added to captions of training data if it does not already exist | ||
# alternatively, in your captions you can add [trigger] and it will be replaced with the trigger word | ||
# trigger_word: "p3r5on" | ||
network: | ||
type: "lora" | ||
linear: 16 | ||
linear_alpha: 16 | ||
save: | ||
dtype: float16 # precision to save | ||
save_every: 250 # save every this many steps | ||
max_step_saves_to_keep: 4 # how many intermittent saves to keep | ||
datasets: | ||
# datasets are a folder of images. captions need to be txt files with the same name as the image | ||
# for instance image2.jpg and image2.txt. Only jpg, jpeg, and png are supported currently | ||
# images will automatically be resized and bucketed into the resolution specified | ||
- folder_path: "/mnt/Datasets/1920s_illustrations" | ||
# - folder_path: "/path/to/images/folder" | ||
caption_ext: "txt" | ||
caption_dropout_rate: 0.05 # will drop out the caption 5% of time | ||
shuffle_tokens: false # shuffle caption order, split by commas | ||
cache_latents_to_disk: true # leave this true unless you know what you're doing | ||
resolution: [ 512, 768, 1024 ] # flux enjoys multiple resolutions | ||
train: | ||
batch_size: 1 | ||
steps: 4000 # total number of steps to train | ||
gradient_accumulation_steps: 1 | ||
train_unet: true | ||
train_text_encoder: false # probably won't work with flux | ||
content_or_style: balanced # content, style, balanced | ||
gradient_checkpointing: true # need the on unless you have a ton of vram | ||
noise_scheduler: "flowmatch" # for training only | ||
optimizer: "adamw8bit" | ||
lr: 4e-4 | ||
|
||
# ema will smooth out learning, but could slow it down. Recommended to leave on. | ||
ema_config: | ||
use_ema: true | ||
ema_decay: 0.99 | ||
|
||
# will probably need this if gpu supports it for flux, other dtypes may not work correctly | ||
dtype: bf16 | ||
model: | ||
# huggingface model name or path | ||
name_or_path: "black-forest-labs/FLUX.1-dev" | ||
is_flux: true | ||
quantize: true # run 8bit mixed precision | ||
sample: | ||
sampler: "flowmatch" # must match train.noise_scheduler | ||
sample_every: 250 # sample every this many steps | ||
width: 1024 | ||
height: 1024 | ||
prompts: | ||
# you can add [trigger] to the prompts here and it will be replaced with the trigger word | ||
# - "[trigger] holding a sign that says 'I LOVE PROMPTS!'"\ | ||
- "woman with red hair, playing chess at the park, bomb going off in the background" | ||
- "a woman holding a coffee cup, in a beanie, sitting at a cafe" | ||
- "a horse in a night club dancing, fish eye lens, smoke machine, lazer lights, holding a martini, large group" | ||
- "a man showing off his cool new t shirt at the beach, a shark is jumping out of the water in the background" | ||
- "a bear building a log cabin in the snow covered mountains" | ||
- "woman playing the guitar, on stage, singing a song, laser lights, punk rocker" | ||
- "hipster man with a beard, building a chair, in a wood shop" | ||
- "photo of a man, white background, medium shot, modeling clothing, studio lighting, white backdrop" | ||
- "a man holding a sign that says, 'this is a sign'" | ||
- "a bulldog, in a post apocalyptic world, with a shotgun, in a leather jacket, in a desert, with a motorcycle" | ||
neg: "" # not used on flux | ||
seed: 42 | ||
walk_seed: true | ||
guidance_scale: 4 | ||
sample_steps: 20 | ||
# you can add any additional meta info here. [name] is replaced with config name at top | ||
meta: | ||
name: "[name]" | ||
version: '1.0' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters