Skip to main content
The TrainLoraNode creates and trains a LoRA (Low-Rank Adaptation) model on a diffusion model using provided latents and conditioning data. It allows you to fine-tune a model with custom training parameters, optimizers, and loss functions. The node outputs the trained LoRA weights, a loss history map, and the total training steps completed.

Inputs

ParameterDescriptionData TypeRequiredRange
modelThe model to train the LoRA on.MODELYes-
latentsThe Latents to use for training, serve as dataset/input of the model.LATENTYes-
positiveThe positive conditioning to use for training.CONDITIONINGYes-
batch_sizeThe batch size to use for training (default: 1).INTYes1-10000
grad_accumulation_stepsThe number of gradient accumulation steps to use for training (default: 1).INTYes1-1024
stepsThe number of steps to train the LoRA for (default: 16).INTYes1-100000
learning_rateThe learning rate to use for training (default: 0.0005).FLOATYes0.0000001-1.0
rankThe rank of the LoRA layers (default: 8).INTYes1-128
optimizerThe optimizer to use for training (default: “AdamW”).COMBOYes”AdamW"
"Adam"
"SGD"
"RMSprop”
loss_functionThe loss function to use for training (default: “MSE”).COMBOYes”MSE"
"L1"
"Huber"
"SmoothL1”
seedThe seed to use for training (used in generator for LoRA weight initialization and noise sampling) (default: 0).INTYes0-18446744073709551615
training_dtypeThe dtype to use for training. ‘none’ preserves the model’s native compute dtype instead of overriding it. For fp16 models, GradScaler is automatically enabled (default: “bf16”).COMBOYes”bf16"
"fp32"
"none”
lora_dtypeThe dtype to use for lora (default: “bf16”).COMBOYes”bf16"
"fp32”
quantized_backwardWhen using training_dtype ‘none’ and training on quantized model, doing backward with quantized matmul when enabled (default: False).BOOLEANYes-
algorithmThe algorithm to use for training.COMBOYesMultiple options available
gradient_checkpointingUse gradient checkpointing for training (default: True).BOOLEANYes-
checkpoint_depthDepth level for gradient checkpointing (default: 1).INTYes1-5
offloadingOffload model weights to CPU during training to save GPU memory (default: False).BOOLEANYes-
existing_loraThe existing LoRA to append to. Set to None for new LoRA (default: “[None]”).COMBOYesMultiple options available
bucket_modeEnable resolution bucket mode. When enabled, expects pre-bucketed latents from ResolutionBucket node (default: False).BOOLEANYes-
bypass_modeEnable bypass mode for training. When enabled, adapters are applied via forward hooks instead of weight modification. Useful for quantized models where weights cannot be directly modified (default: False).BOOLEANYes-
Note: The number of positive conditioning inputs must match the number of latent images. If only one positive conditioning is provided with multiple images, it will be automatically repeated for all images. Note on training_dtype: When set to “none”, the model’s native compute dtype is preserved. For fp16 models, GradScaler is automatically enabled to prevent underflow during gradient computation. If fp16_accumulation is also enabled (via --fast flags), this combination can be numerically unstable and may cause NaN values. Note on quantized_backward: This parameter is only relevant when training_dtype is set to “none” and the model is a quantized model. It enables quantized matrix multiplication during the backward pass. Note on bypass_mode: When enabled, adapters are applied via forward hooks instead of modifying the model weights directly. This is particularly useful for quantized models where weights cannot be directly modified.

Outputs

Output NameDescriptionData Type
loraThe trained LoRA weights that can be saved or applied to other models.LORA_MODEL
loss_mapA dictionary containing the training loss values over time.LOSS_MAP
stepsThe total number of training steps completed (including any previous steps from existing LoRA).INT
This documentation was AI-generated. If you find any errors or have suggestions for improvement, please feel free to contribute! Edit on GitHub

Source fingerprint (SHA-256): e145145306330099293c8b4bb344ec0a38de690040bd796b84225f54638900c3