code: def __init__(
      self,
      architecture: str = None,
      input_nc: int = None,
      num_layers: int = None,
      config: DictConfig = None,
      **kwargs,
  ):
      if not architecture:
          raise ValueError()
      self._architecture = architecture.lower()
      assert (
          self._architecture in self.MODEL_ARCHITECTURES
      ), ModelFactory.raise_enum_error(
          "model_architecture",
          self._architecture,
          self.MODEL_ARCHITECTURES,
      )
  
      self._input_nc = input_nc
      self._num_layers = num_layers
      self._config = config
      self._kwargs = kwargs
  
      if self._config:
          log.info("The config will be used to build the model")
  
file_path: torch-points3d/torch_points3d/applications/modelfactory.py
imports: from enum import Enum
  from omegaconf import DictConfig
  import logging
  from torch_points3d.utils.model_building_utils.model_definition_resolver import resolve
label_desc: Use image node_id 2 to create a new ModelFactory object  with example: obj = ModelFactory(architecture, input_nc, num_layers, config)