ComfyUI Node

Add Random Artists

Random danbooru artist tags in one node

By lonelyowl13·Created about a year ago·Updated 8 months ago· 1
Add Random Artists
  • artist_list
  • final_prompt
prompt
num_artists2
min_post_count0
weight_noise0.00
seed0
lumina_stylefalse

Bored of staring at the same prompt while you hunt for a seed? Add Random Artists is the lazy person's style variation: it picks a few danbooru artist usernames at random and drops them into your prompt, so every run gets a slightly different look without you typing a thing. On Illustrious and NoobAI models, artist tags are effectively style tags - name the artist and the model shifts toward their aesthetic. Randomizing them is like rolling a style dice, which is exactly what you want when you're moodboarding or batch-generating and don't care which particular flavor of good shows up.

It's from a tiny, near-unknown pack called artist_randomizer by lonelyowl13. No community reputation to lean on, no stars to quote - so judge it on the mechanism, which is simple and honest. One STRING goes in, one STRING comes out, no torch, no models, nothing to break.

How it works

When you run it, the node loads a bundled artists.json - 15,000 danbooru artists, each with a post count harvested from the board - then filters to artists with at least your min_post_count, seeds random with your seed, and picks num_artists names without replacement, so no duplicates in a run. Each selected name is escaped (parentheses become \(), and the whole list is spliced into your prompt.

The splice is the part to understand. If your prompt contains the placeholder __random_artists__, it gets replaced by the generated tags. If not, the tags get appended to the end. Use the placeholder. Appending glues the tag list straight onto whatever your prompt ends with, so if your prompt doesn't end in a comma, your last token and the first artist name merge into one garbage word - 1girl, solo becomes 1girl, soloathena_art. That's not a model quirk, it's plain string concatenation, and it's easily avoided.

Two optional behaviors are worth knowing. weight_noise, when above 0, gives each artist roughly a coin-flip chance of being emitted as (name:weight) with weight in 1 ± noise - a light attention roulette on top of the name roulette, handy in the 1.0–1.3 range. And lumina_style prefixes every tag with @, the syntax Lumina-style prompts expect. Both default off, which is the right default.

The inputs that matter

  • prompt - your base text; put __random_artists__ where the tags should land.
  • num_artists - 1 to 10. Two is a sane start; more than that and the style signal fights your actual content.
  • min_post_count - filters to artists with at least N danbooru posts. 0 includes everyone (yes, including the artist literally named banned_artist, top of the list at ~80k posts - a fun first-generation). Bump it to a few hundred if you want more recognizable styles.
  • seed - makes the pick reproducible. Same seed, same artists, every time.
  • artist_list - optional ARTIST_LIST from Load Artists; wire it in and it uses your list instead of the bundled one.

Output is final_prompt, a STRING - feed it straight into the CLIP Text Encode node's text input. If you want to see what it actually produced before it hits the sampler, run it through a Show Text node; that's the author's own suggestion and a good one.

Install

ComfyUI Manager works - search "artist_randomizer" and install. Otherwise clone it in:

cd ComfyUI/custom_nodes
git clone https://github.com/lonelyowl13/artist_randomizer

Then restart ComfyUI. There are no Python dependencies beyond the standard library, no model downloads - the 15k-artist list ships inside the repo, so it works offline. comfy node install artist_randomizer from the registry also works if you prefer the CLI.

Gotchas

  • The placeholder path is the reliable one; appending can merge tokens (see above).
  • Artist tags are a danbooru-ecosystem trick. Pony removed artist tags during training, and Flux-style prose models don't meaningfully resolve danbooru usernames, so this node shines on Illustrious/NoobAI family checkpoints and does little elsewhere.
  • If no artist passes your min_post_count, the node doesn't fail - it returns your prompt plus # [No eligible artists found] as plain text. That's a filter-too-high signal, not an error.

It won't replace a curated style LoRA, but for cheap, seedable style variation on anime checkpoints it's a fun, friction-free tool.

CategoryPrompt/Random

Inputs (7)

NameTypeDefaultDescription
promptSTRING
num_artistsINT21–10
min_post_countINT0
weight_noiseFLOAT0.000–1
seedINT0-9999999999999–9999999999999
lumina_styleBOOLEANfalse
artist_listoptARTIST_LIST

Outputs (1)

NameTypeDescription
final_promptSTRING