diffengine.models.editors.lcm.lcm_modules

Module Contents

Classes

DDIMSolver

DDIM solver.

Functions

extract_into_tensor(x, timesteps)

Extract time-dependent values from a tensor.

scalings_for_boundary_conditions(timestep[, sigma_data])

Scalings for boundary conditions.

diffengine.models.editors.lcm.lcm_modules.extract_into_tensor(x, timesteps)[source]

Extract time-dependent values from a tensor.

Parameters:
  • x (torch.Tensor) –

  • timesteps (torch.Tensor) –

Return type:

torch.Tensor

diffengine.models.editors.lcm.lcm_modules.scalings_for_boundary_conditions(timestep, sigma_data=0.5)[source]

Scalings for boundary conditions.

From LCMScheduler.get_scalings_for_boundary_condition_discrete

Parameters:
  • timestep (torch.Tensor) –

  • sigma_data (float) –

Return type:

tuple

class diffengine.models.editors.lcm.lcm_modules.DDIMSolver(alpha_cumprods, timesteps=1000, ddim_timesteps=50)[source]

Bases: torch.nn.Module

DDIM solver.

Parameters:
  • alpha_cumprods (torch.Tensor) –

  • timesteps (int) –

  • ddim_timesteps (int) –

ddim_step(pred_x0, pred_noise, timestep_index)[source]

DDIM step.

Parameters:
  • pred_x0 (torch.Tensor) –

  • pred_noise (torch.Tensor) –

  • timestep_index (torch.Tensor) –

Return type:

torch.Tensor