Nodes/ComfyUI-TJ_NODE/Klein 4B LoRA Analyzer (TJ)
ComfyUI Node

Klein 4B LoRA Analyzer (TJ)

Klein 4B LoRA, dissected into its 25 blocks — dial the bad parts down

By designloves2·Created 4 months ago·Updated 4 days ago· 13
Klein 4B LoRA Analyzer (TJ)
  • model
  • clip
  • model
  • clip
  • analysis_text
  • analysis_json
lora_name
global_strength1.00
use_originalfalse
block_config{}

Klein 4B LoRA Analyzer (TJ) is the Flux2 Klein 4B member of the pack's LoRA analyzer family. Where the Krea2 variant covers a 32-block structure, Klein 4B is laid out as 5 double blocks + 20 single blocks = 25 blocks total. Everything else about the workflow is the same as its siblings: you load a Klein 4B LoRA, see which blocks actually carry its effect, and adjust or zero them individually instead of living with one global strength that weakens the good parts along with the bad.

How it works

Klein's architecture (a size-distilled Flux 2 line, per the pack's own model docs) uses a double/single transformer-block split, and the analyzer maps LoRA keys onto that split automatically. The shared analyzer core handles the key-format gymnastics - dot, kohya, diffusers, LoKr, and short forms are all recognized - so the node doesn't care which trainer wrote the file. It then shows you the per-block strengths, lets you edit them (either by dragging the live bars or by dropping a JSON block_config in), and patches the model with your config.

Because it's architecture-aware, it catches the classic mistake: dropping a 9B LoRA into the 4B analyzer. Both Klein variants share the same UI and nearly the same block vocabulary, but the 9B has 8 double + 24 single = 32 blocks. Feed a 9B LoRA to the 4B node and it detects the mismatch and warns you instead of silently producing garbage - the kind of guardrail that saves a real hour of confusion.

Inputs and outputs that matter

  • model - the Klein 4B model the LoRA patches.
  • lora_name - the LoRA file.
  • global_strength - master strength, -5 to 5.
  • use_original - A/B against the unmodified model.
  • block_config - JSON of per-block overrides (the UI generates this).
  • clip - optional.

Outputs: model (patched, wire it into your sampler), clip, analysis_text, analysis_json (both STRING).

Install

ComfyUI Manager → Install Custom Nodes → search TJ_NODE, or:

cd ComfyUI/custom_nodes
git clone https://github.com/designloves2/ComfyUI-TJ_NODE

Restart ComfyUI. No extra dependencies. Category: ✨ TJ_Node/Lora Analyzer.

Should you use it?

Honest answer: this is a power-user tool. If you're training Klein 4B LoRAs or curating them heavily, block-level control is a real edge - the community's whole training story for the Klein line is that it's picky (small batches and high learning rates famously don't work on Klein 9B, per the training write-ups), and the LoRA quality problems that come out of that process are exactly the localized ones this node lets you surgically fix. If you're a typical consumer who loads a LoRA and sets it to 0.8, the analyzer's UI will feel like a lot of machinery for a job a normal loader does. Reach for it when you're debugging a LoRA, not when you're just using one.

Category ✨ TJ_Node/Lora Analyzer

Inputs (6)

NameTypeDefaultDescription
modelMODEL
lora_nameCOMBO0 options:
global_strengthFLOAT1.00-5–5
use_originalBOOLEANfalse
block_configSTRING{}
clipoptCLIP

Outputs (4)

NameTypeDescription
modelMODEL
clipCLIP
analysis_textSTRING
analysis_jsonSTRING