Nodes/ComfyUI-UtilsCollection/Advanced Consensus Configuration
ComfyUI Node

Advanced Consensus Configuration

The config node that decides how many resolutions your consensus encodes

By silveroxides·Created 2 months ago·Updated about 7 hours ago· 24
Advanced Consensus Configuration
    • Advanced Consensus Config
    blend_presetbaseline
    blend_methodconsensus
    consensus_typemedian
    alignment_methodsimilarity
    alignment_threshold0.40
    similarity_threshold0.00
    power_alpha2.0
    diversity_beta0.0
    rescale_normtrue
    global_scale1.00
    dynamic_similarity_contrastfalse
    soft_comfort_bandpassfalse
    position_weight0.00
    preserve_common_prefixfalse
    resolution_samples1
    sample_offset32

    Consensus conditioning is the pack's technique for making multi-image and multi-resolution conditioning more robust: instead of trusting one encode of one image at one resolution, you encode several variants and blend them so outlying noise gets rejected. UC_AdvancedConsensusConfiguration is the config node that controls that machinery - and specifically, the "Advanced" bit is resolution_samples and sample_offset, two knobs the base Text Consensus Blend Configurator doesn't have. This node's output is a config object, not conditioning; it feeds the pack's consensus-capable encoders like UC_AdvancedVisConEncoder.

    What it does

    It's a big schema, but the defaults are sane, and the blend_preset combo is the governor: baseline (default) for the pack's recommended config, off to bypass consensus entirely, or custom to expose all the manual parameters. For 90% of use, you'll pick a preset and touch at most one or two things. The manual knobs, when you need them:

    • blend_method - consensus aligns prompts and filters noise (the fancy one), linear just averages.
    • consensus_type - median rejects up to 50% of outlying noise; mean smooth-averages.
    • alignment_method / alignment_threshold / similarity_threshold - how prompts are aligned before blending: by semantic similarity or by index.
    • power_alpha (default 2) - soft-masking exponent; higher values penalize outliers.
    • diversity_beta (default 0) - raise toward 1.5 to dampen hyper-frequent details and boost variety.
    • rescale_norm (default on) - keeps activation energy high so blending doesn't wash out colors.
    • global_scale, dynamic_similarity_contrast, soft_comfort_bandpass, position_weight, preserve_common_prefix - the fine print. Leave most alone at first.

    Then the two features that justify "Advanced":

    • resolution_samples - the exact number of adjacent resolutions sampled (odd, 1–15, default 1). A value of 1 stays one sample; 3 means the encoder renders the conditioning at three neighboring resolutions and blends them. This is the "consensus across resolution" part.
    • sample_offset - the equivalent-square distance between adjacent samples in pixels (32–512, default 32). Bigger offsets produce more distinct visual grids at greater scale separation.

    The output is ADVANCED_CONSENSUS_CONFIG, which you pass into a consuming encoder. The tooltip's wording - "Exact odd adjacent-resolution sample count used only when consensus is enabled" - is the gotcha to remember: resolution_samples only matters when blend_preset isn't off. Turn consensus off and these knobs do nothing, which confuses people more than anything else in this node.

    Install

    ComfyUI Manager → search ComfyUI-UtilsCollection → install, or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/silveroxides/ComfyUI-UtilsCollection
    

    Restart. Deps: opencv-python and typing-extensions.

    When you'd reach for it

    When you're building an Advanced Visual Consensus encoder workflow and want control over how many resolution variants get blended and how far apart they sit. It's a power-user node - the "Advanced" in the name is earned - and the sensible path is: start with baseline, then experiment with resolution_samples = 3 and sample_offset = 32 before touching the consensus math underneath.

    Categoryadvanced/conditioning

    Inputs (16)

    NameTypeDefaultDescription
    blend_presetCOMBObaselinePreset configuration for Text Consensus-Weighted Blending. Set to 'off' to bypass CWB, or 'custom' to use the manual parameters below.
    blend_methodCOMBOconsensusActive only in 'custom' preset. 'consensus' aligns prompts and filters noise; 'linear' averages them.
    consensus_typeCOMBOmedianActive only in 'custom' preset. 'median' rejects up to 50% outlying noise; 'mean' is smooth averaging.
    alignment_methodCOMBOsimilarityActive only in 'custom' preset. 'similarity' aligns shifted prompt concepts; 'index' aligns them sequentially.
    alignment_thresholdFLOAT0.400–1Active only in similarity alignment. Minimum similarity to match words.
    similarity_thresholdFLOAT0.00-1–1Prunes passing words if similarity to consensus falls below this.
    power_alphaFLOAT2.00–10Soft-masking exponent. Higher values penalize outliers (e.g. 2.0).
    diversity_betaFLOAT0.00–10Diversity exponent. Dampens hyper-frequent details to boost variety (e.g. 1.5).
    rescale_normBOOLEANtrueNorm Rescaling. Keeps activation energy high to prevent washed-out colors.
    global_scaleFLOAT1.000–10Global scale multiplier applied to the blended outputs.
    dynamic_similarity_contrastBOOLEANfalseStretches similarities to soft [0.7, 1.0] band to boost contrast.
    soft_comfort_bandpassBOOLEANfalseSoftens the diversity bandpass ceiling to prevent clipping.
    position_weightFLOAT0.000–1Bias similarity alignment toward nearby normalized token positions. Zero preserves current behavior.
    preserve_common_prefixBOOLEANfalseKeep the longest numerically identical conditioning prefix exactly from the first input.
    resolution_samplesINT11–15Exact odd adjacent-resolution sample count used only when consensus is enabled. A value of 1 remains one resolution sample.
    sample_offsetINT3232–512Equivalent-square resolution distance between adjacent samples. Larger values create more distinct visual grids at greater scale separation.

    Outputs (1)

    NameTypeDescription
    Advanced Consensus ConfigADVANCED_CONSENSUS_CONFIG