code: def __init__(self, funcname):
      self.funcname = funcname
      self.func = funcname
      self.extra_params = []
      self.sampler_noises = None
      self.stop_at = None
      self.eta = None
      self.config: SamplerData = (
          None  # set by the function calling the constructor
      )
      self.last_latent = None
      self.s_min_uncond = None
      self.s_churn = 0.0
      self.s_tmin = 0.0
      self.s_tmax = float("inf")
      self.s_noise = 1.0
  
      self.eta_option_field = "eta_ancestral"
      self.eta_infotext_field = "Eta"
      self.eta_default = 1.0
  
      self.conditioning_key = shared.sd_model.model.conditioning_key
  
      self.p = None
      self.model_wrap_cfg = None
      self.sampler_extra_args = None
      self.options = {}
  
imports: import inspect
  from collections import namedtuple
  import numpy
  import torch
  from PIL import Image
  from modules import devices, images, sd_vae_approx, sd_samplers, sd_vae_taesd, shared, sd_models
  from modules.shared import opts, state
  import k_diffusion.sampling
label_desc: Use image node_id 1 to create a new Sampler object  with example: obj = Sampler(funcname)