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.
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.
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.
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.
- 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>
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.
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.
* 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>
- 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>
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>
- 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>
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>