Spaces:
Paused
Paused
job: extension | |
config: | |
# this name will be the folder and filename name | |
name: "my_first_qwen_image_edit_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 words will not work when caching text embeddings | |
# 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 | |
# on windows, escape back slashes with another backslash so | |
# "C:\\path\\to\\images\\folder" | |
- folder_path: "/path/to/images/folder" | |
control_path: "/path/to/control/images/folder" | |
caption_ext: "txt" | |
# default_caption: "a person" # if caching text embeddings, if you don't have captions, this will get cached | |
caption_dropout_rate: 0.05 # will drop out the caption 5% of time | |
resolution: [ 512, 768, 1024 ] # qwen image enjoys multiple resolutions | |
train: | |
batch_size: 1 | |
# caching text embeddings is required for 32GB | |
cache_text_embeddings: true | |
steps: 3000 # total number of steps to train 500 - 4000 is a good range | |
gradient_accumulation: 1 | |
timestep_type: "weighted" | |
train_unet: true | |
train_text_encoder: false # probably won't work with qwen image | |
gradient_checkpointing: true # need the on unless you have a ton of vram | |
noise_scheduler: "flowmatch" # for training only | |
optimizer: "adamw8bit" | |
lr: 1e-4 | |
# uncomment this to skip the pre training sample | |
# skip_first_sample: true | |
# uncomment to completely disable sampling | |
# disable_sampling: true | |
dtype: bf16 | |
model: | |
# huggingface model name or path | |
name_or_path: "Qwen/Qwen-Image-Edit" | |
arch: "qwen_image_edit" | |
quantize: true | |
# qtype_te: "qfloat8" Default float8 qquantization | |
# to use the ARA use the | pipe to point to hf path, or a local path if you have one. | |
# 3bit is required for 32GB | |
qtype: "uint3|qwen_image_edit_torchao_uint3.safetensors" | |
quantize_te: true | |
qtype_te: "qfloat8" | |
low_vram: true | |
sample: | |
sampler: "flowmatch" # must match train.noise_scheduler | |
sample_every: 250 # sample every this many steps | |
width: 1024 | |
height: 1024 | |
samples: | |
- prompt: "do the thing to it" | |
ctrl_img: "/path/to/control/image.jpg" | |
- prompt: "do the thing to it" | |
ctrl_img: "/path/to/control/image.jpg" | |
- prompt: "do the thing to it" | |
ctrl_img: "/path/to/control/image.jpg" | |
- prompt: "do the thing to it" | |
ctrl_img: "/path/to/control/image.jpg" | |
- prompt: "do the thing to it" | |
ctrl_img: "/path/to/control/image.jpg" | |
- prompt: "do the thing to it" | |
ctrl_img: "/path/to/control/image.jpg" | |
- prompt: "do the thing to it" | |
ctrl_img: "/path/to/control/image.jpg" | |
- prompt: "do the thing to it" | |
ctrl_img: "/path/to/control/image.jpg" | |
- prompt: "do the thing to it" | |
ctrl_img: "/path/to/control/image.jpg" | |
- prompt: "do the thing to it" | |
ctrl_img: "/path/to/control/image.jpg" | |
neg: "" | |
seed: 42 | |
walk_seed: true | |
guidance_scale: 3 | |
sample_steps: 25 | |
# you can add any additional meta info here. [name] is replaced with config name at top | |
meta: | |
name: "[name]" | |
version: '1.0' | |