Get Parameters from Analysis
Get Parameters from Analysis
- params_pipe
- seed
- steps
- cfg
- sampler
- scheduler
- width
- height
- denoise(Hires. Fix)
This one doesn't fetch anything from Civitai and doesn't do any thinking of its own. It's the adapter cable. Model Analyzer (Checkpoint) hands you a bundle of "here's what the community commonly runs this checkpoint at" wrapped up in a single custom pipe object - and a CIVITAI_PARAMS pipe isn't something any standard ComfyUI node can plug into. This node cracks that bundle open into eight ordinary sockets your sampler and latent nodes already understand.
What it actually does
Nothing more than unpack. Wire the Analyzer's params_pipe output into this node's params_pipe input, and it splits out into individual typed values - the exact sampler, scheduler, CFG, and resolution the community-tally settled on - ready to run straight into a KSampler and EmptyLatentImage without you retyping a single number by hand.
Inputs and outputs
One input: params_pipe, and it has to come from Model Analyzer (Checkpoint) - CIVITAI_PARAMS is a type this pack invents, nothing else produces it.
The outputs are the genuinely short, useful list:
seed,steps,cfg- feed straight intoKSampler.sampler,scheduler- same, and both are pulled from ComfyUI's actual internal sampler/scheduler lists (everything fromeuleranddpmpp_2mthroughres_multistepanduni_pc), so they'll drop into aKSamplercombo box cleanly.width,height- feedEmptyLatentImage.denoise(Hires. Fix)- a separate denoise value meant for a second-pass, hi-res-fixKSampler, not your first pass. Leave your first pass at denoise 1.0 (generating from pure noise) and use this one only if you're chaining a hires-fix step afterward.
Installing it
It ships in the same pack as everything else here, so there's nothing separate to install:
cd ComfyUI/custom_nodes
git clone https://github.com/BAIKEMARK/ComfyUI-Civitai-Toolkit
pip install -r requirements.txt
Or just search Civitai Toolkit in ComfyUI Manager. Restart, then find both this node and its partner under Civitai β π Analyzer.
The take
Community-common values are a real, useful starting point - better than guessing blind - but they're a statistical average, not a rule. CFG and sampler defaults are architecture-dependent: SD1.5/SDXL-lineage checkpoints cluster around CFG 5β9, while distilled or flow-matching checkpoints want something close to CFG 1 with a totally different sampler family. If the Analyzer sampled a mixed bag of showcase images across different eras of a model's life, what comes out here can skew toward whatever was popular back then rather than what the checkpoint's actual architecture wants now. Use it to get in the right neighborhood fast, then sanity-check against what the model card itself says if the results look off.
Troubleshooting
Graph validation error on params_pipe. You've either left it unconnected or tried to feed it something that isn't CIVITAI_PARAMS. There's no way to fake this type from a generic input - it has to come straight out of Model Analyzer (Checkpoint).
The sampler name looks technically valid but the image comes out wrong. Civitai's showcase images get generated across different UIs, and sampler naming isn't consistent between them - an A1111-style name like "DPM++ 2M Karras" bundles what ComfyUI treats as two separate widgets (sampler and scheduler). If the Analyzer's underlying sample leaned heavily on images from a UI with different naming conventions, it's worth glancing at what actually landed in the sampler/scheduler sockets rather than trusting the wire blindly - especially before you run a long batch off it.
Values look stale after re-running the Analyzer with different filters. This node just reads whatever pipe it's handed; if the numbers didn't change, the problem is upstream - check force_refresh on the Analyzer node, not here.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| params_pipe | CIVITAI_PARAMS | β |
Outputs (8)
| Name | Type | Description |
|---|---|---|
| seed | INT | β |
| steps | INT | β |
| cfg | FLOAT | β |
| sampler | euler,euler_cfg_pp,euler_ancestral,euler_ancestral_cfg_pp,heun,heunpp2,exp_heun_2_x0,exp_heun_2_x0_sde,dpm_2,dpm_2_ancestral,lms,dpm_fast,dpm_adaptive,dpmpp_2s_ancestral,dpmpp_2s_ancestral_cfg_pp,dpmpp_sde,dpmpp_sde_gpu,dpmpp_2m,dpmpp_2m_cfg_pp,dpmpp_2m_sde,dpmpp_2m_sde_gpu,dpmpp_2m_sde_heun,dpmpp_2m_sde_heun_gpu,dpmpp_3m_sde,dpmpp_3m_sde_gpu,ddpm,lcm,ipndm,ipndm_v,deis,res_multistep,res_multistep_cfg_pp,res_multistep_ancestral,res_multistep_ancestral_cfg_pp,gradient_estimation,gradient_estimation_cfg_pp,er_sde,seeds_2,seeds_3,sa_solver,sa_solver_pece,ddim,uni_pc,uni_pc_bh2 | β |
| scheduler | simple,sgm_uniform,karras,exponential,ddim_uniform,beta,normal,linear_quadratic,kl_optimal | β |
| width | INT | β |
| height | INT | β |
| denoise(Hires. Fix) | FLOAT | β |