This past weekend I was gone. I decided to let my 5090 chug along making a lokr for Qwen on ~5,000 hand fixed captions on ???, ?????, and other fun stuff of hand picked images with hand removed watermarks. I wasn't expecting it to get so good so quickly, so I did a few more night's worth of training. I'll do some additional training at some point here but it's already good enough to play around with.
It can do basic ??? positions, ????????, ???, selfies, snapchat selfies with captions, etc. Female genitals are still a bit hit and miss, male genitals aren't bad. With it being a lokr and it being trained on so many images it's wildly flexible and can be used with perfect likeness of other loras.
Note that sometimes it'll do the wrong ??? position even if you name it, and I'm unsure why as the captions have no errors. It will perhaps clear up a bit with more training.
I used Musubi Tuner and it was a heck of time getting it to train a lokr. I had to use another lycoris library for it (which is somewhere in the issues on the github page, IIRC), but it's possible the main one has Qwen support by now. Here are my training settings, though note that I reduced my LR over time and I also started with sigmoid timestep sampling. I was training at ??0x??0 and 1328x1328 buckets:
accelerate launch --num_cpu_threads_per_process 1 --mixed_precision bf16 src\musubi_tuner\qwen_image_train_network.py `
--dit Q:\AI\Models\DiffusionModels\qwen_image_bf16.safetensors `
--vae Q:\AI\Models\VAE\qwen_vae_for_training.safetensors `
--text_encoder Q:\AI\Models\CLIP\qwen_2.5_vl_7b.safetensors `
--dataset_config S:\AI\Musubi\datasetWoman.toml `
--sdpa --mixed_precision bf16 `
--gradient_accumulation_steps 4 `
--timestep_sampling qinglong_qwen `
--optimizer_type adamw8bit `
--learning_rate 3e-4 --lr_scheduler linear --lr_scheduler_min_lr_ratio=1e-5 --lr_warmup_steps 150 `
--blocks_to_swap 25 `
--gradient_checkpointing --gradient_checkpointing_cpu_offload --max_data_loader_n_workers 2 --persistent_data_loader_workers `
--network_module lycoris.kohya `
--network_args "algo=lokr" "factor=10" "bypass_mode=False" "use_fnmatch=True" "target_module=Linear" `
"target_name=unet.transformer_blocks.*.attn.to_q" `
"target_name=unet.transformer_blocks.*.attn.to_k" `
"target_name=unet.transformer_blocks.*.attn.to_v" `
"target_name=unet.transformer_blocks.*.attn.to_out.0" `
"target_name=unet.transformer_blocks.*.attn.add_q_proj" `
"target_name=unet.transformer_blocks.*.attn.add_k_proj" `
"target_name=unet.transformer_blocks.*.attn.add_v_proj" `
"target_name=unet.transformer_blocks.*.attn.to_add_out" `
"target_name=unet.transformer_blocks.*.img_mlp.net.0.proj" `
"target_name=unet.transformer_blocks.*.img_mlp.net.2" `
--network_dim 1000000000 `
--save_every_n_steps 250 --max_train_epochs 10--logging_dir=logs `
--output_dir Q:/AI/Models/Trained/Loras/Musubi/QwenWoman --output_name WomanGirls
