Smart Variation (NLP)
'NLP' is doing heavy lifting in this name
- smart_prompt
The name is a lie, and knowing that up front saves you an afternoon of disappointment: Smart Variation does not call any API, loads no LLM, and needs no key. It's a small lookup table of keyword mappings dressed up in NLP clothes. But once you accept that, it's actually a convenient little node - the right words trigger the right modifiers, and you never touch a modifier_id number again.
Here's exactly what happens when you run it. The node takes your text and an intent string, lowercases the intent, and checks it against a hardcoded dictionary of time-of-day keywords: "morning" maps to modifiers 1–3, "golden hour" to 7, "sunset" to 8, "blue hour" to 10/17/18, "wet" to 17–20, and so on. First keyword that appears in your intent wins, and the corresponding lighting modifier gets applied. So "make it golden hour" becomes {your prompt}, golden hour, warm low-angle side-light, clear sky. If your intent mentions "style" or "aesthetic" and names one of the ten built-in styles, it runs a style transformation instead. And if nothing matches at all, the fallback is to treat your whole intent as a custom style description and append it.
That's the whole "smart" part. It's pattern matching with a graceful fallback, not comprehension.
Only two inputs, both strings: text (your base prompt) and intent (one line, e.g. "make it golden hour wet road cyberpunk style"). One output, smart_prompt, a plain STRING for any prompt input. Because the matching is literal, the README's own troubleshooting tip is the real rule of thumb: use the words that actually appear in modifier descriptions - golden hour, wet, night, blue hour - and don't get poetic. "make it moody at dusk" will miss every mapping and just get appended as a style phrase, which honestly still works okay on modern models.
Install is identical to the rest of this pack: it's a zero-dependency pure-Python node. ComfyUI Manager → search "Variationator" → install → restart, or cd ComfyUI/custom_nodes && git clone https://github.com/MushroomFleet/ComfyUI-Variationator.git then restart. The repo has no requirements.txt despite an install-portable.bat referencing one - skip that. It shows up under Prompt Orchestration.
Where it shines: quick one-off experimentation, especially on a phone or when you're mid-workflow and don't want to go hunting for modifier IDs. Where it'll annoy you: it's lighting- and style-centric. Say "make it a snowy mountain town" and it won't reach for the weather or location dimensions - it just doesn't know them. And the matching is order-dependent, so a badly phrased intent silently does the fallback thing instead of erroring. Both are worth knowing before you trust it with a full pipeline. For precise multi-dimension control, the single modifier nodes are the better tool; for "I want golden hour" in two seconds, this is fine.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| text | STRING | Subject description here | — |
| intent | STRING | make it golden hour | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| smart_prompt | STRING | — |