Add InputParameters node

This commit is contained in:
Alexopus
2025-04-24 14:53:17 +02:00
parent 0836a338fb
commit ef819dfce3
2 changed files with 36 additions and 1 deletions
+2 -1
View File
@@ -1,7 +1,7 @@
from .nodes import ImageSaver
from .nodes_literals import SeedGenerator, StringLiteral, SizeLiteral, IntLiteral, FloatLiteral, CfgLiteral
from .nodes_loaders import CheckpointLoaderWithName, UNETLoaderWithName
from .nodes_selectors import SamplerSelector, SchedulerSelector, SchedulerSelectorComfy, SchedulerToString, SamplerToString, SchedulerComfyToString
from .nodes_selectors import SamplerSelector, SchedulerSelector, SchedulerSelectorComfy, SchedulerToString, SamplerToString, SchedulerComfyToString, InputParameters
from .civitai_nodes import CivitaiHashFetcher
NODE_CLASS_MAPPINGS = {
@@ -11,6 +11,7 @@ NODE_CLASS_MAPPINGS = {
"Sampler Selector (Image Saver)": SamplerSelector,
"Scheduler Selector (Image Saver)": SchedulerSelector,
"Scheduler Selector (Comfy) (Image Saver)": SchedulerSelectorComfy,
"Input Parameters (Image Saver)": InputParameters,
"Seed Generator (Image Saver)": SeedGenerator,
"String Literal (Image Saver)": StringLiteral,
"Width/Height Literal (Image Saver)": SizeLiteral,
+34
View File
@@ -119,3 +119,37 @@ class SamplerToString:
def get_name(self, sampler):
return (sampler,)
class InputParameters:
RETURN_TYPES = ("INT", "INT", "FLOAT", comfy.samplers.KSampler.SAMPLERS, "STRING", comfy.samplers.KSampler.SCHEDULERS, "STRING", "FLOAT")
RETURN_NAMES = ("seed", "steps", "cfg", "sampler", "sampler_name", "scheduler", "scheduler_name", "denoise")
OUTPUT_TOOLTIPS = (
"seed (INT)",
"steps (INT)",
"cfg (FLOAT)",
"sampler (SAMPLERS)",
"sampler name (STRING)",
"scheduler (SCHEDULERS)",
"scheduler name (STRING)",
"denoise (FLOAT)",
)
FUNCTION = "get_values"
CATEGORY = "ImageSaver/utils"
DESCRIPTION = "Combined node for seed, steps, cfg, sampler, scheduler and denoise."
@classmethod
def INPUT_TYPES(cls):
return {
"required": {
"seed": ("INT", {"default": 0, "min": 0, "max": 0xffffffffffffffff, "control_after_generate": True, "tooltip": "The random seed used for creating the noise."}),
"steps": ("INT", {"default": 20, "min": 1, "max": 10000, "tooltip": "The number of steps used in the denoising process."}),
"cfg": ("FLOAT", {"default": 8.0, "min": 0.0, "max": 100.0, "step":0.1, "round": 0.01, "tooltip": "The Classifier-Free Guidance scale balances creativity and adherence to the prompt. Higher values result in images more closely matching the prompt however too high values will negatively impact quality."}),
"sampler": (comfy.samplers.KSampler.SAMPLERS, {"tooltip": "The algorithm used when sampling, this can affect the quality, speed, and style of the generated output."}),
"scheduler": (comfy.samplers.KSampler.SCHEDULERS, {"tooltip": "The scheduler controls how noise is gradually removed to form the image."}),
"denoise": ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01, "tooltip": "The amount of denoising applied, lower values will maintain the structure of the initial image allowing for image to image sampling."}),
}
}
def get_values(self, seed, steps, cfg, sampler, scheduler, denoise):
return (seed, steps, cfg, sampler, sampler, scheduler, scheduler, denoise)