Files
Koishi-Star 5dcf61d108 提交初始sampler。
调整args。
调整args,修复bug。
2024-09-28 00:30:58 +08:00

38 lines
1.9 KiB
Python

try:
import pyramid_noise_sampling
from pyramid_noise_sampling import sample_euler_pyramid, sample_heun_pyramid, sample_dpmpp_2s_pyramid
if pyramid_noise_sampling.BACKEND == "WebUI":
from modules import scripts, sd_samplers_common, sd_samplers
from modules.sd_samplers_kdiffusion import sampler_extra_params, KDiffusionSampler
class Pyramid(scripts.Script):
def title(self):
"Pyramid_Noise Samplers"
def show(self, is_img2img):
return False
def __init__(self):
if not pyramid_noise_sampling.INITIALIZED:
samplers_pyramid = [
("Euler pyramid", sample_euler_pyramid, ["k_euler_pyramid"], {}),
("Heun pyramid", sample_heun_pyramid, ["k_heun_pyramid"], {}),
("DPM++ 2s pyramid", sample_dpmpp_2s_pyramid, ["k_dpmpp_2s_pyramid"], {}),
]
samplers_data_pyramid = [
sd_samplers_common.SamplerData(label, lambda model, funcname=funcname: KDiffusionSampler(funcname, model), aliases, options)
for label, funcname, aliases, options in samplers_pyramid
if callable(funcname)
]
sampler_extra_params["sample_euler_pyramid"] = ["s_churn", "s_tmin", "s_tmax", "s_noise"]
sampler_extra_params["sample_heun_pyramid"] = ["s_churn", "s_tmin", "s_tmax", "s_noise"]
sampler_extra_params["sample_dpmpp_2s_pyramid"] = ["s_churn", "s_tmin", "s_tmax", "s_noise"]
sd_samplers.all_samplers.extend(samplers_data_pyramid)
sd_samplers.all_samplers_map = {x.name: x for x in sd_samplers.all_samplers}
sd_samplers.set_samplers()
pyramid_noise_sampling.INITIALIZED = True
except ImportError as _:
pass