Nodes/Searge-LLM for ComfyUI v1.0/Searge Advanced Options Node
ComfyUI Node

Searge Advanced Options Node

Temperature, top-p, top-k for the LLM node

By SeargeDP·Created 2 years ago·Updated 8 months ago· 162
Searge Advanced Options Node
    • adv_options_config
    temperature1.00
    top_p0.90
    top_k50
    repetition_penalty1.20

    This one doesn't do anything on its own - it's a config bundle for Searge LLM Node. Wire it into that node's optional adv_options_config input and you get hands-on control over how the local LLM samples text: temperature, top-p, top-k, repetition penalty. Skip it entirely and Searge_LLM_Node runs with exactly the same four values this node ships as defaults - the README says so directly - so you only need this node the moment you want something other than the defaults.

    What the four knobs actually do

    These are the standard llama.cpp sampling parameters, not anything Searge invented:

    • temperature (default 1.0) - how much randomness goes into token selection. Lower makes the model more confident and repetitive-but-safe; higher makes it more varied and more likely to go off the rails. If your generated prompts feel bland and samey, this is the first thing to raise; if they're incoherent, it's the first thing to lower.
    • top_p (default 0.9) - nucleus sampling. The model only samples from the smallest set of tokens whose cumulative probability adds up to p. Lowering it trims away the long tail of low-probability, weird-token choices.
    • top_k (default 50) - a hard cap on how many candidate tokens get considered at each step, regardless of probability. 0 means no cap.
    • repetition_penalty (default 1.2) - pushes down the odds of a token that's already appeared. Above 1.0 discourages repeats; push it too high and the model starts avoiding perfectly reasonable words just because it already used them once, which reads as forced or stilted.

    Output is a single adv_options_config (SRGADVOPTIONSCONFIG) - a typed bundle of all four values, meant to plug into nothing except Searge_LLM_Node's matching optional input. It does nothing at all if you don't connect it.

    What it doesn't control

    Randomness in which result you get from a fixed set of sampling parameters is the seed's job, and that lives on Searge_LLM_Node itself (random_seed), not here. This node only shapes the probability distribution the sampler draws from; the seed decides which draw you actually land on. If two runs with identical AdvOptions settings give you different output, check whether the seed changed before you start second-guessing temperature.

    Installing it

    Same pack as Searge_LLM_Node - one install covers both. Via ComfyUI Manager: search "Searge-LLM for ComfyUI", install, restart. Manually:

    cd ComfyUI/custom_nodes && git clone https://github.com/SeargeDP/ComfyUI_Searge_LLM
    

    This node itself needs nothing extra - no model file, no separate dependency. It only becomes useful once Searge_LLM_Node is actually working end to end, which means llama-cpp-python installed correctly and a GGUF model sitting in ComfyUI/models/llm_gguf. If you haven't got that far yet, the Searge LLM Node article covers the installation gotchas - mostly around matching the llama-cpp-python wheel to your Python and CUDA build.

    Common issues & troubleshooting

    There's not much that goes wrong with this node specifically, since it does no computation of its own - it just packages four numbers. The real failure modes all live one hop downstream, on Searge_LLM_Node:

    • Nothing changes when you adjust these values. Double-check the adv_options_config output is actually wired into Searge_LLM_Node's optional input of the same name - an unconnected AdvOptions node is a no-op, and Searge_LLM_Node silently falls back to its own baked-in defaults. Since those defaults happen to match this node's defaults exactly, the mistake is invisible unless you deliberately set something far off-default and watch for it to actually take.
    • Output degrades into repetitive or garbled text after cranking values up. Standard LLM-sampling behavior, not a bug in the node: push temperature well above 1.0 or repetition_penalty past roughly 1.3 and quality falls off fast. Move one value at a time and compare against a fixed seed - the same debugging discipline that applies everywhere else in this stack.
    CategorySearge/LLM

    Inputs (4)

    NameTypeDefaultDescription
    temperatureFLOAT1.00
    top_pFLOAT0.90
    top_kINT50
    repetition_penaltyFLOAT1.20

    Outputs (1)

    NameTypeDescription
    adv_options_configSRGADVOPTIONSCONFIG