class_docstr: Classifier free guidance denoiser. A wrapper for stable diffusion model (specifically for unet)
  that can take a noisy picture and produce a noise-free picture using two guidances (prompts)
  instead of one. Originally, the second prompt is just an empty string, but we use non-empty
  negative prompt.
class_docstr_tok: ["Classifier","free","guidance","denoiser",".","A","wrapper","for","stable","diffusion","model","(","specifically","for","unet",")","that","can","take","a","noisy","picture","and","produce","a","noise-free","picture","using","two","guidances","(","prompts",")","instead","of","one",".","Originally",",","the","second","prompt","is","just","an","empty","string",",","but","we","use","non-empty","negative","prompt","."]
code: def __init__(self, sampler):
      super().__init__()
      self.model_wrap = None
      self.mask = None
      self.nmask = None
      self.init_latent = None
      self.steps = None
      """number of steps as specified by user in UI"""
  
      self.total_steps = None
      """expected number of calls to denoiser calculated from self.steps and specifics of the selected sampler"""
  
      self.step = 0
      self.image_cfg_scale = None
      self.padded_cond_uncond = False
      self.sampler = sampler
      self.model_wrap = None
      self.p = None
      self.mask_before_denoising = False
  
file_path: stable-diffusion-webui/modules/sd_samplers_cfg_denoiser.py
imports: import torch
  from modules import prompt_parser, devices, sd_samplers_common
  from modules.shared import opts, state
  import modules.shared
  from modules.script_callbacks import CFGDenoiserParams, cfg_denoiser_callback
  from modules.script_callbacks import CFGDenoisedParams, cfg_denoised_callback
  from modules.script_callbacks import AfterCFGCallbackParams, cfg_after_cfg_callback
label_desc: Use image node_id 1 to create a new CFGDenoiser object from inherited base classes: torch.nn with example: obj = CFGDenoiser(sampler)