docstr: Parses the model config and evaluates any expression that may contain constants
  Overrides any argument in the `define_constants` with keywords wrgument to the constructor
docstr_tok: ["Parses","the","model","config","and","evaluates","any","expression","that","may","contain","constants","Overrides","any","argument","in","the","`","define_constants","`","with","keywords","wrgument","to","the","constructor"]
code: def resolve_model(model_config, num_features, kwargs):
      """Parses the model config and evaluates any expression that may contain constants
      Overrides any argument in the `define_constants` with keywords wrgument to the constructor
      """
      # placeholders to subsitute
      constants = {
          "FEAT": max(num_features, 0),
      }
  
      # user defined contants to subsitute
      if "define_constants" in model_config.keys():
          constants.update(dict(model_config.define_constants))
          define_constants = model_config.define_constants
          for key in define_constants.keys():
              value = kwargs.get(key)
              if value:
                  constants[key] = value
      resolve(model_config, constants)
  
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 11 for calling the ModelFactory obj's underlying member method code with example usage: obj.resolve_model(model_config, num_features, kwargs) without return types