Nodes/ComfyUI-LoRA-Block-Filter/Ideogram4 LoRA Filter (Blocks)
ComfyUI Node

Ideogram4 LoRA Filter (Blocks)

The Ideogram4 LoRA loader that lets you dial out blocks

By DanrisiUA·Created 4 months ago·Updated 3 months ago· 36
Ideogram4 LoRA Filter (Blocks)
  • model
  • block_weights
  • model
  • info
lora_name
strength_model1.00
enabledtrue
folder_path
lora_name_override

Ideogram 4 is a 34-layer single-stream DiT, and if you're training your own LoRAs for it you've probably hit the same wall as everyone else: one global strength, applied to all 34 layers whether they need it or not. Ideogram4 LoRA Filter (Blocks) is the node that loads an Ideogram 4 LoRA and applies it selectively - per-block and per-layer-type - so you can keep the character and drop the style bleed. It's the loader half of the ComfyUI-LoRA-Block-Filter pack (by Danrisi, the Anima "UltraReal" fine-tuner), paired with Ideogram4 LoRA Block Weight, which supplies the recipe.

What's different about this one

Compared to the Anima and Flux filters in the same pack, this node is stripped down in one specific way: there's no clip input. Ideogram 4's text conditioning runs through the Qwen3-VL encoder and the filter only patches the diffusion model, so you get a MODEL and an info string out - no CLIP to pass around. That matches how the model actually works, and it makes chaining simpler: model in, filtered model out.

The other thing worth knowing before you reach for it: the filter only recognizes LoRA keys in the standard ai-toolkit format - diffusion_model.layers.N.attention.qkv, feed_forward.w1/w2/w3, adaln_modulation, plus the global keys like input_proj, llm_cond_proj and final_layer. Since ai-toolkit is the de facto trainer for every new architecture (it had Ideogram support essentially at launch), that's the format your LoRAs will almost certainly be in. If you train with something that names keys differently, nothing matches, and every key silently passes at full strength.

Inputs

  • model - from your Ideogram 4 checkpoint (fp8 or nf4; there's no bf16 build).
  • lora_name - dropdown from models/loras.
  • strength_model - the global weight, -10 to 10.
  • block_weights - the IDEOGRAM4_BLOCK_WEIGHTS output from the Block Weight node. The whole point; skip it and the LoRA applies uniformly.
  • enabled - bypass toggle.

Optional folder_path and lora_name_override for loading outside the loras folder.

Outputs

model - the patched model, wired into your sampler. info - a STRING like the other filters in the pack, reporting how many keys were applied and how many got filtered. Given how hard it is to eyeball 34 layers, that count is your main debugging tool: "0 filtered" means your block weights aren't matching the LoRA's keys.

Install

ComfyUI Manager has it under the pack title, or:

cd ComfyUI/custom_nodes
git clone https://github.com/DanrisiUA/ComfyUI-LoRA-Block-Filter

Restart, look under Smart LoRA. No requirements.txt, no model downloads - pure ComfyUI-native LoRA machinery. You do need a current ComfyUI: Ideogram 4 support is recent, and this pack assumes the model module exists.

The honest caveat

Ideogram 4's LoRA ecosystem stalled fast after release - the non-commercial license and the trained-in refusal filter sent most LoRA production to Krea 2 within weeks. So this node is for the people actually training and running Ideogram 4 LoRAs locally, not a large audience. If that's you, it's the most complete block-filtering option the model has, and the no_style_leak preset (which zeroes the LLM conditioning path) is where you start.

CategorySmart LoRA

Inputs (7)

NameTypeDefaultDescription
modelMODEL
lora_nameCOMBO0 options:
strength_modelFLOAT1.00-10–10
block_weightsIDEOGRAM4_BLOCK_WEIGHTS
enabledBOOLEANtrue
folder_pathoptSTRING
lora_name_overrideoptSTRING

Outputs (2)

NameTypeDescription
modelMODEL
infoSTRING