DIGIT Caption Preset Manager
Stop re-typing your captioning recipe — save it once, reuse it everywhere
- result
Here's the situation the DIGIT Caption Preset Manager exists for: you spent an afternoon tuning a system prompt until your Gemini captioner produced exactly the right style of training captions - the phrasing, the tone, the level of detail, the example captions that keep it on the rails. And now the next dataset starts and you'd have to rebuild all of that from memory. This node saves the whole recipe as a named preset and reloads it in one click.
It's the bookkeeping half of the DIGIT Captioner. The Captioner does the captioning; this node manages the recipes that tell it how to caption. If you caption more than one dataset, or you caption across projects, this is the node that stops you from maintaining captioning prompts in your head.
How it works
action is the whole interface: save, load, list, delete. You give a preset_name, and on save it stores whatever recipe fields you've filled in - system_prompt, prompt_template, model, temperature, max_tokens, and example_captions (the last one is the secret weapon: a few examples of captions you consider correct, and the model stays in that lane). A description field lets you remember which dataset or style a preset was built for.
What each action does:
save- write the current recipe underpreset_name.load- pull a preset back into the node's fields so you can see it, or hand it to the Captioner viacaption_preset.list- see what presets exist.delete- remove one you're done with.
Output is a single result string confirming what happened. The natural flow is: tune the Captioner's fields once, save the preset, then on future datasets just type the name and load it.
Installing it
Standard for the pack:
cd ComfyUI/custom_nodes
git clone https://github.com/thedepartmentofexternalservices/comfyui-digit.git
cd comfyui-digit
pip install -r requirements.txt
Or ComfyUI Manager → search comfyui-digit → install → restart. Like the Caption Find & Replace node, this one is pure local bookkeeping - no cloud calls, no API key. The presets live in the pack's config storage, so they survive restarts but are tied to this ComfyUI install. If you run ComfyUI on several machines (this pack has whole deploy scripts for exactly that), remember presets don't roam on their own.
Why you'd actually bother
Two scenarios make this worth the two minutes to learn. First, the "one good recipe" project: you've nailed a caption style that works for your character and you want it reproducible on the next run - a saved preset is the reproducibility. Second, the team case: different people, same captioning standard. A saved preset means nobody has to reverse-engineer what the good captions looked like. It's not glamorous, but it's the difference between consistent training data and a dataset where every folder was captioned by a different person's vibes.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| action | COMBO | save | 4 options: save, load, list, delete |
| preset_name | STRING | — | |
| descriptionopt | STRING | — | |
| system_promptopt | STRING | — | |
| prompt_templateopt | STRING | — | |
| modelopt | STRING | gemini-2.5-flash | — |
| temperatureopt | FLOAT | 0.400–2 | — |
| max_tokensopt | INT | 30050–2000 | — |
| example_captionsopt | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| result | STRING | — |