def __init__(self, model_resolver_factory=None, metrics_serializer=None):
        """
        :param model_resolver_factory: a factory of `cakechat.utils.files_utils.AbstractFileResolver` that
            takes model path and returns a file resolver object
        :param metrics_serializer: an instance compatible with the interface of
        `cakechat.dialog_model.quality.metrics.utils.MetricsSerializer`
        :return:
        """
        super(AbstractModel, self).__init__()

        self._model = None
        self.__model_resolver_factory = model_resolver_factory if model_resolver_factory else DummyFileResolver

        self._model_init_path = None

        self._metrics = None
        self._metrics_serializer = metrics_serializer if metrics_serializer else MetricsSerializer()

        :param model_resolver_factory: a factory of `cakechat.utils.files_utils.AbstractFileResolver` that
            takes model path and returns a file resolver object
        :param metrics_serializer: an instance compatible with the interface of
        `cakechat.dialog_model.quality.metrics.utils.MetricsSerializer`
        :return:
        
cakechat/dialog_model/abstract_model.py