MiniMax H3 LoRA Inspector
Look inside an H3 LoRA before you waste a render finding out it's the wrong flavour
- info
The annoying thing about H3 LoRAs isn't that they fail. It's that some of them fail silently. A LoRA trained against a dense checkpoint has the wrong adaLN width for a pruned (curve) checkpoint, and ComfyUI's response is either a shape error you can act on - or nothing at all, on the unfortunate pair of curve bakes that happen to share AdaLN width, where the adapter loads happily and contributes roughly the opposite of what it was trained for. The pack's own measurement for that case is cos −0.375. You'd never guess it from the output; you'd just think the LoRA was bad.
This node is the flashlight. Point it at a file and it tells you its format, rank and adaLN basis without loading the weights into VRAM.
How it works
It reads the safetensors header rather than the tensors - file size, tensor count, dtypes, and the shapes it needs to infer the rest. That's why it's cheap enough to check a dozen candidates before you commit to one.
From those shapes it derives the things that actually decide whether a LoRA will work on your checkpoint: the key convention (ai-toolkit/diffusers, bare prefix, kohya/musubi, lycoris, or peft), the trainer if the file's metadata says so, the rank and whether an alpha is present, the adaLN dimensions, which module families the LoRA touches, and - where relevant - how many output heads it carries.
What you set, what comes out
One input: lora_name, a dropdown populated from your models/loras folder. No strengths, no model wire, nothing to get wrong.
One output: info, a STRING. Wire it to a Show Text node and read it. For a healthy H3 LoRA you'll get something along these lines:
file : style_lora.safetensors
size : 184 MB, 412 tensors
format : ai-toolkit (ai-toolkit)
dtype : bfloat16
rank : 32 (alpha present)
adaLN : 2688
modules : blocks.0.attn.qkv_proj, blocks.0.attn.out_proj, ...
The adaLN line is the one to read first. 2688 means dense-trained; 8 means curve-trained; none means the LoRA has no adaLN pairs at all, so the modality control on the stack will be a no-op for it and full-strength adaLN behaviour is irrelevant. Extra lines appear only when they apply: a PDD line if the file carries an Acc-style output-head bank, a base line, a passenger line.
Install
Same pack, same steps. No dependencies - the pyproject lists none.
cd ComfyUI/custom_nodes
git clone https://github.com/cicalooo/ComfyUI-H3-PowerLoraStack
Restart ComfyUI afterwards, then refresh the node list. Manager users can search MiniMax H3 Power LoRA Stack.
Common issues
If the file you want isn't in the dropdown, it isn't where ComfyUI thinks loras live - the list comes straight from folder_paths, so a subfolder three levels deep still shows up, but a file outside models/loras doesn't. Newly added files need a browser refresh to appear.
If the node prints not found, the name it stored no longer resolves. The pack is tolerant about separator drift (backslashes, case, a missing subfolder) but it refuses to guess when a name is ambiguous, and logs a warning instead.
The genuinely useful failure mode is the boring one: adaLN : none on a LoRA you assumed was doing adaLN work. The adaLN Modality node can only scale modulation that exists, and the stack's report will mark the control INACTIVE for exactly these files - the inspector just tells you sooner, before you've built the graph around it.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| lora_name | COMBO | 0 options: |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| info | STRING | — |