Releases: bghira/SimpleTuner
Releases · bghira/SimpleTuner
v3.0.6 - multiGPU bugfixes, make dataloader less spiteful toward users
What's Changed
- hidream: fix EmbedND return value to match what apply_rope expects by @bghira in #1870
- fix HiDream test by @bghira in #1872
- merge by @bghira in #1871
- update detection for conditioning data blocks to look for auto-generator by @bghira in #1874
- add hf_transfer as base dependency for scheduler download issue by @bghira in #1873
- validation: check whether the declared eval_dataset_id exists before trying to use it by @bghira in #1876
- collate: fix issue where conditioning captions are incorrectly used when just a single training set exists by @bghira in #1875
- disable build maximisation step since we now use less space anyway by @bghira in #1877
- detect when a split nukes the dataset contents and restore from snapshot by @bghira in #1869
- merge by @bghira in #1879
Full Changelog: v3.0.5...v3.0.6
v3.0.5 - bugfix release
What's Changed
- integrate lora_alpha fully with diffusers metadata collection by @bghira in #1853
- fix qwen edit conditioning settings not appearing by @bghira in #1854
- add dataset file browser button to instance data directory field, allowing direct selection of the path by @bghira in #1855
- add /api/version endpoint and display it in the UI sidebar-header by @bghira in #1856
- break dataloader template down into subsection templates by @bghira in #1857
- disable moving of text encoders when group offload enabled by @bghira in #1859
- (#1776) handle another edge case where repeats=0 on cond set, repeats>0 on training set. duplicate settings at startup. by @bghira in #1858
- refactor group offload to target transformer only and not call .to() after enabled by @bghira in #1861
- [wip] self-forcing distillation by @bghira in #1847
- wan group offloading fix for backward pass; move temb to the block device before applying scale/shift by @bghira in #1863
- fix bug when loading predefined conditioning_image_embeds sets by @bghira in #1862
- merge by @bghira in #1864
- (#1860) configure Dynamo for BnB models dynamic outputs by @bghira in #1865
- Add non-Python files to SimpleTuner wheel. by @hameerabbasi in #1866
- resolve bug where duplicating conf environment does not copy the whole subfolder by @bghira in #1867
- Release 3.0.5 by @bghira in #1868
New Contributors
- @hameerabbasi made their first contribution in #1866
Full Changelog: v3.0.4...v3.0.5
v3.0.4 - validation adapters, Chroma masking fix, UI fixes
What's Changed
- (#1823) add a Shutdown button and API endpoint that kill the trainer by @bghira in #1837
- (#1811) disable prompt management options when i2v is selected by @bghira in #1841
- (#1808) add options for validation adapters and fix bug preventing validation page from rendering by @bghira in #1843
- import change from Diffusers upstream for Chroma masking fixes by @bghira in #1844
- add note about multi-adapter validations by @bghira in #1845
- wan i2v refactor: auto-create conditioning dataset when is_i2v is true on a dataset with no conditioning data defined by @bghira in #1846
- refactor model_families and model_flavour retrieval for better usage in simpletuner configure TUI by @bghira in #1848
- correct detection of video / i2v configuration on dataset page by @bghira in #1849
- dataset builder JSON mode fix, do not run stringify on dirty marker when in json mode by @bghira in #1850
- revamp dataset view, persistent collapsibles, slightly better layout by @bghira in #1851
- Release 3.0.4 by @bghira in #1852
Full Changelog: v3.0.3...v3.0.4
v3.0.3 - Pony v7 preset, Qwen Edit, web interface improvements
What's Changed
- ui: adjust interface state sync with backend by @bghira in #1820
- update UI state tracking and fix logs for less spamming by @bghira in #1821
- add qwen edit and edit 2509 support via edit-v1 and edit-v2 flavours by @bghira in #1795
- (#1824) reintroduce missing dataloader config examples by @bghira in #1826
- (#1824) keep example dataloader config by default by @bghira in #1827
- ponyflow: add path and override sequence length to 768 by @bghira in #1829
- (#1825) fix dataloader config subsection styling on Environment page by @bghira in #1828
- event list filtration dropdown by @bghira in #1830
- (#1817) add a Copy button to the event log by @bghira in #1831
- (#1801) fix event list events disappearing upon resize by @bghira in #1832
- (#1804) address some UI state desync when errors emit at startup or disconnection by @bghira in #1833
- (#1807) fix ROCm statistics reporting by @bghira in #1834
- tutorial: update installation source to pip by @bghira in #1835
Full Changelog: v3.0.2...v3.0.3
v3.0.2 - Wan I2V, Chroma bugfixes; Revamped TUI configure tool
What's Changed
- Update WAN_STAGE_OVERRIDES subfolder names by @bghira in #1787
- add webhook wrapper for logging that streams all log-level appropriate events to the UI by @bghira in #1788
- chroma: fix deprecated use of img_ids by @bghira in #1789
- (#1786) wan: monkeypatch execution device getter by @bghira in #1790
- update test coverage for webhooks by @bghira in #1791
- add import-export for config next to environment selector by @bghira in #1792
- deprecate --validation_steps, replace with --validation_step_interval and --validation_epoch_interval by @bghira in #1793
- deprecate --checkpointing_steps, replace with --checkpoint_step_interval and --checkpoint_epoch_interval by @bghira in #1794
- do not complain about webhooks being left unconfigured by @bghira in #1797
- configure script: revive and add missing logic by @bghira in #1798
- adjust logging trapper to not stomp on log_format rules by @bghira in #1800
- fix i2v data cache (wan 2.1) by @bghira in #1799
- resolve conditioning dataset multi-gpu split problem (#1776) by @bghira in #1818
- merge 3.0.2 to release branch by @bghira in #1819
Full Changelog: v3.0.1...v3.0.2
v3.0.1 - Chroma HD, Wan 5B, A14B, Block swapping / group offload
This is considered an essential upgrade for bugfixes.
What's Changed
- Chroma HD by @bghira in #1767
- fix chroma controlnet bugs by @bghira in #1768
- harden config loading for v2.x and earlier datasets that used loose typing by @bghira in #1770
- Qwen Image: fix loading bug by @bghira in #1771
- fixes for rocm pytorch dependency by @bghira in #1772
- detect instance dir and raise error all the way to the web interface by @bghira in #1773
- fix qwen unpack bug by @bghira in #1774
- Wan 2.2 A14B, group offload memory optimisations by @bghira in #1769
- add bucket reporting for zero-length datasets to help understand why it had no images by @bghira in #1782
- UI: cannot unset user prompt library path value by @bghira in #1783
- fix wan2.2 model path by @haoxu2000 in #1784
New Contributors
- @haoxu2000 made their first contribution in #1784
Full Changelog: v3.0.0...v3.0.1
v3.0.0 - web interface, FSDP2 + context-parallel training
SimpleTuner v3
TL;DR
- User‑driven workflows, API‑centric design, and a calmer, smarter training experience.
- Big push on reliability, visibility, and integration: wizards, events, webhooks, CLI, and docs.
- Lays the groundwork for SimpleTuner v3 to truly be simple.
Highlights
- Unified, richer webhook/events system with stable interface that will not change much, moving forward.
- Dataset and training configuration wizards that hold your hand and help make fewer mistakes.
- FSDP2 and DeepSpeed fully integrated into the web interface, with more flexible and complete configuration capability.
- Packaging, CLI, Docker, and documentation updates that make things easier.
WebUI & UX
- Dataset Wizard and Training Configuration Wizard with guided steps.
- Event streaming: lifecycle states, event severity, progress bars, lightbox for convenient viewing of validation images.
- Clean interactivity: collapse/expand sections of the interface with persisted state to disk, ensuring the interfaces stays just as you left it the next time it's loaded.
- Support for custom themes to be expanded upon and fully-fleshed out in the next few releases
Data, Checkpoints & Validation
- Checkpoint overview card with validation previews; lightbox for images.
- Fixes for validation image counts, overwrites, and color profiles.
- Checkpoint deletion, filename/path normalization, and selection widgets.
- Hugging Face uploads: bulk/single with improved feedback and error surfacing.
Training Core
- Robust error detection and graceful recovery/cleanup on abort.
- Improved progress tracking (including text/image embed steps).
- Startup status surfaced in API with
startup_progress. - Safer defaults and guards (optimizers, schedulers, warmup, gradient accumulation).
Distributed & Hardware
- FSDP2 backend support with tests and docs; context parallel option.
- DeepSpeed builder UI and safer defaults; single‑GPU fixes for full-rank tuning big models like Flux on just 24G VRAM
- Hardware route for GPU info to allow displaying it in statistics dashboards or collecting for metrics over time.
- Guardrails for macOS/ROCm that disable or remove incompatible features from the interface to avoid confusion or accidental usage.
Webhooks & Events
- Unified event lifecycle; legacy ad-hoc messages are removed.
- Multi‑webhook backend with list config and SSL support.
- Mandatory
readable_typefor signal names; richer, raw payloads. - Hardened against timeouts/connection closure; consistent logging.
API, CLI & Service
- Overhauled FastAPI service with API documentation generator.
- CLI entry point and service worker command added to just allow
simpletuner serverto launch everything. - Dataset browse endpoint; improved dataloader factory and registry.
APIStateimprovements for in‑context subprocess and progress tracking.
Performance & Stability
- Trainingsample Rust ops integrated for batched transforms (goodbye cv2).
- PyTorch upgraded to 2.8.0 or 2.9.0 depending on platform; TorchDynamo config granularity enhanced, with regional compile now possible to enable.
Security & Networking
- Webhook SSL support with auto‑disable verify if server started with SSL - or bring-your-own certificate and launch with a fully verified chain of authority.
- Env var & accelerate config handling refined; safer pipeline defaults.
Packaging, Install & Docs
- Shift to pip‑first workflows; Docker and notebooks updated accordingly.
- CLI launch recommendations unified across docs.
- FSDP2 and DeepSpeed docs; migration guide (2.1 → 2.2).
- API tutorial and current event list added; lots of errata and readability passes.
Removals & Breaking Changes
- Removed legacy webhook message format; use unified events stream.
- Removed Poetry configs
- No CWD fallback for config loading; be explicit about paths.
Quality & Tests
- Expanded unit/integration tests: webhooks (SSL/JSON/AST), events lifecycle, collapsible sections, hardware, backends, and CLI parsing.
- Better mocks for checkpoint tests; formatting/coverage cleanups.
Upgrade Notes
- Install/update via pip (see README for commands and extras).
- Review WEBHOOKS and Events docs for updated signal names and payloads:
- documentation/api/WEBHOOKS.md
- documentation/api/TUTORIAL.md
v2.2.1 - QoL fix for command line
What's Changed
- fix parsing of config.env when using cli tool, and allow passthrough of arguments to trainer by @bghira in #1737
Full Changelog: v2.2.0...v2.2.1
v2.2.0 - project layout overhaul
What's Changed
- Add FastWan (DMD) distillation method by @bghira in #1695
- update transformers+diffusers by @bghira in #1699
- VAECache needs to shuffle bucket contents before splitting across GPUs by @bghira in #1701
- Fix Cosmos2 text to image training by using the right objective and latents by @AmericanPresidentJimmyCarter in #1702
- Fix crash in Cosmos2 latent generation by @AmericanPresidentJimmyCarter in #1703
- add vLLM based captioner script for Qwen-VL 2.5 3B and 7B Instruct by @bghira in #1704
- Fix: DeepSpeed ZeRO Stage 3 Compatibility for Flux by @alexsenden in #1712
- fixes for vllm script by @bghira in #1716
- Expand aspect_bucket_alignment options; allow override with --i_know_what_i_am_doing by @twri in #1713
- Bugfix: wan vae normalisation + deterministic posterior sampling by @squewel in #1722
- wan vae normalisation by @bghira in #1723
- (#1732) sd3 and hidream fix for lora function location by @bghira in #1733
- Rust-based TrainingSample; accelerated, vectorised operations by @bghira in #1734
- add latest trainingsample v0.2.0 for better performance by @bghira in #1735
- simpletuner 2.2: package-friendly layout by @bghira in #1736
Full Changelog: v2.1.3...v2.2.0
v2.1.3 - TREAD softly
Features
- Qwen Image is now supported for finetuning
- TREAD: Uses this CompVis research for a great speed-up and VRAM reduction in FLUX and Wan 2.x models, thanks to American President Jimmy Carter for the great contribution
- Added
krea,fluxbooruandlibrefluxflavour options to Flux, updating the default fromdevtokrea
Fixes
- Distributed int8 training for torchao is now functional
- Cleaner output on console when training with PNGs, no more iCCP chunk spam
- Cosmos2Image quality improvement by fixing VAE encode
- Aspect ratio errors for square crop configurations are resolved (#1692)
- Fixed end-to-end test runner on MacOS
What's Changed
- pixart: more spots where transformer access needs fixing by @bghira in #1667
- fix tests by @bghira in #1669
- add fluxbooru v0.3 with sensible default overrides by @bghira in #1671
- add neta lumina flavour for anime based lumina2 finetune by @bghira in #1674
- add libreflux flavour defaults by @bghira in #1673
- add TREAD training by @bghira in #1675
- add support for distributed int8 via torchao (experimental) by @bghira in #1676
- disable CLIP eval in default examples, add TREAD example for Flux by @bghira in #1677
- support huggingface datasets for video by @bghira in #1678
- add torchao v0.12 by @bghira in #1679
- add Wan TREAD support and docs by @bghira in #1680
- Add FLUX.1-Krea-dev and make it the default Flux flavour by @bghira in #1686
- when saving model card, cast to str for check by @bghira in #1687
- merge by @bghira in #1690
- remove bad iCCP chunk from PNG data before passing bytes to CV2 (silence libpng console spam) by @bghira in #1691
- include cosmos2image in the posterior sampling classes by @bghira in #1693
- aspect ratio incorrect on square crops by @bghira in #1692
- merge by @bghira in #1694
- fix macos end2end test runner crash by @bghira in #1697
- add qwen image by @bghira in #1696
- merge by @bghira in #1698
Full Changelog: v2.1.2...v2.1.3