code: def predictor_factory():
      def get_predictor(**kwargs) -> PointProcessGluonPredictor:
          default_kwargs = dict(
              input_names=["past_target", "past_valid_length"],
              prediction_net=MockTPPPredictionNet(
                  prediction_interval_length=5.0
              ),
              batch_size=128,
              prediction_interval_length=5.0,
              freq="H",
              ctx=mx.cpu(),
              input_transform=ContinuousTimeInstanceSplitter(
                  1,
                  5,
                  to_offset("H"),
                  ContinuousTimePredictionSampler(
                      allow_empty_interval=False, min_past=1
                  ),
              ),
          )
  
          default_kwargs.update(**kwargs)
  
          return PointProcessGluonPredictor(**default_kwargs)
  
      return get_predictor
  
file_path: gluonts/test/mx/model/tpp/test_tpp_predictor.py
imports: from typing import Tuple
  import mxnet
  import numpy
  import pandas
  from pandas.tseries.frequencies import to_offset
  import pytest
  from mxnet import nd
  from gluonts.mx import PointProcessGluonPredictor, PointProcessSampleForecast
  from gluonts.mx import Tensor
  from gluonts.transform import ContinuousTimeInstanceSplitter, ContinuousTimePredictionSampler
  from .common import point_process_dataset, point_process_dataset_2
label_desc: Use image node_id 1 for calling a global function with example usage: predictor_factory() and returns: get_predictor, PointProcessGluonPredictor