mmagic.models.editors.guided_diffusion.adm
¶
Module Contents¶
Classes¶
Guided diffusion Model. |
Functions¶
|
compute classification gradient to x. |
- mmagic.models.editors.guided_diffusion.adm.classifier_grad(classifier, x, t, y=None, classifier_scale=1.0)[source]¶
compute classification gradient to x.
- class mmagic.models.editors.guided_diffusion.adm.AblatedDiffusionModel(data_preprocessor, unet, diffusion_scheduler, use_fp16=False, classifier=None, classifier_scale=1.0, rgb2bgr=False, pretrained_cfgs=None)[source]¶
Bases:
mmengine.model.BaseModel
Guided diffusion Model.
- Parameters
data_preprocessor (dict, optional) – The pre-process config of
BaseDataPreprocessor
.unet (ModelType) – Config of denoising Unet.
diffusion_scheduler (ModelType) – Config of diffusion_scheduler scheduler.
use_fp16 (bool) – Whether to use fp16 for unet model. Defaults to False.
classifier (ModelType) – Config of classifier. Defaults to None.
pretrained_cfgs (dict) – Path Config for pretrained weights. Usually this is a dict contains module name and the corresponding ckpt path.Defaults to None.
- property device[source]¶
Get current device of the model.
- Returns
The current device of the model.
- Return type
torch.device
- load_pretrained_models(pretrained_cfgs)[source]¶
_summary_
- Parameters
pretrained_cfgs (_type_) – _description_
- infer(scheduler_kwargs=None, init_image=None, batch_size=1, num_inference_steps=1000, labels=None, classifier_scale=0.0, show_progress=False)[source]¶
_summary_
- Parameters
init_image (_type_, optional) – _description_. Defaults to None.
batch_size (int, optional) – _description_. Defaults to 1.
num_inference_steps (int, optional) – _description_. Defaults to 1000.
labels (_type_, optional) – _description_. Defaults to None.
show_progress (bool, optional) – _description_. Defaults to False.
- Returns
_description_
- Return type
_type_
- forward(inputs: mmagic.utils.typing.ForwardInputs, data_samples: Optional[list] = None, mode: Optional[str] = None) List[mmagic.structures.DataSample] [source]¶
_summary_
- Parameters
inputs (ForwardInputs) – _description_
data_samples (Optional[list], optional) – _description_. Defaults to None.
mode (Optional[str], optional) – _description_. Defaults to None.
- Returns
_description_
- Return type
List[DataSample]
- val_step(data: dict) mmagic.utils.typing.SampleList [source]¶
Gets the generated image of given data.
Calls
self.data_preprocessor(data)
andself(inputs, data_sample, mode=None)
in order. Return the generated results which will be passed to evaluator.- Parameters
data (dict) – Data sampled from metric specific sampler. More details in Metrics and Evaluator.
- Returns
Generated image or image dict.
- Return type
SampleList
- test_step(data: dict) mmagic.utils.typing.SampleList [source]¶
Gets the generated image of given data. Same as
val_step()
.- Parameters
data (dict) – Data sampled from metric specific sampler. More details in Metrics and Evaluator.
- Returns
Generated image or image dict.
- Return type
List[DataSample]
- train_step(data: dict, optim_wrapper: mmengine.optim.OptimWrapperDict)[source]¶
_summary_
- Parameters
data (dict) – _description_
optim_wrapper (OptimWrapperDict) – _description_
- Returns
_description_
- Return type
_type_
- get_module(model: torch.nn.Module, module_name: str) torch.nn.Module [source]¶
Get an inner module from model.
Since we will wrapper DDP for some model, we have to judge whether the module can be indexed directly.
- Parameters
model (nn.Module) – This model may wrapped with DDP or not.
module_name (str) – The name of specific module.
- Returns
Returned sub module.
- Return type
nn.Module