Dart Compose Prompt V2
Dart Compose Prompt V2 (DanbooruTagsTransformerComposePromptV2) — ComfyUI node guide
- STRING
Dart Compose Prompt V2 is the form you fill out to build a prompt for the newer Dart models - dart-v2-sft and dart-v2-moe-sft - instead of writing the special-token soup Dart Generate actually expects by hand. It's the same idea as the plain Dart Compose Prompt node, but for the v2 prompt format, and v2 adds two fields v1 doesn't have: aspect ratio and character-identity strength.
Why there's a V2 at all
The v1 and v2 Dart models were trained on prompts with different structure, so they each need their own builder - the README is explicit that this node outputs the prompt "of Dart Generate node (dart-v2)," and it's not interchangeable with the v1 builder. Practically, that means: if Dart Load has dart-v2-sft or dart-v2-moe-sft selected, use this node. If it's dart-v1-sft, use plain Dart Compose Prompt instead.
The fields that matter
rating is the one field that looks the most different from v1. Instead of four Danbooru-format tags, this is a six-way enum: sfw, general, sensitive, nsfw, questionable, explicit. Four of those - general, sensitive, questionable, explicit - are Danbooru's actual four-tier content rating; sfw and nsfw sit alongside them as coarser, either/or options if you don't need that granularity.
copyright and character work the same as v1: single-line free text for series and named character, blank for an original character with no series tie.
aspect_ratio is new in V2, a five-way enum (ultra_wide, wide, square, tall, ultra_tall, default square) that steers the generated composition toward a particular canvas shape. You don't have to guess which value matches your actual output resolution - Dart Get Aspect Ratio takes your width and height and outputs exactly this enum type, so you can wire it straight in and have the aspect ratio tag follow your canvas automatically instead of drifting out of sync with it.
identity is the other new one: a three-way enum (none, lax, strict, default none). There's no tooltip on this field, but going by where it sits - right after character - it reads as a knob for how tightly the generation sticks to the character you named, from no special constraint (none) through a soft nudge (lax) to a hard lean (strict). If you're naming a specific character and finding the model wandering off it, this is the field to try tightening first.
length (five choices, very_short through very_long, default long) and general (multiline, default 1girl) work like v1 - length is roughly how much the model adds, general is where you seed tags you already want before the model fills in the rest.
The single STRING output wires into Dart Generate's prompt input.
Installing it
Install via ComfyUI Manager (search "ComfyUI-Dart") or clone by hand: cd ComfyUI/custom_nodes && git clone https://github.com/nkchocoai/ComfyUI-Dart.git, then restart. This node is part of the same pack as everything else here - no separate install, and no model download of its own, since it's just building a string.
Where people get stuck
Same core mistake as v1's builder, just in the other direction: pairing this node with dart-v1-sft produces a prompt shape that model was never trained on. Match this node with a v2 model specifically.
Past that, the aspect_ratio and identity fields are the two things worth actually testing rather than leaving on default - aspect_ratio because a mismatched composition tag fights whatever canvas size you're actually generating at, and identity because none (the default) means you're getting no extra push toward the character you named, which can be a surprise if you assumed naming the character alone was enough.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| copyright | STRING | — | |
| character | STRING | — | |
| rating | COMBO | 6 options: sfw, general, sensitive, nsfw, questionable, explicit | |
| aspect_ratio | COMBO | square | 5 options: ultra_wide, wide, square, tall, ultra_tall |
| length | COMBO | long | 5 options: very_short, short, medium, long, very_long |
| general | STRING | 1girl | — |
| identity | COMBO | none | 3 options: none, lax, strict |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| STRING | STRING | — |