Commit Graph

3337 Commits (4ef34d9f5f302fdff07d7ad0b73465fe755a83aa)

Author SHA1 Message Date
google-labs-jules[bot] 4ef34d9f5f Fix: Default config file dialog to repo root
Modified the get_file_path function in kohya_gui/common_gui.py
to ensure that when you are opening a configuration file, the
file dialog defaults to the kohya_ss repository root if no
initial path or only a filename is provided.

If a full or relative path is already present in the input field,
the dialog will open in the specified directory as before.

This change improves your experience by starting the file search
in a more relevant location.
2025-06-01 17:54:27 +00:00
google-labs-jules[bot] 69d8b96c1c Feat: Add logging for effective learning rates in LoRA GUI
This commit introduces a helper function, `get_effective_lr_messages`, into `kohya_gui/lora_gui.py` and integrates it into the `train_model` function.

The purpose is to provide you with clearer information about how the learning rates set in the GUI (Main LR, Text Encoder LR, U-Net LR, T5XXL LR) will be interpreted and effectively applied by the underlying `sd-scripts` training engine.

Before training commences, the GUI will now log:
- The Main LR.
- The effective LR for the primary Text Encoder (CLIP), indicating if it's a specific value or a fallback to the Main LR.
- The effective LR for the T5XXL Text Encoder (if applicable), indicating its source (specific, inherited from primary TE, or fallback to Main LR).
- The effective LR for the U-Net, indicating if it's a specific value or a fallback to the Main LR.

This enhances transparency by helping you understand how your LR settings interact, without modifying the `sd-scripts` submodule.
2025-06-01 13:59:07 +00:00
google-labs-jules[bot] d63a7fa2b6 Refactor: Clean up LR handling logic in LoRA GUI
This commit refactors the learning rate (LR) handling in `kohya_gui/lora_gui.py` for LoRA training.

The previous fix for LR misinterpretation involved commenting out a line. This commit completes the cleanup by:
- Removing the `do_not_set_learning_rate` variable and its associated conditional logic, which became redundant.
- Renaming the float-converted `learning_rate` to `learning_rate_float` for clarity.
- Ensuring that `learning_rate_float` and the float-converted `unet_lr_float` are consistently used when preparing the `config_toml_data` for the training script.

This makes the code cleaner and the intent of always passing the main learning rate (along with specific TE/UNet LRs) more direct. The functional behavior of the LR fix remains the same.
2025-06-01 12:29:08 +00:00
google-labs-jules[bot] 3a8b599ba9 Fix: Ensure main learning rate is used in LoRA training
The GUI logic was preventing the main learning rate from being passed to the training script if text_encoder_lr or unet_lr was set. This caused issues with optimizers like Prodigy, which might default to a very small LR if the main LR isn't provided.

This commit modifies kohya_gui/lora_gui.py to ensure the main learning_rate is always included in the parameters passed to the training script, allowing optimizers to use your specified main LR, TE LR, and UNet LR correctly.
2025-06-01 11:31:14 +00:00
bmaltais 1a0ee43ec8
Merge pull request #3263 from bmaltais/dependabot/github_actions/crate-ci/typos-1.32.0
Bump crate-ci/typos from 1.31.2 to 1.32.0
2025-06-01 06:57:26 -04:00
dependabot[bot] c5f12e83ef
Bump crate-ci/typos from 1.31.2 to 1.32.0
Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.31.2 to 1.32.0.
- [Release notes](https://github.com/crate-ci/typos/releases)
- [Changelog](https://github.com/crate-ci/typos/blob/master/CHANGELOG.md)
- [Commits](https://github.com/crate-ci/typos/compare/v1.31.2...v1.32.0)

---
updated-dependencies:
- dependency-name: crate-ci/typos
  dependency-version: 1.32.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-01 05:40:31 +00:00
bmaltais 932dbaae57 Merge branch 'lora' into dev 2025-05-27 08:47:58 -04:00
bmaltais c0be9f70da Cleanup files 2025-05-27 08:47:38 -04:00
bmaltais 992f3e7d55 Merge branch 'dev' 2025-05-26 21:37:50 -04:00
bmaltais d9c30a7176 Update release 2025-05-26 21:37:04 -04:00
bmaltais 66c159296e Merge branch 'dev' 2025-05-26 21:33:22 -04:00
bmaltais 8707d5ff24 Fix requirements issues 2025-05-26 21:33:06 -04:00
bmaltais 5264f5f6fe Update accelerate 2025-05-26 21:02:15 -04:00
bmaltais e6adcc355a Revert change 2025-05-26 20:58:30 -04:00
bmaltais e980bd555d Update accelerate 2025-05-26 20:32:46 -04:00
bmaltais ebcd203a82 Install cu128 for all 2025-05-26 20:18:59 -04:00
bmaltais 8c8f15b1ad Update uv requirements 2025-05-26 20:11:52 -04:00
bmaltais 7aa226ccba Update to cuda 12.8 to support 50X0 cards 2025-05-26 19:02:29 -04:00
bmaltais 3274cb7640 Merge branch 'dev' 2025-05-26 19:00:55 -04:00
bmaltais c1c723a3d9 Merge branch 'dev-cu128' into dev 2025-05-26 18:57:46 -04:00
bmaltais a9cf2a0c7c Add message when --quiet is used 2025-05-26 18:39:36 -04:00
bmaltais 0524896383 Add --quiet option to gui-uv.sh 2025-05-26 18:14:58 -04:00
bmaltais ac12faa5f7
Merge pull request #3255 from jim60105/dev-cu128
build(docker): upgrade to CUDA 12.8 and Debian 12
2025-05-26 13:29:24 -04:00
CHEN, CHUN cff20de128
build(docker): upgrade to CUDA 12.8 and Debian 12
- Update base image from Debian 11 (bullseye) to Debian 12 (bookworm)
- Upgrade CUDA version from 12.4 to 12.8
- Update PyTorch from version 2.5.1 to 2.7.0 with CUDA 12.8 support
- Change triton dependency from exact version 3.1.0 to minimum version constraint

Signed-off-by: CHEN, CHUN <jim60105@gmail.com>
2025-05-27 00:19:05 +08:00
bmaltais 342c79fe83
Merge pull request #3254 from bmaltais/style/harmonize-colors
Style/harmonize colors
2025-05-26 08:53:14 -04:00
bmaltais ee716a17ec
Merge pull request #3253 from bmaltais/style/harmonize-colors
Style/harmonize colors
2025-05-26 08:52:29 -04:00
bmaltais 94ff5231fa Update style 2025-05-26 08:50:23 -04:00
google-labs-jules[bot] 5b5278d6e7 Refactor: Differentiate section backgrounds for visual separation
This commit updates `assets/style.css` to enhance visual distinction between UI sections in both light and dark themes, per your feedback.

Key changes:
- Restored original light theme background colors for UI sections, each having a unique subtle grey/off-white shade.
- Implemented new, distinct dark grey background shades for each UI section in the dark theme, ensuring they are visually separable.
- Updated hover effects for all sections in both themes to complement their unique background colors.
- Re-applied the modernized button styling (blue primary, teal accent) and associated text colors from a previous revision for overall theme consistency.

This approach provides clearer visual boundaries between different parts of the UI while maintaining a harmonious color scheme.
2025-05-26 12:37:01 +00:00
google-labs-jules[bot] ccf82f96ac Refactor: Harmonize CSS colors for light and dark themes
I've updated the color scheme in `assets/style.css` to create a more harmonious and consistent visual experience for you across both light and dark themes.

Key changes include:
- I defined a new color palette with primary, secondary, accent, and neutral colors.
- I revised light theme colors for backgrounds, buttons, and text to use the new palette.
- I adjusted dark theme colors to complement the light theme and ensure readability, using darker backgrounds and lighter text from the palette.
- I refined hover effects for better visual feedback in both themes.
- I ensured good contrast and accessibility with the new color choices.
2025-05-26 12:23:30 +00:00
bmaltais 70a4f53fa8 Update README with required CUDA version 2025-05-26 08:12:40 -04:00
bmaltais 5ab63e488d Update requirements file for 50X0 support 2025-05-26 07:11:25 -04:00
bmaltais 3be6719174 Removed deepspeed 2025-05-25 21:19:45 -04:00
bmaltais 757f4c15cf Updated to support 50X0 cards 2025-05-25 20:05:11 -04:00
bmaltais f56fb0f59f Update how uv is installed on windows 2025-05-25 19:16:58 -04:00
bmaltais 17075c4d25
Merge pull request #3252 from bmaltais/dev
v25.1.0
2025-05-25 18:12:14 -04:00
bmaltais 451f051d52
Update kohya_gui/blip2_caption_gui.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-05-25 18:10:24 -04:00
bmaltais 59b4bb6977 Removing unneeded file 2025-05-25 18:07:20 -04:00
bmaltais f91cee6c7a Getting ready for v25.1.0 release 2025-05-25 17:52:02 -04:00
bmaltais c4247408fe
Feat/add max grad norm dreambooth (#3251)
* I've added a `max_grad_norm` parameter to the Dreambooth GUI.

This change adds support for the `max_grad_norm` parameter to the Dreambooth training GUI.

- The `max_grad_norm` option is now available in the 'Basic' training parameters section.
- The value you set in the GUI for `max_grad_norm` is passed to the training script via the generated TOML configuration file, similar to its existing implementation in the LoRA GUI.

* Fix mising entry for max_grad_norm

---------

Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
2025-05-25 17:44:03 -04:00
陳鈞 93a06c7fc3
docs: doc uv install method is fine for Docker use (#3247)
- Update the uv installation instructions removing Docker from the list of exceptions and affected notes.

We have now switched to using uv for building docker image.
Both uv and pip are effective options for the docker environment, and I believe there is no need to highlight either method when making a selection.
I have left the Runpod as is because I do not have experience with Runpod.

Signed-off-by: CHEN, CHUN <jim60105@gmail.com>
2025-05-25 14:56:09 -04:00
bmaltais e1a769da5c
The message is fine as is. (#3250)
Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
2025-05-25 14:54:31 -04:00
bmaltais 3ed552b08c Update scripted installation of uv 2025-05-25 14:39:08 -04:00
bmaltais 528de60aac Update to latest sd-scripts 2025-05-24 10:48:11 -04:00
bmaltais 1121544c48
Refactor README.md to clarify uv vs pip usage (#3246)
This commit significantly restructures the README.md to provide clearer documentation for using `uv` and `pip` for installation, upgrades, and launching the GUI.

A new 'Installation Methods' section has been added to centralize the explanation of `uv` and `pip`, outlining their differences and recommended use cases.

Existing sections ('Installation', 'Upgrading', 'Starting GUI Service') have been refactored to:
- Remove redundant instructions.
- Clearly refer to the 'Installation Methods' section.
- Distinguish between `uv`-specific scripts (e.g., `gui-uv.bat`) and `pip`-specific scripts (e.g., `gui.bat`).

The goal of these changes is to reduce confusion and make it easier for you to choose and follow the installation path that best suits your needs.

Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
2025-05-23 20:38:33 -04:00
陳鈞 44cca1c367
build(docker): switch from pip to uv for package management (#3229)
- Upgrade base image from Python 3.10 to Python 3.11 slim on Debian Bullseye.
- Replace manual PyTorch and dependencies installation with uv environment management and installation.
- Add installation of large dependencies (torch, triton, tensorflow, onnxruntime-gpu) explicitly to optimize image layer caching.
- Switch from pip to uv for package management and dependency synchronization.
- Replace pillow with pillow-simd on amd64 architecture using uv-managed pip for performance improvements.
- Adjust environment variables to use the virtual environment under /venv instead of local user installs.
- Create /venv directory with appropriate permissions and copy the virtual environment from build stage.
- Modify CMD to add --noverify flag when launching kohya_gui.py.
- Remove requirements_linux_docker.txt file, consolidating dependency management into uv and pyproject.toml.

Signed-off-by: CHEN, CHUN <jim60105@gmail.com>
2025-05-23 20:34:27 -04:00
bmaltais f28f96b111
Docs: Comprehensive README overhaul (#3245)
This commit significantly revamps the README.md to improve clarity,
organization, and completeness for you.

Key changes include:
- Enhanced project introduction: Clearly defines project purpose and key features.
- Improved structure:
    - Moved detailed installation guides (Docker, Runpod, Novita) and specific
      troubleshooting (Tesla V100) to separate files in `docs/`.
    - Standardized formatting for notes, warnings, and important messages.
- Content updates and additions:
    - Added a "Prerequisites" section.
    - Expanded the "LoRA" section with links to detailed documentation.
    - Updated "SDXL training" and "Masked loss" sections, removing obsolete notes.
    - Added "Contributing" guidelines and a "License" section.
    - Incorporated badges for GitHub stars, forks, license, and issues.
    - Removed the outdated "ToDo" section.
- Link verification: Ensured internal links are correct and external links
  are properly formatted.
- Change History: Condensed the verbose v25.0.0 entry for better readability.

These changes aim to provide a more user-friendly and informative entry
point for the Kohya's GUI project.

Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
2025-05-23 20:27:23 -04:00
bmaltais 829d5a6af3 Fix non sdxl device selection 2025-05-19 11:18:00 -04:00
bmaltais 25f8925aeb Phase 2 completed 2025-05-19 11:00:56 -04:00
bmaltais e580ad60e9 remove sd-scripts dependancies 1 2025-05-19 10:52:14 -04:00
bmaltais 7767a5a3ec Code cleanup 2025-05-18 17:36:24 -04:00