Skip to content

Releases: kohya-ss/musubi-tuner

Version 0.3.4

Choose a tag to compare

@kohya-ss kohya-ss released this 23 Jun 23:20
30c658c

What's Changed

  • Add Krea 2 image model support with caching, training, and inference by @kohya-ss in #980
  • Update readme and bump version to 0.3.4 by @kohya-ss in #981
  • Add Krea 2 model support and update version to 0.3.4 by @kohya-ss in #982

Full Changelog: v0.3.3...v0.3.4

Version 0.3.3

Choose a tag to compare

@kohya-ss kohya-ss released this 19 Jun 12:12
99792af

What's Changed

Full Changelog: v0.3.2...v0.3.3

Version 0.3.2

Choose a tag to compare

@kohya-ss kohya-ss released this 15 Jun 23:54
9bfc5a4

What's Changed

  • Add --save_precision option for network weights (default: fp32) by @rockerBOO in #967
  • docs: Add --save_precision option details to README and HunyuanVideo … by @kohya-ss in #971
  • Feat h2d only block swap by @kohya-ss in #972

Full Changelog: v0.3.1...v0.3.2

Version 0.3.1

Version 0.3.1 Pre-release
Pre-release

Choose a tag to compare

@kohya-ss kohya-ss released this 08 Jun 13:08
29205cc

What's Changed

  • Add experimental HiDream-O1-Image support by @sdbds in #947
  • Follow-up for HiDream-O1 by @kohya-ss in #955
  • feat: Make per-sample forward to single (batch) forward in HiDream-O1 t2i training with SDPA by @kohya-ss in #959
  • Fix multi control bucketing by @kohya-ss in #960
  • feat: Add compile support for HiDream-O1 by @kohya-ss in #962
  • fix: Clean up unused code and dependencies in pyproject.toml and trai… by @kohya-ss in #963
  • feat: HiDream-O1 support and some fix by @kohya-ss in #964

Full Changelog: v0.3.0...v0.3.1

v0.3.0

v0.3.0 Pre-release
Pre-release

Choose a tag to compare

@kohya-ss kohya-ss released this 21 May 23:21
78acafb

Acknowledgements

Special thanks to @rockerBOO for the design discussion behind the new NetworkTrainer extension seams (#943), which grew out of his Self-Flow proposal in #913. The squash-merge unfortunately did not surface his commits in the auto-generated list below.

特に @rockerBOO 氏に深く感謝します。新しい NetworkTrainer 拡張シーム (#943) の設計議論にご協力いただきました。これは氏の Self-Flow 提案 (#913) を起点としたものです。squash merge の都合で下記の自動生成リストに氏のコミットが反映されなかったため、ここで明記します。


What's Changed

  • feat: Qwen-Image-Layered support by @kohya-ss in #816
  • fix: load control image for qwen image layered in generation by @kohya-ss in #837
  • fix: update mu calculation in generate function to use original image latent shape by @kohya-ss in #838
  • fix: fix img_shapes for Qwen-Image-Layered training by @kohya-ss in #844
  • fix: update LoRA conversion script and documentation for Z-Image by @kohya-ss in #851
  • feat: Remove the restriction that the original image must be the first layer during training. by @kohya-ss in #852
  • fix a bug where multiple images were generated when batch generating with Qwen-Image by @kohya-ss in #856
  • Flux.2-dev training by @christopher5106 in #841
  • Fix flux 2 formatting and update readme by @kohya-ss in #857
  • docs: Update README to credit contributor with full affiliation by @kohya-ss in #865
  • FLUX.2 Improvements and fixes by @kohya-ss in #858
  • fix: move image tensor to GPU for gradient checkpointing CPU offloading by @kohya-ss in #871
  • feat: validate fp8 format in load_safetensors_with_fp8_optimization by @kohya-ss in #872
  • Update overview.md for AI agents by @kohya-ss in #876
  • fix: Update CFG handling in sample generation for Z-Image by @kohya-ss in #878
  • doc: update link to caption_images_by_qwen_vl.py by @obsxrver in #879
  • fix: unpack_latents function to support 1 layer latent for QIL by @kohya-ss in #881
  • feat: Add block_swap_optimizer_patch_params option for supporting some optimizers with block swapping by @kohya-ss in #899
  • feat: add LoHa and LoKr network modules with architecture detection by @kohya-ss in #900
  • fix: replace verbose print statements with logger.debug in cache latents files by @belambert in #920
  • Refactor/trainer split by @kohya-ss in #930
  • Refactor/dataset split by @kohya-ss in #931
  • Refactor: move HunyuanVideo-specific defaults out of NetworkTrainer base by @kohya-ss in #932
  • Update overview.md: simplify and reflect post-refactoring structure by @kohya-ss in #933
  • Refactor: introduce extension seams on NetworkTrainer (for Self-Flow + future extensions) by @kohya-ss in #943
  • Bump version 0.3.0 by @kohya-ss in #951
  • Refactor training and dataset modules for improved structure by @kohya-ss in #950

New Contributors

Full Changelog: v0.2.15...v0.3.0


This release's refactoring was largely carried out by Claude Code (Opus 4.7), with review by Codex (GPT-5.5). My thanks to both. All responsibility for the resulting code rests with the maintainer.

今回のリリースのリファクタリングは、その多くを Claude Code (Opus 4.7) に行ってもらい、Codex (GPT-5.5) にレビューを受けました。両者に感謝します。なお、コードに関する責任はメンテナ側にあります。

Version 0.2.15

Version 0.2.15 Pre-release
Pre-release

Choose a tag to compare

@kohya-ss kohya-ss released this 27 Dec 00:38
8ec9577

Release highlights (v0.2.15)

  • HunyuanVideo 1.5 support added for training/inference workflows. (#748)
  • Z-Image support landed, including training DB updates and related improvements. (#757, #778)
  • Experimental “very simple” GUI introduced to make common operations easier to run. (#779)
  • Qwen-Image-Edit-2511 support added for training/inference, plus compatibility fixes for Edit-2511 checkpoints. (#802, #808)
  • Kandinsky 5 Pro LoRA training support added. (#774)
  • toch.compile support in training scripts (#722) with follow-up fixes. (#727, #731)
  • CUDA 13.0 support added. (#812)

What's Changed

  • fix: adjust block swapping logic for forward-only mode in ModelOffloader by @kohya-ss in #675
  • feat: replace x+a*b with torch.addcmul by @kohya-ss in #721
  • feat: Add torch.compile support to training scripts. by @kohya-ss in #722
  • feat: add .mcp.json to .gitignore by @kohya-ss in #725
  • fix: support compile dynamic=None by @kohya-ss in #727
  • fix: exclude first step from progress bar to improve initialization time by @kohya-ss in #728
  • fix: update timestep handling to use float32 for improved precision by @kohya-ss in #729
  • fix: update state dict handling for compiled models during saving by @kohya-ss in #731
  • Feat support hunyuan video 1 5 by @kohya-ss in #748
  • fix: move tensors to CPU after encoding to GPU before generation by @kohya-ss in #758
  • fix: preserve training mode of transformer during inference by @kohya-ss in #759
  • Feat support z image by @kohya-ss in #757
  • feat: add ComfyUI state dict conversion for Qwen-Image VAE loading by @kohya-ss in #760
  • fix: update FP8 optimization target and exclude keys by @kohya-ss in #761
  • Doc update overview md by @kohya-ss in #762
  • fix: Improve memory management during video generation process by @kohya-ss in #763
  • fix: Remove required flag from argument parsers in training scripts by @kohya-ss in #765
  • feat: Add support for converting LoRA weights from diffusers for base_weights. by @kohya-ss in #772
  • Add Z-image train db by @sdbds in #778
  • Feat enable full bf16 for z image train by @kohya-ss in #781
  • feat: Add a very simple GUI experimentally by @kohya-ss in #779
  • feat: Add support for pinned memory in Block Swap and update UI labels by @kohya-ss in #782
  • Fix train db compile bugs by @sdbds in #786
  • Fix DDP bugs by @sdbds in #793
  • Log d*eff_lr for ProdigyPlusScheduleFree, and some cleanup of LR logging by @woct0rdho in #767
  • Prevent NaN during Z-Image-Turbo fp16 training by @yslai in #795
  • Support Qwen-Edit-2511 by @sdbds in #802
  • fix: Handle index_timestep_zero metadata key in qwen_image_train.py for Edit-2511 checkpoints by @maxim-kruglikov-playrix in #809
  • Add Kandinsky 5 Pro LoRA training by @AkaneTendo25 in #774
  • fix(qwen_image_train_network): argument order by @jimlee2048 in #811
  • feat: add support for Qwen-Image-Edit 2511 for training/inference by @kohya-ss in #808
  • Add CUDA 13.0 support by @djtuBIG-MaliceX in #812
  • doc: update CUDA support in installation instructions for uv by @kohya-ss in #814
  • version: bump to 0.2.15 by @kohya-ss in #815

New Contributors

Full Changelog: v0.2.14...v0.2.15

Version 0.2.14

Version 0.2.14 Pre-release
Pre-release

Choose a tag to compare

@kohya-ss kohya-ss released this 12 Nov 10:39

Highlights

  • Block swap is now faster due to the use of pinned memory: A new use_pinned_memory parameter has been added to the block swapping functionality to provide users with an option to optimize data transfer performance between CPU and GPU during block swapping operations. (in #700).

What's Changed

  • feat: Reference Consistency Mask for Qwen-Image-Edit by @kohya-ss in #643
  • fix: Qwen-Image generation: DiT memory not released in batch mode and append_original_name didn't work by @kohya-ss in #644
  • feat: add --one_frame_auto_resize option to adjust image size by @kohya-ss in #646
  • [Fast Fix]fix miss import and support avif navite in pillow 11.3 by @sdbds in #666
  • doc: add "full" to list of available params for frame_extraction in example dataset by @obsxrver in #647
  • Fix TypeError when caching control images for WAN Fun Control by @pizurny in #659
  • Adding new optional metadata parameters working great by @FurkanGozukara in #673
  • feat: Support explicit metadata architecture and resolution by @kohya-ss in #683
  • fix: improve control image matching by sorting image paths and avoidi… by @kohya-ss in #684
  • Adds faster model loading args - RunPod loading takes at least 15-20 minutes without this and with this it takes 30 seconds by @FurkanGozukara in #681
  • fix: update handling of disable_numpy_memmap by @kohya-ss in #687
  • fix: encoder_hidden_​​state_mask is ignored in Qwen-Image attention by @kohya-ss in #688
  • Update extract lora script by @sdbds in #689
  • feat: add use_pinned_memory option for block swap in multiple models by @kohya-ss in #700
  • feat Qwen-Image-Edit training without control image by @kohya-ss in #704

New Contributors

Full Changelog: v0.2.13...v0.2.14

Version 0.2.13

Version 0.2.13 Pre-release
Pre-release

Choose a tag to compare

@kohya-ss kohya-ss released this 05 Oct 07:20
fee0558

Highlights

  • Support for Qwen-Image-Edit-2509: This release introduces support for the Qwen-Image-Edit-2509 model, enabling training and inference with multiple control images for more complex image editing tasks. (in #590)
  • Reduced VRAM Usage for Block Swap: The shared VRAM usage for the block swap feature has been significantly reduced on Windows. (in #585)
  • Dataset Handling Fix: A bug has been fixed where the first data item of each epoch was being handled incorrectly. This ensures that all data is processed properly throughout the epoch. (in #601)

What's Changed

  • feat: add option to force 2.1 style time embedding in WanModel by @kohya-ss in #586
  • doc: Wan update offloading instructions for DiT model on Windows by @kohya-ss in #597
  • feat: Add flag to disable cuDNN PyTorch backend when caching by @xzuyn in #592
  • Free VRAM for lazy loading in batch prompt mode by @JCBrouwer in #593
  • doc: update dataset configuration for control images with mask by @kohya-ss in #600
  • feat: Add support for Qwen-Image-Edit-2509 by @kohya-ss in #590
  • fix: Qwen-Image-Edit (not 2509) incorrect prompt for VLM. by @kohya-ss in #606
  • fix: Qwen-Image-Edit-2509 cannot handle arbitrary number of control images by @kohya-ss in #613
  • Fix Prodigy optimizer logs by @wenyifancc in #623
  • feat: Reducing shared VRAM usage for block swap by @kohya-ss in #585
  • Organizing document structure by @kohya-ss in #630
  • fix: first data of the epoch from dataset is inappropriate by @kohya-ss in #601
  • chore: bump version to 0.2.13 by @kohya-ss in #631

New Contributors

Full Changelog: v0.2.12...v0.2.13

Version 0.2.12

Version 0.2.12 Pre-release
Pre-release

Choose a tag to compare

@kohya-ss kohya-ss released this 23 Sep 08:53
d3a9d85

Highlights

📝 Code Quality: Ruff Formatting: PR #538

We introduced Ruff for unified linting and formatting across the codebase. This standardization improves contributor experience, ensures consistent style, and streamlines the review process. Thank you @arledesma for this great contribution!

⚡ CPU Offloading for Gradient Checkpointing: PR #537

Added support for activation CPU offloading during gradient checkpointing. This feature reduces VRAM usage by up to 20–30% in large-scale video training, enabling larger batch sizes. The trade-off is slightly slower training (a few percent to ~20%).

🚀 Faster Model Loading with MemoryEfficientSafeOpen: PR #556

Improved .safetensors loading with np.memmap and non-blocking GPU transfer, making model load times up to 1.5× faster. This significantly reduces waiting time for large model initialization.

🔬 FP8 Quantization with Block-wise Scaling: PR #575

Changed the --fp8_scaled option from per-tensor quantization to block-wise scaling, resulting in improved accuracy and stability. For Qwen-Image LoRA training, this reduces VRAM usage by about 5GB. Training and inference speed may be slightly slower.

What's Changed

  • Configure ruff format for code quality standardization by @arledesma in #538
  • doc: update contributing guidelines for clarity and consistency by @kohya-ss in #541
  • feat: add CPU offloading support for gradient checkpointing by @kohya-ss in #537
  • docs: update README to include ruff code analysis and activation CPU offloading by @kohya-ss in #545
  • bugfix: fix mask initialization for wan flf2v inference by @LittleNyima in #548
  • feat: faster MemoryEfficientSafeOpen by @kohya-ss in #556
  • from_file with qwen_image_generate_image is broken by @nmfisher in #553
  • fix: Qwen-Image training not working with fp8_base by @kohya-ss in #559
  • chore: add .vscode/settings.json to .gitignore by @kohya-ss in #562
  • feat: faster LoRA merging and stable fp8 max calculation by @kohya-ss in #563
  • fix(wan): FlashAttention-3 call error by @jimlee2048 in #570
  • Fix qwen image from file generation by @kohya-ss in #557
  • fix: add dtype handling for fp8 model weights in weight_hook_func by @kohya-ss in #582
  • fix: VAE tiling is always enabled for FramePack by @kohya-ss in #583
  • feat: FP8 quantization with block-wise scaling by @kohya-ss in #575
  • chore: bump version to 0.2.12 by @kohya-ss in #584

New Contributors

Full Changelog: v0.2.11...v0.2.12

Version 0.2.11

Version 0.2.11 Pre-release
Pre-release

Choose a tag to compare

@kohya-ss kohya-ss released this 07 Sep 05:33
2c15f94

What's Changed

  • fix: correct metadata key for session ID in NetworkTrainer by @kohya-ss in #516
  • Code Quality - F821 by @arledesma in #483
  • Code Quality - Configure ruff linting with Exclusions by @arledesma in #488
  • doc: README Add ruff code analysis introduction by @kohya-ss in #522
  • feat: add QwenImageTrainer for fine-tuning with Adafactor optimizer by @kohya-ss in #492
  • doc: split HunyuanVideo documentation from README by @kohya-ss in #525
  • feat: Add REX learning rate scheduler by @xzuyn in #513
  • Feat small refactoring for rex scheduler by @kohya-ss in #535
  • Fix bugs when qwen-image use lycoris by @sdbds in #530
  • bump version to v0.2.11 by @kohya-ss in #540

New Contributors

Full Changelog: v0.2.10...v0.2.11