Get Chars Above Threshold From Text
Same character tagger, a name that oversells it
- image
- STRING
Worth saying upfront, because it'll save you a confused minute: despite the "From Text" in the name, this node's required input is an IMAGE, exactly like the plain GetCharactersAboveThresholdNode. If you came here expecting to pass in a caption or a tag string and get characters extracted from that, that's not what this schema does - it's an image-in tagger like the rest of the family. That naming mismatch isn't documented anywhere; it's a genuine quirk in how this pack labels things, not a mistake on your end.
Functionally, this is the same job as GetCharactersAboveThresholdNode: run a WD-style Danbooru tagger over an image and return only the character tags it's confident about - named characters like hatsune_miku, above your threshold. Illustrious- and NoobAI-family models recognize enough named characters from their Danbooru training data that a character tag alone often resolves the look with no LoRA needed, which is what makes automatically extracting that tag from an image genuinely useful: sorting datasets by character, or confirming a generation actually matches the character you asked for.
How it works
model_name (default EVA02_Large) selects the tagger backbone from the same set the whole family shares - ViT_Large, SwinV2, ConvNext/ConvNextV2, MOAT, ViT, and _v3 revisions of a few of those. threshold (default 0.4) is the confidence floor; character recognition tends to run noisier than general tags, so push it up if you're getting false positives on characters the model barely recognizes. replace, matching the convention across this tagger family, is most likely the underscore-to-space toggle on the raw output tags.
Inputs and outputs
- image - the
IMAGEto tag, not a string, whatever the name implies. - threshold (default
0.4) - confidence floor for a character tag. - model_name (default
EVA02_Large) - the tagger backbone. - replace (default
false) - likely swaps underscores for spaces.
Output is a single STRING - character tags only.
Installing ComfyUI-LogicUtils
ComfyUI Manager: Install Custom Nodes → search "ComfyUI-LogicUtils" → install → restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/aria1th/ComfyUI-LogicUtils
Restart ComfyUI. Real ML dependency here - expect a model download on first use of a given model_name. If a tagger node errors on first run with a missing package, check LogicUtils' auto-install hook (COMFYUI_LOGICUTILS_AUTO_INSTALL=1) or its requirements.txt.
Worth knowing
If this node and GetCharactersAboveThresholdNode really are functionally identical despite the different names - which is what their schemas say - the safest move is to just pick whichever one's already on your canvas rather than treating the "From Text" variant as doing something special. This is part of aria1th's (AngelBottomless's) LogicUtils pack, the same handle behind Illustrious XL, which is presumably why a Danbooru tagger family exists here at all. Public commits stopped in January 2026 and the README never moved past "documentation is being prepared," so a naming inconsistency like this one is likely to just stay as-is.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| thresholdopt | FLOAT | 0.40 | — |
| replaceopt | BOOLEAN | false | — |
| model_nameopt | COMBO | EVA02_Large | 10 options: EVA02_Large, ViT_Large, SwinV2, ConvNext, ConvNextV2, ViT, +4 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| STRING | STRING | — |