code: def deserialize(
      cls,
      path: Path,
      # TODO this is temporary, we should make the callable object serializable in the first place
      scaling: Callable[
          [pd.Series], Tuple[pd.Series, float]
      ] = mean_abs_scaling,
      **kwargs,
  ) -> "Predictor":
      # deserialize constructor parameters
      with (path / "parameters.json").open("r") as fp:
          parameters = load_json(fp.read())
      loaded_ag_path = parameters["ag_path"]
      del parameters["ag_path"]
      # load tabular model
      ag_model = AutogluonTabularPredictor.load(loaded_ag_path)
  
      return TabularPredictor(
          ag_model=ag_model,
          scaling=scaling,
          **parameters,
      )
  
imports: from typing import Callable, Dict, List, Optional, Iterator, Iterable, Tuple
  import numpy
  import pandas
  import shutil
  from pathlib import Path
  from autogluon.tabular import TabularPredictor
  from gluonts.core.serde import dump_json, load_json
  from gluonts.dataset.util import to_pandas
  from gluonts.dataset.field_names import FieldName
  from gluonts.itertools import batcher
  from gluonts.model.forecast import SampleForecast, QuantileForecast, Forecast
  from gluonts.model.predictor import Predictor
  from gluonts.time_feature import TimeFeature
label_desc: Use image node_id 10 for calling the TabularPredictor obj's underlying member method code with example usage: obj.deserialize(cls, path, scaling) and returns: TabularPredictor