code: def _set_predictor(self, predictor):
          
          if predictor is self._predictor:
              return self
          if self.data is not None:
              self._predictor = predictor
              return self._free_handle()
          else:
              raise LightGBMError("Cannot set predictor after freed raw data, "
                                  "set free_raw_data=False when construct Dataset to avoid this.")
docs: Set predictor for continued training.
  
          It is not recommended for user to call this function.
          Please use init_model argument in engine.train() or engine.cv() instead.