6.6 KiB
Sampler Select Helper
Overview
The Sampler Select Helper node provides intelligent sampler selection with model-specific recommendations and compatibility checking. Adapted from comfyui-essentials-nodes (now in maintenance mode), this tool ensures optimal sampler-scheduler combinations for different model architectures.
Attribution
This node is based on work from comfyui-essentials-nodes by cubiq. The original project is in maintenance-only mode, and we've adopted and enhanced these tools to ensure continued support and compatibility with modern ComfyUI workflows.
Features
- Model-Aware Selection: Automatic recommendations based on model type
- Compatibility Validation: Ensures sampler-scheduler pairs work well together
- Performance Profiles: Pre-configured settings for quality vs speed
- Dynamic Updates: Adapts to newly available samplers
- Batch Support: Test multiple samplers in sequence
Node Properties
- Category:
ComfyAssets/🧰 xyz-helpers - Node Name:
SamplerSelectHelper - Function:
select_sampler
Inputs
Required
| Parameter | Type | Default | Description |
|---|---|---|---|
model_type |
DROPDOWN | auto | [auto, sdxl, sd15, flux, custom] |
quality_preset |
DROPDOWN | balanced | [fast, balanced, quality, extreme] |
sampler_override |
DROPDOWN | auto | Specific sampler selection |
Optional
| Parameter | Type | Default | Description |
|---|---|---|---|
scheduler_override |
DROPDOWN | auto | Specific scheduler selection |
model_name |
STRING | - | Model name for auto-detection |
custom_rules |
STRING | - | JSON rules for custom selection |
Outputs
| Name | Type | Description |
|---|---|---|
sampler_name |
STRING | Selected sampler |
scheduler |
STRING | Selected scheduler |
recommended_steps |
INT | Suggested step count |
recommended_cfg |
FLOAT | Suggested CFG scale |
Model-Specific Recommendations
SDXL Models
quality_preset: "balanced"
→ sampler: "dpmpp_2m"
→ scheduler: "karras"
→ steps: 25
→ cfg: 7.0
SD 1.5 Models
quality_preset: "quality"
→ sampler: "dpmpp_2m_sde"
→ scheduler: "exponential"
→ steps: 30
→ cfg: 7.5
FLUX Models
quality_preset: "fast"
→ sampler: "euler"
→ scheduler: "simple"
→ steps: 15
→ cfg: 3.5
Quality Presets Explained
Fast (Preview)
- Goal: Quick iterations
- Steps: 10-15
- Samplers: euler, dpm_fast
- Use Case: Testing prompts
Balanced (Default)
- Goal: Good quality/speed ratio
- Steps: 20-25
- Samplers: dpmpp_2m, dpmpp_2m_sde
- Use Case: Regular generation
Quality
- Goal: Best visual quality
- Steps: 30-40
- Samplers: dpmpp_3m_sde, dpm_adaptive
- Use Case: Final renders
Extreme
- Goal: Maximum quality
- Steps: 50-100
- Samplers: dpm_adaptive, dpmpp_3m_sde
- Use Case: Hero images
Usage Examples
Auto Model Detection
Load Model → SamplerSelectHelper → KSampler
model_type: auto
quality_preset: balanced
Custom Override
SamplerSelectHelper → KSampler
sampler_override: "dpmpp_3m_sde"
scheduler_override: "exponential"
Batch Testing
SamplerSelectHelper → Batch Process
quality_preset: [fast, balanced, quality]
→ Compare outputs
Compatibility Matrix
Recommended Combinations
| Sampler | Best Schedulers | Avoid |
|---|---|---|
| euler | normal, karras | sgm_uniform |
| euler_a | normal, karras | simple |
| dpmpp_2m | karras, exponential | - |
| dpmpp_2m_sde | karras, exponential | simple |
| dpmpp_3m_sde | exponential | simple |
| dpm_adaptive | normal | karras |
Best Practices
Model Type Detection
- Use
autofor automatic detection - Override only when necessary
- Provide model_name for better accuracy
Performance Optimization
# Quick preview workflow
quality_preset: "fast"
→ 10 steps, euler sampler
# Final production
quality_preset: "quality"
→ 35 steps, dpmpp_3m_sde
# Experimental/artistic
quality_preset: "extreme"
→ 75 steps, dpm_adaptive
Custom Rules Format
{
"model_pattern": "anime.*",
"sampler": "dpmpp_2m_sde",
"scheduler": "karras",
"steps": 28,
"cfg": 7.0
}
Integration with Other Nodes
Complete Pipeline
Model Loader → SamplerSelectHelper → KSampler
↘ FluxSamplerParams ↗
A/B Testing
SamplerSelectHelper → KSampler → Image A
quality: fast
SamplerSelectHelper → KSampler → Image B
quality: quality
→ Compare Results
Advanced Features
Dynamic Sampler Discovery
- Automatically detects new samplers
- Updates compatibility matrix
- Maintains optimal pairings
Performance Profiling
- Tracks generation times
- Suggests optimal settings
- Adapts to hardware capabilities
Model Fingerprinting
- Identifies model architecture
- Applies specific optimizations
- Learns from usage patterns
Tips and Tricks
Speed vs Quality
- Start with "fast" for prompt testing
- Move to "balanced" for iteration
- Use "quality" for final output
- Reserve "extreme" for special cases
Sampler Selection Logic
if model_type == "flux":
prefer ["euler", "dpmpp_2m"]
elif model_type == "sdxl":
prefer ["dpmpp_2m_sde", "dpmpp_3m_sde"]
else:
use ["dpmpp_2m", "euler_a"]
Memory Considerations
- Fast presets use less memory
- Extreme presets may require more VRAM
- Adaptive samplers adjust dynamically
Troubleshooting
Wrong Sampler Selected
- Check model_type setting
- Verify model detection
- Use manual override if needed
Poor Quality Output
- Increase quality preset
- Check recommended steps
- Verify CFG scale
Performance Issues
- Start with fast preset
- Reduce step count
- Try simpler samplers
Common Workflows
Model Comparison
Test same prompt across different models with optimal settings for each.
Quality Ladder
Progress from fast to extreme quality to find optimal balance.
Sampler Shootout
Compare all compatible samplers for specific model/prompt combination.
Version History
- 1.0.0: Initial adaptation from comfyui-essentials-nodes
- 1.0.1: Added FLUX model support
- 1.0.2: Enhanced compatibility matrix
- 1.0.3: Improved auto-detection
Credits
Original implementation by cubiq in comfyui-essentials-nodes. Adapted and maintained by the ComfyAssets team.