Source code for evalml.model_family.utils
"""Utility methods for EvalML's model families."""
from evalml.model_family.model_family import ModelFamily
[docs]def handle_model_family(model_family):
"""Handles model_family by either returning the ModelFamily or converting from a string.
Args:
model_family (str or ModelFamily): Model type that needs to be handled.
Returns:
ModelFamily
Raises:
KeyError: If input is not a valid model family.
ValueError: If input is not a string or ModelFamily object.
"""
if isinstance(model_family, str):
try:
tpe = ModelFamily[model_family.upper()]
return tpe
except KeyError:
raise KeyError("Model family '{}' does not exist".format(model_family))
if isinstance(model_family, ModelFamily):
return model_family
raise ValueError("`handle_model_family` was not passed a str or ModelFamily object")