Load Dart ๐
The loader for a tiny LLM that finishes your Danbooru tags for you
- DART_TOKENIZER
- DART_MODEL
Dart isn't a diffusion model - it's a small language model trained specifically to speak Danbooru tag. You give it a handful of tags (a character, maybe a rating, a couple of general tags) and it predicts a fuller, more coherent tag list the way a completion model predicts the next word. This node is the loader: point it at a Dart checkpoint on Hugging Face and it hands you the tokenizer and model that the rest of the dart folder's nodes (DartPrompt, DartGenerate) build on.
Why you'd want this at all
If you prompt Illustrious, NoobAI, or Pony-family checkpoints, you already know tags beat sentences - that's what those models were trained on. The catch is that a good Danbooru prompt is often 15-30 tags deep, covering pose, clothing, camera angle, and lighting, and hand-writing all of that every time is tedious. Dart (and its sibling family, KBlueLeaf's DanTagGen/DTG) exists to solve exactly that: it was trained on real Danbooru tag co-occurrence, so it knows which tags plausibly go together and can flesh out a sparse seed into a dense, sensible prompt. Think of it as autocomplete for tag prompting, not a creative writer.
Inputs and outputs
Just two fields, both plain strings rather than dropdowns:
- tokenizer - a Hugging Face repo id, defaulting to
p1atdev/dart-v1-sft. - model - same default, same idea.
Because these are free-text fields rather than a combo box, you're not locked to the one checkpoint - any Dart-format-compatible model on Hugging Face will work if you type its repo id in. Outputs are DART_TOKENIZER and DART_MODEL, two custom types that only this pack's other Dart nodes understand - wire both into DartGenerate.
Installing it
ComfyUI Manager: search "cgem156-ComfyUI". Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/laksjdjf/cgem156-ComfyUI
Restart ComfyUI afterward. There's no separate model file to hunt down and drop in a folder - this node downloads the tokenizer and weights from Hugging Face the first time you run it, using whatever repo id you left in the fields (the default p1atdev/dart-v1-sft works out of the box). That means your first queue on this node needs a working internet connection and a bit of patience while it fetches and caches the weights; after that it loads from the local Hugging Face cache like any other model.
Common issues
The failure modes here are the boring, honest kind: no internet access on first run means the download silently stalls or errors depending on your setup, since there's no bundled weight to fall back on. A typo in the repo id (or a private/gated repo you don't have access to) fails the same way any bad Hugging Face id would - check the string carefully before assuming the node is broken. And because tokenizer and model are independent fields, it's easy to accidentally leave one pointed at a different repo than the other after copy-pasting a workflow; if generation output looks garbled, check that both fields actually agree on the same checkpoint family.
Once loaded, this node alone doesn't generate anything - it just hands off DART_TOKENIZER and DART_MODEL to DartGenerate, which is where the actual tag prediction happens.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| tokenizer | STRING | p1atdev/dart-v1-sft | โ |
| model | STRING | p1atdev/dart-v1-sft | โ |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| DART_TOKENIZER | DART_TOKENIZER | โ |
| DART_MODEL | DART_MODEL | โ |