From 6b3eaa6497572bf896b501b9d688272b874f6335 Mon Sep 17 00:00:00 2001 From: BlakeOne <30273164+BlakeOne@users.noreply.github.com> Date: Tue, 2 Apr 2024 17:44:50 -0700 Subject: [PATCH] Create node.py --- node.py | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 node.py diff --git a/node.py b/node.py new file mode 100644 index 0000000..917d2f8 --- /dev/null +++ b/node.py @@ -0,0 +1,31 @@ +import torch + +class CustomScheduler: + @classmethod + def INPUT_TYPES(s): + inputs = { + "required": { + "steps": ("INT", {"default": 4, "min": 1, "max": 25}), + }, + "optional": {}, + } + + defaults = [4.12, 1.62, 0.7, 0.04] + for i in range(0, 26): + default = defaults[i] if i < len(defaults) else 0.0 + inputs["optional"][f"sigma_{i}"] = ("FLOAT", {"default": default, "min": 0.0, "max": 100.0, "step": 0.01, "round": 0.0001}) + + return inputs + + RETURN_TYPES = ("SIGMAS",) + CATEGORY = "sampling/custom_sampling/schedulers" + FUNCTION = "get_sigmas" + + def get_sigmas(self, steps, **kwargs): + sigmas = [] + for i in range(0, steps + 1): + sigma = kwargs[f"sigma_{i}"] + sigmas.append(sigma) + + sigmas = torch.FloatTensor(sigmas).cpu() + return (sigmas,)