| from typing import Optional | |
| # from nitrous_ema import PostHocEMA | |
| from omegaconf import DictConfig | |
| from ..model.networks import get_my_mmaudio | |
| def synthesize_ema(cfg: DictConfig, sigma: float, step: Optional[int]): | |
| vae = get_my_mmaudio(cfg.model) | |
| emas = PostHocEMA(vae, | |
| sigma_rels=cfg.ema.sigma_rels, | |
| update_every=cfg.ema.update_every, | |
| checkpoint_every_num_steps=cfg.ema.checkpoint_every, | |
| checkpoint_folder=cfg.ema.checkpoint_folder) | |
| synthesized_ema = emas.synthesize_ema_model(sigma_rel=sigma, step=step, device='cpu') | |
| state_dict = synthesized_ema.ema_model.state_dict() | |
| return state_dict | |