def _setup_encoders(self, params: dict) -> None:
        """Sets up/Initializes all past and future encoders and an optional transformer from `add_encoder` parameter
        used at model creation.


        Parameters
        ----------
        params
            Dict from parameter `add_encoders` (kwargs) used at model creation. Relevant parameters are:
            * params={'cyclic': {'past': ['month', 'dayofweek', ...], 'future': [same as for 'past']}}
        """
        past_encoders, future_encoders = self._process_input_encoders(params)
        tz = self._process_timezone(params)

        if not past_encoders and not future_encoders:
            return

        self._past_encoders = [
            self.encoder_map[enc_id](
                attribute=attr,
                input_chunk_length=self.input_chunk_length,
                output_chunk_length=self.output_chunk_length,
                lags_covariates=self.lags_past_covariates,
                tz=tz,
            )
            for enc_id, attr in past_encoders
        ]
        self._future_encoders = [
            self.encoder_map[enc_id](
                attribute=attr,
                input_chunk_length=self.input_chunk_length,
                output_chunk_length=self.output_chunk_length,
                lags_covariates=self.lags_future_covariates,
                tz=tz,
            )
            for enc_id, attr in future_encoders
        ]
        self.encoding_available = True
Sets up/Initializes all past and future encoders and an optional transformer from `add_encoder` parameter
        used at model creation.


        Parameters
        ----------
        params
            Dict from parameter `add_encoders` (kwargs) used at model creation. Relevant parameters are:
            * params={'cyclic': {'past': ['month', 'dayofweek', ...], 'future': [same as for 'past']}}
        
darts/dataprocessing/encoders/encoders.py