def get_featurizer_from_dict(cls, policy): # policy can have only 1 featurizer if len(policy["featurizer"]) > 1: raise InvalidPolicyConfig("policy can have only 1 featurizer") featurizer_config = policy["featurizer"][0] featurizer_name = featurizer_config.pop("name") featurizer_func = registry.featurizer_from_module_path(featurizer_name) return featurizer_func, featurizer_config
def get_state_featurizer_from_dict(cls, featurizer_config): # featurizer can have only 1 state featurizer if len(featurizer_config["state_featurizer"]) > 1: raise InvalidPolicyConfig("featurizer can have only 1 state featurizer") state_featurizer_config = featurizer_config["state_featurizer"][0] state_featurizer_name = state_featurizer_config.pop("name") state_featurizer_func = registry.featurizer_from_module_path( state_featurizer_name ) return state_featurizer_func, state_featurizer_config
def get_featurizer_from_dict(cls, policy) -> Tuple[Any, Any]: # policy can have only 1 featurizer if len(policy["featurizer"]) > 1: raise InvalidPolicyConfig( f"Every policy can only have 1 featurizer " f"but '{policy.get('name')}' " f"uses {len(policy['featurizer'])} featurizers.") featurizer_config = policy["featurizer"][0] featurizer_name = featurizer_config.pop("name") featurizer_func = registry.featurizer_from_module_path(featurizer_name) return featurizer_func, featurizer_config
def get_featurizer_from_dict(cls, policy: Dict[Text, Any]) -> Tuple[Any, Any]: """Gets the featurizer initializer and its arguments from a policy config.""" # policy can have only 1 featurizer if len(policy["featurizer"]) > 1: raise InvalidPolicyConfig( f"Every policy can only have 1 featurizer " f"but '{policy.get('name')}' " f"uses {len(policy['featurizer'])} featurizers.") featurizer_config = policy["featurizer"][0] featurizer_name = featurizer_config.pop("name") featurizer_func = registry.featurizer_from_module_path(featurizer_name) return featurizer_func, featurizer_config