def from_dict()

in optimum/neuron/configuration_utils.py [0:0]


    def from_dict(cls, config_dict: Dict[str, Any]) -> "NeuronConfig":
        """
        Instantiates a [`NeuronConfig`] from a Python dictionary of parameters.

        Args:
            config_dict (`Dict[str, Any]`):
                Dictionary that will be used to instantiate the configuration object.

        Returns:
            [`NeuronConfig`]: The configuration object instantiated from those parameters.
        """
        for key in ["optimum_neuron_version", "_serialized_key", "neuronxcc_version"]:
            if key not in config_dict:
                raise ValueError(f"Invalid neuron configuration: missing mandatory {key} attribute.")
        # Check versions
        version = config_dict.pop("optimum_neuron_version")
        if version != __version__:
            raise ValueError(
                f"This neuron configuration file was generated with optimum-neuron version {version}, but this version is {__version__}."
            )
        cfg_neuronxcc_version = config_dict.pop("neuronxcc_version")
        neuronxcc_version = get_neuronxcc_version()
        if cfg_neuronxcc_version != neuronxcc_version:
            raise RuntimeError(
                "This neuron configuration corresponds to a model exported using version"
                f" {cfg_neuronxcc_version} of the neuronxcc compiler, but {neuronxcc_version} is installed."
            )
        # Retrieve neuron config class from serialized key
        _serialized_key = config_dict.pop("_serialized_key")
        if cls is NeuronConfig:
            # Force the registration of the neuron configuration classes
            from .models import neuron_config  # noqa F401

            # We need to identify the actual neuron configuration class for this serialized key
            if _serialized_key is None:
                raise ValueError("Neuron configuration is invalid: unable to identify the serialized key")
            cls = _NEURON_CONFIG_FOR_KEY.get(_serialized_key, None)
            if cls is None:
                raise ValueError(f"No neuron configuration registered for the {_serialized_key} serialized key")
        else:
            assert _KEY_FOR_NEURON_CONFIG[cls] == _serialized_key
        config = cls(**{**config_dict})
        logger.info(f"Neuron config {config}")
        return config