UnifiedModelType
ModelType and :obj:str to be used
to represent a model type in a unified way. This class is a subclass of
:obj:str so that it can be used as string seamlessly.
Parameters:
- value (Union[ModelType, str]): The value of the model type.