class_docstr: Multistep and onestep sampling for consistency models.
  
  This model inherits from [`SchedulerMixin`] and [`ConfigMixin`]. Check the superclass documentation for the generic
  methods the library implements for all schedulers such as loading and saving.
  
  Args:
      num_train_timesteps (`int`, defaults to 40):
          The number of diffusion steps to train the model.
      sigma_min (`float`, defaults to 0.002):
          Minimum noise magnitude in the sigma schedule. Defaults to 0.002 from the original implementation.
      sigma_max (`float`, defaults to 80.0):
          Maximum noise magnitude in the sigma schedule. Defaults to 80.0 from the original implementation.
      sigma_data (`float`, defaults to 0.5):
          The standard deviation of the data distribution from the EDM
          [paper](https://huggingface.co/papers/2206.00364). Defaults to 0.5 from the original implementation.
      s_noise (`float`, defaults to 1.0):
          The amount of additional noise to counteract loss of detail during sampling. A reasonable range is [1.000,
          1.011]. Defaults to 1.0 from the original implementation.
      rho (`float`, defaults to 7.0):
          The parameter for calculating the Karras sigma schedule from the EDM
          [paper](https://huggingface.co/papers/2206.00364). Defaults to 7.0 from the original implementation.
      clip_denoised (`bool`, defaults to `True`):
          Whether to clip the denoised outputs to `(-1, 1)`.
      timesteps (`List` or `np.ndarray` or `torch.Tensor`, *optional*):
          An explicit timestep schedule that can be optionally specified. The timesteps are expected to be in
          increasing order.
class_docstr_tok: ["Multistep","and","onestep","sampling","for","consistency","models",".","This","model","inherits","from","[","`","SchedulerMixin","`","]","and","[","`","ConfigMixin","`","]",".","Check","the","superclass","documentation","for","the","generic","methods","the","library","implements","for","all","schedulers","such","as","loading","and","saving",".","Args",":","num_train_timesteps","(","`","int","`",",","defaults","to","40",")",":","The","number","of","diffusion","steps","to","train","the","model",".","sigma_min","(","`","float","`",",","defaults","to","0.002",")",":","Minimum","noise","magnitude","in","the","sigma","schedule",".","Defaults","to","0.002","from","the","original","implementation",".","sigma_max","(","`","float","`",",","defaults","to","80.0",")",":","Maximum","noise","magnitude","in","the","sigma","schedule",".","Defaults","to","80.0","from","the","original","implementation",".","sigma_data","(","`","float","`",",","defaults","to","0.5",")",":","The","standard","deviation","of","the","data","distribution","from","the","EDM","[","paper","]","(","https",":","\/\/huggingface.co\/papers\/2206.00364",")",".","Defaults","to","0.5","from","the","original","implementation",".","s_noise","(","`","float","`",",","defaults","to","1.0",")",":","The","amount","of","additional","noise","to","counteract","loss","of","detail","during","sampling",".","A","reasonable","range","is","[","1.000",",","1.011","]",".","Defaults","to","1.0","from","the","original","implementation",".","rho","(","`","float","`",",","defaults","to","7.0",")",":","The","parameter","for","calculating","the","Karras","sigma","schedule","from","the","EDM","[","paper","]","(","https",":","\/\/huggingface.co\/papers\/2206.00364",")",".","Defaults","to","7.0","from","the","original","implementation",".","clip_denoised","(","`","bool","`",",","defaults","to","`","True","`",")",":","Whether","to","clip","the","denoised","outputs","to","`","(","-1",",","1",")","`",".","timesteps","(","`","List","`","or","`","np.ndarray","`","or","`","torch.Tensor","`",",","*","optional","*",")",":","An","explicit","timestep","schedule","that","can","be","optionally","specified",".","The","timesteps","are","expected","to","be","in","increasing","order","."]
code: def get_scalings(self, sigma):
      sigma_data = self.config.sigma_data
  
      c_skip = sigma_data**2 / (sigma**2 + sigma_data**2)
      c_out = sigma * sigma_data / (sigma**2 + sigma_data**2) ** 0.5
      return c_skip, c_out
  
imports: from dataclasses import dataclass
  from typing import List, Optional, Tuple, Union
  import numpy
  import torch
  from ..configuration_utils import ConfigMixin, register_to_config
  from ..utils import BaseOutput, logging
  from ..utils.torch_utils import randn_tensor
  from .scheduling_utils import SchedulerMixin
label_desc: Use image node_id 8 for calling the CMStochasticIterativeScheduler obj's underlying member method code with example usage: obj.get_scalings(sigma) and returns: c_skip,  c_out