code: def make_ddim_sampling_parameters(
      alphacums, ddim_timesteps, eta, verbose=True
  ):
      # select alphas for computing the variance schedule
      alphas = alphacums[ddim_timesteps]
      alphas_prev = np.asarray(
          [alphacums[0]] + alphacums[ddim_timesteps[:-1]].tolist()
      )
  
      # according the the formula provided in https://arxiv.org/abs/2010.02502
      variance = (
          (1 - alphas_prev) / (1 - alphas) * (1 - alphas / alphas_prev)
      )
      sigmas = eta * np.sqrt(variance)
      if verbose:
          print(
              f"Selected alphas for ddim sampler: a_t: {alphas}; a_(t-1): {alphas_prev}"
          )
          print(
              f"For the chosen value of eta, which is {eta}, "
              f"this results in the following sigma_t schedule for ddim sampler {sigmas}"
          )
      return sigmas, alphas, alphas_prev, variance
  
imports: import math
  import numpy
  import torch
  import torch.nn
  from apex.contrib.group_norm import GroupNorm
  from einops import repeat
  from torch._dynamo import disable
  from torch.cuda.amp import custom_bwd, custom_fwd
label_desc: Use image node_id 3 for calling a global function with example usage: make_ddim_sampling_parameters(alphacums, ddim_timesteps, eta, verbose) and returns: sigmas,  alphas,  alphas_prev,  variance