Nodes/NovelAI GENYTOOLS/NAI 负面提示词处理器
ComfyUI Node

NAI 负面提示词处理器

Blocks for your negative prompt

By XTOGENY·Created 2 months ago·Updated 24 days ago· 19
NAI 负面提示词处理器
  • prompt
  • 负面提示词
  • 摘要
chunks_json{}
seed0
render_text

The plain negative prompt node just holds text. NAI 负面提示词处理器 (Negative Prompt Processor) is the one that does things to the text before it goes out - randomization, Prompt Chunks, emphasis, and the V5-specific trick where quoted phrases get auto-wrapped into official teXt: blocks. If you've ever wanted a negative prompt that picks from a pool of words per run, or wondered what the NovelAI teXt: syntax is actually for, this is the node.

You feed it a base NAI_NEGATIVE_PROMPT, a JSON block of chunks, a seed, and a render string, and it hands back a processed NAI_NEGATIVE_PROMPT plus a 摘要 summary describing what it did. There's a matching positive processor that behaves identically; the two are separate only because the pack types prompts by polarity so you can't cross-wire them.

What the inputs do

  • prompt - the base NAI_NEGATIVE_PROMPT. This is your fixed text; the processor layers the chunks and randomization on top.
  • chunks_json - a multiline JSON string (default {}), the workhorse field. This is where you define named chunks of text and randomization pools - groups of alternatives that the processor picks from, seeded by the seed input. Same seed, same pick, which is what makes a randomized negative reproducible across runs and resumable if the request dies.
  • seed - 0 to 4294967295. Drives any randomization in the chunks. Change it to roll different picks.
  • render_text - a text field that controls how the final prompt is assembled (which chunks are active, how they're joined). Default empty = use everything.

The V5 detail worth knowing: for any quoted text in the prompt, the processor auto-generates an official teXt: block, and it deliberately skips blocks you've already written by hand - so no double-wrapping. teXt: is NovelAI's mechanism for text-rendering-in-image, and having it work automatically inside a ComfyUI node is genuinely convenient.

Outputs

负面提示词 (the processed NAI_NEGATIVE_PROMPT) goes into any sampler's negative socket. 摘要 is a string describing the processing that happened - handy to pipe into a text display to confirm your random chunks actually resolved the way you wanted before the request goes out (and before it costs Anlas).

Install and the honest caveat

Search ComfyUI-NovelAI-GENYTOOLS in ComfyUI Manager, or git clone https://github.com/XTOGENY/ComfyUI-NovelAI-GENYTOOLS.git into custom_nodes, pip install -r its requirements, and set your Persistent API Token in ComfyUI settings.

The caveat is the one every negative-prompt tool carries these days: a negative only pushes on the model if the model's CFG actually has an unconditional path to steer against. NovelAI's models do, so negatives remain meaningful here - but randomization is a lever for exploring, not a magic quality knob. Use the processor when you want a per-run variable negative (different anatomical boogeymen, different "avoid this style" pools) across a batch. For a fixed negative you trust, the plain prompt node plus the join node is fewer moving parts and less to debug.

CategoryNovelAI 2.0/提示词

Inputs (4)

NameTypeDefaultDescription
promptNAI_NEGATIVE_PROMPT
chunks_jsonSTRING{}
seedINT00–4294967295
render_textSTRING

Outputs (2)

NameTypeDescription
负面提示词NAI_NEGATIVE_PROMPT
摘要STRING