Nodes/DIGIT Nodes/DIGIT Caption Preset Manager
ComfyUI Node

DIGIT Caption Preset Manager

Stop re-typing your captioning recipe — save it once, reuse it everywhere

By thedepartmentofexternalservices·Created 7 months ago·Updated 2 months ago· 0
DIGIT Caption Preset Manager
    • result
    ◄actionsave►
    ◄preset_name►
    ◄description►
    ◄system_prompt►
    ◄prompt_template►
    ◄modelgemini-2.5-flash►
    ◄temperature0.40►
    ◄max_tokens300►
    ◄example_captions►

    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 under preset_name.
    • load - pull a preset back into the node's fields so you can see it, or hand it to the Captioner via caption_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.

    CategoryDIGIT

    Inputs (9)

    NameTypeDefaultDescription
    actionCOMBOsave4 options: save, load, list, delete
    preset_nameSTRING—
    descriptionoptSTRING—
    system_promptoptSTRING—
    prompt_templateoptSTRING—
    modeloptSTRINGgemini-2.5-flash—
    temperatureoptFLOAT0.400–2—
    max_tokensoptINT30050–2000—
    example_captionsoptSTRING—

    Outputs (1)

    NameTypeDescription
    resultSTRING—