Repository navigation
RulzTrainer Getting started
You need an NVIDIA GPU, Python and a CUDA build of PyTorch (the installers handle it).
Windows: download the source from the latest release,
double-click install.bat, then run_webui.bat. It opens the WebUI in your browser. (A different CUDA build: pass its
PyTorch index URL to install.bat, for example install.bat https://download.pytorch.org/whl/cu128.)
Older NVIDIA drivers (v2.46.0): a PyTorch build newer than your driver supports installs without error and then
sees no GPU. Without an index URL, both installers read the CUDA version your driver supports from nvidia-smi and
install the newest build it runs (Windows: cu130, cu128 or cu126; Linux: cu128 or cu126), with a warning to update the
driver when it is older than the default.
Linux: ./install.sh, then ./run_webui.sh [port] [host]. On a machine with no display there are no native Browse
dialogs: type paths, or upload your dataset on the Dataset tab.
You can also install and update it from the RulZ AI Tools Suite launcher.
Or by hand: pip install -r requirements.txt, then python webui.py --port 7870 and open http://127.0.0.1:7870.
No telemetry (v2.45.0): RulzTrainer switches off onnxruntime's and Hugging Face's usage reporting
(ORT_DISABLE_TELEMETRY=1, HF_HUB_DISABLE_TELEMETRY=1) before either library loads. onnxruntime's Linux builds from
1.29, used for face scoring, otherwise send a device ID and machine details to Microsoft. A value you set yourself wins.
Downloads (v2.46.0): Hugging Face's downloader opens up to 64 connections per model file, which can saturate a home
connection. RulzTrainer caps it at 8 (HF_XET_FIXED_DOWNLOAD_CONCURRENCY=8), which still fills a fast link. Set the
variable yourself for another number.
-
Make a dataset. On the Dataset tab click Create dataset, name it, open it and upload your images. A caption
is a
.txtfile with the same name as the image; you can also type captions in the grid. 20 to 60 varied images is a normal range for a person. Pictures with a transparent background (cut-out PNGs) are trained and scored on white, as a viewer shows them (v2.45.0). - Open the Wizard. It sets up a character / person LoRA in six pages: Start (name, trigger word and whether the face, the body or both should count, see Character LoRAs), Model, Photos, Training, Samples & probes, and Extras & start. It starts from rank/alpha 32, AdamW 8-bit and a learning rate of 1e-4, and fills in the memory, resolution and sample settings from your GPUs and photos. The Advanced switch on the first page (the same switch as on the Train tab) shows every setting on each page. The last page asks whether you want experimental settings; Yes lists them with a badge for how well each is tested and a What is this? button that explains it and what testing found. A race of several setups is one of them (see Character LoRAs). Styles and concepts are set up on the Train tab.
- Pick the model. The default is single safetensors files from Comfy-Org, downloaded on the first run (about 10 to 20 GB depending on the model and the quantization; about 32 GB for P-H3-Image, about 50 GB for MiniMax-H3-Image and over 50 GB for MiniMax H3). Download now fetches them ahead of time.
- Start training. First it lists the usual mistakes, with Start anyway (it never blocks a run): images with no caption, captions that already contain the trigger word (it is added to every caption, so they would have it twice), and a learning rate far outside the usual range. The wizard's review shows the same list. The Monitor tab shows progress, the loss curve, the gradient norm, sample images and, for a character, the likeness scores. Training runs as its own process, so closing or reloading the page does not stop it. Switching to another tab and back does not reload the page. Add to queue instead lines the run up to start by itself once the current one (and any queued before it) is done. The Monitor's Queue section reorders, removes, pauses and resumes waiting runs. Kill pauses the queue, Stop moves on to the next run. Each queued run keeps a copy of the settings it was added with, so you can set up the next one right away. Keep the WebUI running: it is what starts the next run (a WebUI restarted with runs waiting pauses the queue until you resume it).
-
Collect the result.
output/<job>/<job>.safetensorsis the final LoRA, andoutput/<job>/<job>_<step>.safetensorsare the checkpoints saved along the way. The Monitor's Log & files view (Saved files) downloads any of them (pick one in the dropdown), all of them as one zip, the run's logs and settings as a zip, or every probe or sample image as a zip.
The Train tab holds every option, one section at a time: pick it in the list on the left (Job, Model, Dataset, LoRA
and so on). Each setting's explanation sits beside it, and rarely changed ones are folded under Advanced. Save and
Load (in the Job section) keep the whole form as a YAML file in configs/; Download and Upload beside them do the
same with a file on the device your browser runs on, for when the WebUI runs on another computer. The page keeps every
setting and the Advanced switch as you change them, so a reload or a restart comes back as you left it, and Reset puts
the defaults back. The same settings run from the command line:
python -m rulztrainer.train --config configs/example.yaml --set steps=1000 --set job_name=my_lora| Model | Size | Notes |
|---|---|---|
| Krea 2 | 12B | Train on Raw, use the LoRA on Turbo (or Raw). |
| MOSS-Image | 5B | Base or SFT checkpoints. The lightest of them. |
| FIBO 2.0 (Bria) | 8B | Train on dev, use the LoRA on Edit Turbo. |
| Qwen-Image 2.1 | 7B | Text-to-image LoRAs on one 16 GB card, with Fizgig's training adapter (on by default). Use the LoRA on the base model or Turbo. |
| FLUX 3 Klein (Black Forest Labs) | 5.5B | Train on Base, use the LoRA on Base or the 16-step distilled Klein. One 16 GB card trains it in bf16. Accept the FLUX Kommunity License on Hugging Face once first. |
| FLUX.2 Klein 9B (Black Forest Labs) | 9B | Train on Base, use the LoRA on Base or the 4-step distilled Klein. Text-to-image only. Non-commercial license: accept it on Hugging Face once first. Not yet tried in a real training run. |
| Ideogram 4 | 9.3B | One 16 GB card (int8). Trained on structured JSON captions: a same-name .json caption trains it best, a plain caption is wrapped into JSON. Non-commercial license, which covers your LoRA too. |
| MiniMax H3 | 33B | Experimental. A video + audio model: your pictures train as one-frame videos, for use in H3 video generation. Needs two 16 GB cards (model split) or one with block swap and plenty of RAM. Users in the USA, EU, UK and South Korea must apply for MiniMax's license. |
| P-H3-Image (PrunaAI) | 33B | Experimental. PrunaAI's image version of MiniMax H3: 8 steps, no guidance. Text-to-image LoRAs with ostris' training adapter (on by default). Same memory as MiniMax H3, and the same license terms. Not yet tried in a real training run. |
| MiniMax-H3-Image (MiniMax) | 33B | Experimental. MiniMax's own image model: 6 steps, no guidance, made for 4 to 20 megapixel pictures. Text-to-image LoRAs, trained with ostris' MiniMax-H3-Image training adapter by default. Same memory as MiniMax H3, and it uses H3's text encoder files. Its own license excludes the USA, EU, UK and South Korea unless MiniMax authorizes the use. Not yet run on the real model. |
Each model has its own sample defaults and turbo LoRA (turbo_lora: auto downloads it), so previews take 4 to 12
steps (Krea 2, Qwen-Image 2.1, Ideogram 4, MiniMax H3 and P-H3-Image: 8; MiniMax-H3-Image: 6; P-H3-Image and MiniMax-H3-Image need no turbo LoRA). FLUX 3 Klein has no turbo LoRA: its previews take 50 steps
unless you set the distilled Klein as the sampling model (16 steps). FLUX.2 Klein 9B previews take 4 steps with its turbo LoRA at
strength 1; lower the strength if they come out as static, which its author reports above 0.5. Sample size is an aspect ratio plus a resolution in megapixels.
The WebUI has a dark and a light look. The first time you open it in a browser it asks which one you want (Choose your look); the sun / moon button at the top right switches at any time. Stop saves the LoRA and ends the run, Kill ends it at once without a save.
Next: Models and memory if the card is small, or Character LoRAs if you are training a person.
RulZ AI Tools Suite
The apps
RulzTrainer
Rulz Training Captioner
Getting started
Using the app
Models and GPUs
Reference
RulZ LLM Suite
Using the app
- Getting Started
- Building the Engine
- Model Library
- Loading Models
- Chat
- MCP Tools
- Reverse Engineering
- Local API Server
Reference
Contributing
RulZ Coding Agent
Using the app
- Getting Started
- Projects and Tasks
- Approvals and Safety
- Model Settings
- Run and Share
- Notes and Instructions
- Extra Tools (MCP)
- Phone Access
Reference
Contributing
RulZ Image Organizer
Using RulZ
- Getting Started
- Library and Scanning
- People and Corrections
- Search and Filters
- Photo Viewer
- Appearance
More
RulZ Image Tournament
Using the app
- Getting Started
- How the Tournament Works
- Comparing Images
- Controls and Shortcuts
- Options and Settings
- Supported Formats
- Troubleshooting and FAQ
Developers
RulZ Image Crawler
Getting started
Using the app
Help
RulZ Image Preparer
Getting started
Using the app
Reference
RulZ Image Grid
Using the app
Help
RulZ Huggingface Manager
Using the app
Help
RulZ Simple Video Clip Extractor
Getting started
User guide
- Playback and Marks
- Fixed-Length Clips
- Exporting
- Crop, Rotate and Flip
- Colour Matching
- Distortion Repair
- Preferences and Themes
Help