Attention Dropout Patcher
Attention Dropout Patcher melts coherence
- model
- MODEL
Most glitch packs are just noise overlaid on a finished image. This one is different: it reaches inside the model and breaks the machinery while the image is still being made. Attention Dropout Patcher is the pack's MODEL → MODEL node, and it's the one you'll reach for first if you want the "subject is dissolving into texture" look instead of a rainbow overlay.
What it actually does
The name isn't marketing - the node zeroes out attention values mid-sampling. Specifically, it clones your model's ModelPatcher and installs set_model_attn1_patch / set_model_attn2_patch hooks. When attention runs, a deterministic random subset of the V (value) rows gets multiplied by zero before the attention math happens. Those token positions simply stop contributing to the output.
The self-attention vs cross-attention split is where you get different flavors of broken:
- Self-attention dropout (
self_attn_dropout) breaks how a region talks to itself - local feature integration. Crank it and edges lose contact with each other, then local coherence collapses entirely. - Cross-attention dropout (
cross_attn_dropout) breaks how the prompt talks to the latent. The output drifts toward the unconditional prior - the model generates without listening, which is a very different kind of wrong than "blurry."
At 0.15 self-attn dropout you get the pack's "soft-bleed" preset: detail starts to fray but composition survives. At 0.40 ("veiled"), large gradients survive and detail doesn't. Max it out near 0.95 and the prompt's subject dissolves into pure texture - the "slag" asymptote. There's a whole sample gallery in the README rendered with one identical photo-realistic prompt so you can actually compare against an unpatched reference instead of squinting at colored blobs.
The inputs that matter
It's a small node. Four inputs, one output:
model- your checkpoint's model, straight off the loader.self_attn_dropout(0–0.95) - breaks local coherence.cross_attn_dropout(0–0.95) - breaks prompt adherence.seed- makes the dropout pattern reproducible.
A detail worth knowing: each patch only installs if its value is above 0, and both at 0 makes the node a no-op that just clones the model. So there's no hidden cost leaving this in a workflow.
The output is a patched MODEL. It drops into the model line anywhere - between the checkpoint loader and a normal KSampler, or into a CFGGuider if you're on the advanced pathway. You do not need SamplerCustomAdvanced for this node; plain KSampler works fine.
Determinism, done properly
This is the part that separates it from most glitch tools. The original v0.1 used a closure counter to seed the dropout, and it was broken: ComfyUI runs the patch node once at workflow start, so the counter persisted across sampling runs, and re-running with a new sampler setting gave you a different pattern than the first run despite the same seed. v0.2 fixed it (with help from blepping, maintainer of comfyui_overly_complicated_sampling) by deriving the per-call seed from the block id and current sigma ComfyUI passes into the patch. Same seed, same image, every run. That's the kind of reliability a glitch node rarely bothers with.
Install and gotchas
Same story as the rest of the pack - it ships in HitmanLoges/comfyui-glitch-lab-sampler with no extra Python dependencies (pure torch, plus ComfyUI's stable ModelPatcher API):
cd ComfyUI/custom_nodes
git clone https://github.com/HitmanLoges/comfyui-glitch-lab-sampler.git
Restart ComfyUI and it appears under the glitch-lab category. ComfyUI Manager can also find it if you search the pack title.
Two real catches. First, this is a diffusion-model tool: the pack explicitly doesn't support flow models yet, so Flux, SD3, and Wan will give you wrong or broken results - stick to SD 1.5 / SDXL, which is what the gallery and presets are built around. Second, the pack is early and actively asking for feedback, so if a node errors on your install, open an issue with your ComfyUI version rather than assuming you broke something. Start at 0.05–0.15 self-attn dropout, one knob at a time, and keep the other at 0.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | — | |
| self_attn_dropout | FLOAT | 0.000–0.95 | — |
| cross_attn_dropout | FLOAT | 0.000–0.95 | — |
| seed | INT | 00–4294967295 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| MODEL | MODEL | — |