Nodes/ComfyUI_EmAySee_CustomNodes/EmAySee Deep Reasoning Connector
ComfyUI Node

EmAySee Deep Reasoning Connector

The same reasoning LLM connector, now with a seed you can actually fix

By EmAySee·Created about a year ago·Updated 4 months ago· 2
EmAySee Deep Reasoning Connector
    • answer
    • thinking
    • full_raw
    promptEnter prompt here
    system_promptYou are a helpful assistant.
    api_urlhttp://10.0.0.71:5000/v1/chat/completions
    api_keysupersecretkey
    model_namedefault
    seed0
    max_tokens_per_call4096
    truncation_length32768
    temperature0.60
    top_p0.95
    min_p0.50
    top_k20
    repetition_penalty1.15
    repetition_penalty_range2048
    reasoning_effortlow
    xtc_threshold0.10
    xtc_probability0.00
    dry_multiplier0.8
    dry_base1.75
    dry_allowed_length1
    auto_continuetrue
    max_continues3
    stop_on_errortrue

    This is EmAySee_DeepReasoningConnector with one field added: a seed input that actually gets sent to the backend. Same three outputs (answer, thinking, full_raw), same auto-continue loop that re-posts when the model hits its token cap, same think-tag parsing that peels the chain-of-thought out of the reply. If you've read that article, you know the mechanics. The question here is only whether the seed earns its keep.

    What the seed does (and doesn't)

    The non-seeded connector's seed is a prop - this one isn't. The node passes seed straight into the payload, so a backend that honors it (text-generation-webui does) will produce a reproducible generation for a given prompt and seed. That's the real value: for prompt-engineering, where you want to A/B the same instruction across seeds, or for logging where a run should be reproducible later, a fixed seed turns "LLM said something random" into "LLM said this, and here's how to get it again."

    Two caveats, both worth knowing before you trust it:

    • The backend has to honor the field. Many OpenAI-compatible proxies and some llama.cpp setups ignore an incoming seed or only apply it if sampling is enabled. If your output still varies with seed fixed, that's your server, not the node.
    • control_after_generate is on by default. ComfyUI will advance/randomize the seed widget after every run. To actually reproduce a result you must turn that control off and lock the seed. The node sends the seed faithfully; it doesn't fight the UI over it.

    Inputs and outputs

    Everything from the sibling node carries over: prompt, system_prompt, api_url (default is again the author's LAN http://10.0.0.71:5000/v1/chat/completions - change it), api_key, model_name, reasoning_effort, the textgen sampler knobs, auto_continue/max_continues, stop_on_error. The addition is seed, an INT 0–2^64. Outputs: answer, thinking, full_raw - the same three ports, wired into text displays or downstream text-processing.

    Install

    Same pack, same path: ComfyUI Manager → search "EmAySee", or

    cd ComfyUI/custom_nodes
    git clone https://github.com/EmAySee/ComfyUI_EmAySee_CustomNodes
    

    then restart. No extra dependencies - requests ships with ComfyUI - and no model downloads. The model itself lives in your local text-generation-webui / llama.cpp server, which the node reaches over HTTP.

    The honest take

    If you want reproducible LLM output in ComfyUI, this is the version to reach for - the plain connector's seed is decorative and this one isn't. Just remember reproducibility here is best-effort: local samplers with XTC/DRY/min-p active are deliberately stochastic, and a "reproducible" run mostly means "same starting point, same dice." Good enough for A/B testing prompt wording, which is what most people actually need it for.

    CategoryEmAySee/LLM

    Inputs (23)

    NameTypeDefaultDescription
    promptSTRINGEnter prompt here
    system_promptSTRINGYou are a helpful assistant.
    api_urlSTRINGhttp://10.0.0.71:5000/v1/chat/completions
    api_keySTRINGsupersecretkey
    model_nameSTRINGdefault
    seedINT00–18446744073709550000
    max_tokens_per_callINT40961–8192
    truncation_lengthINT327680–131072
    temperatureFLOAT0.600–2
    top_pFLOAT0.950–1
    min_pFLOAT0.500–1
    top_kINT200–200
    repetition_penaltyFLOAT1.151–2
    repetition_penalty_rangeINT20480–8192
    reasoning_effortCOMBOlow3 options: low, medium, high
    xtc_thresholdFLOAT0.100–1
    xtc_probabilityFLOAT0.000–1
    dry_multiplierFLOAT0.80–2
    dry_baseFLOAT1.751–5
    dry_allowed_lengthINT10–20
    auto_continueBOOLEANtrue
    max_continuesINT31–10
    stop_on_errorBOOLEANtrue

    Outputs (3)

    NameTypeDescription
    answerSTRING
    thinkingSTRING
    full_rawSTRING