

import copy

from ...configuration_utils import PretrainedConfig
from ...utils import logging
from ..auto.configuration_auto import AutoConfig


A_						:     Union[str, Any]			  =				logging.get_logger(__name__)
class    A_				( _a  ):


    '''simple docstring'''






    a__       							=    "speech-encoder-decoder"
    a__       							=    True


    def __init__(self       , **lowercase__					)       -> int:
        super().__init__(**lowercase__					)
        if "encoder" not in kwargs or "decoder" not in kwargs:
            raise ValueError(
                F'''A configuraton of type {self.model_type} cannot be instantiated because not both `encoder` and'''
                F''' `decoder` sub-configurations are passed, but only {kwargs}'''					)

        __UpperCAmelCase			   =     kwargs.pop('''encoder'''					)
        __UpperCAmelCase			   =     encoder_config.pop('''model_type'''					)
        __UpperCAmelCase			   =     kwargs.pop('''decoder'''					)
        __UpperCAmelCase			   =     decoder_config.pop('''model_type'''					)

        __UpperCAmelCase			   =     AutoConfig.for_model(lowercase__       , **lowercase__					)
        __UpperCAmelCase			   =     AutoConfig.for_model(lowercase__       , **lowercase__					)
        __UpperCAmelCase			   =     True


    @classmethod
    def        lowerCAmelCase_  (cls       , lowercase__       , lowercase__       , **lowercase__					)       -> PretrainedConfig:
        logger.info('''Setting `config.is_decoder=True` and `config.add_cross_attention=True` for decoder_config'''					)
        __UpperCAmelCase			   =     True
        __UpperCAmelCase			   =     True

        return cls(encoder=encoder_config.to_dict()       , decoder=decoder_config.to_dict()       , **lowercase__					)






    def        lowerCAmelCase_  (self					)       -> int:
        __UpperCAmelCase			   =     copy.deepcopy(self.__dict__					)
        __UpperCAmelCase			   =     self.encoder.to_dict()
        __UpperCAmelCase			   =     self.decoder.to_dict()
        __UpperCAmelCase			   =     self.__class__.model_type
        return output







import warnings

from ...utils import logging
from .image_processing_convnext import ConvNextImageProcessor


A_						:     int			  =				logging.get_logger(__name__)
class    A_				( _a  ):


    '''simple docstring'''






    def __init__(self       , *lowercase__       , **lowercase__					)       -> None:
        warnings.warn(
            '''The class ConvNextFeatureExtractor is deprecated and will be removed in version 5 of Transformers.'''
            ''' Please use ConvNextImageProcessor instead.'''       , lowercase__       , )
        super().__init__(*lowercase__       , **lowercase__					)




