Spaces:
Runtime error
Runtime error
from copy import deepcopy | |
import torch.nn as nn | |
from mmengine.registry import Registry | |
def build_module(module, builder, **kwargs): | |
"""Build module from config or return the module itself. | |
Args: | |
module (Union[dict, nn.Module]): The module to build. | |
builder (Registry): The registry to build module. | |
*args, **kwargs: Arguments passed to build function. | |
Returns: | |
Any: The built module. | |
""" | |
if isinstance(module, dict): | |
cfg = deepcopy(module) | |
for k, v in kwargs.items(): | |
cfg[k] = v | |
return builder.build(cfg) | |
elif isinstance(module, nn.Module): | |
return module | |
elif module is None: | |
return None | |
else: | |
raise TypeError(f"Only support dict and nn.Module, but got {type(module)}.") | |
MODELS = Registry( | |
"model", | |
locations=["opensora.models"], | |
) | |
SCHEDULERS = Registry( | |
"scheduler", | |
locations=["opensora.schedulers"], | |
) | |