




from collections import OrderedDict
from typing import List, Mapping

from packaging import version

from ...configuration_utils import PretrainedConfig
from ...onnx import OnnxConfig
from ...utils import logging


lowerCAmelCase_					    = logging.get_logger(__name__)

lowerCAmelCase_					    = {
    """google/efficientnet-b7""": """https://huggingface.co/google/efficientnet-b7/resolve/main/config.json""",
}






class  _lowerCAmelCase     (  _lowercase	):
      A__		     =		'efficientnet'

      def __init__(   self      ,				__UpperCAmelCase = 3      ,				__UpperCAmelCase = 600      ,				__UpperCAmelCase = 2.0      ,				__UpperCAmelCase = 3.1      ,				__UpperCAmelCase = 8      ,				__UpperCAmelCase = [3, 3, 5, 3, 5, 5, 3]      ,				__UpperCAmelCase = [32, 16, 24, 40, 80, 112, 192]      ,				__UpperCAmelCase = [16, 24, 40, 80, 112, 192, 320]      ,				__UpperCAmelCase = []      ,				__UpperCAmelCase = [1, 2, 2, 2, 1, 2, 1]      ,				__UpperCAmelCase = [1, 2, 2, 3, 3, 4, 1]      ,				__UpperCAmelCase = [1, 6, 6, 6, 6, 6, 6]      ,				__UpperCAmelCase = 0.25      ,				__UpperCAmelCase = "swish"      ,				__UpperCAmelCase = 2560      ,				__UpperCAmelCase = "mean"      ,				__UpperCAmelCase = 0.02      ,				__UpperCAmelCase = 0.001      ,				__UpperCAmelCase = 0.99      ,				__UpperCAmelCase = 0.5      ,				__UpperCAmelCase = 0.2      ,				**__UpperCAmelCase      ,				):
        super().__init__(**__UpperCAmelCase		)

        lowerCAmelCase__				:  Dict		       =     num_channels
        lowerCAmelCase__				:  List[str]		       =     image_size
        lowerCAmelCase__				:  Tuple		       =     width_coefficient
        lowerCAmelCase__				:  Optional[int]		       =     depth_coefficient
        lowerCAmelCase__				:  Tuple		       =     depth_divisor
        lowerCAmelCase__				:  List[Any]		       =     kernel_sizes
        lowerCAmelCase__				:  List[Any]		       =     in_channels
        lowerCAmelCase__				:  int		       =     out_channels
        lowerCAmelCase__				:  List[str]		       =     depthwise_padding
        lowerCAmelCase__				:  Optional[Any]		       =     strides
        lowerCAmelCase__				:  List[Any]		       =     num_block_repeats
        lowerCAmelCase__				:  List[Any]		       =     expand_ratios
        lowerCAmelCase__				:  Union[str, Any]		       =     squeeze_expansion_ratio
        lowerCAmelCase__				:  Any		       =     hidden_act
        lowerCAmelCase__				:  Tuple		       =     hidden_dim
        lowerCAmelCase__				:  List[Any]		       =     pooling_type
        lowerCAmelCase__				:  Optional[Any]		       =     initializer_range
        lowerCAmelCase__				:  int		       =     batch_norm_eps
        lowerCAmelCase__				:  Tuple		       =     batch_norm_momentum
        lowerCAmelCase__				:  str		       =     dropout_rate
        lowerCAmelCase__				:  Union[str, Any]		       =     drop_connect_rate
        lowerCAmelCase__				:  Optional[int]		       =     sum(__UpperCAmelCase		) * 4






class  _lowerCAmelCase     (  _lowercase	):
      A__		     =		version.parse('1.11'	)

      @property
      def 	__magic_name__(   self		):
        return OrderedDict(
            [
                ('''pixel_values''', {0: '''batch''', 1: '''num_channels''', 2: '''height''', 3: '''width'''}),
            ]		)




      @property
      def 	__magic_name__(   self		):
        return 1e-5







import warnings

from ...utils import logging
from .image_processing_owlvit import OwlViTImageProcessor


lowerCAmelCase_					    = logging.get_logger(__name__)






class  _lowerCAmelCase     (  _lowercase	):

      def __init__(   self      ,				*__UpperCAmelCase      ,				**__UpperCAmelCase		):
        warnings.warn(
            '''The class OwlViTFeatureExtractor is deprecated and will be removed in version 5 of Transformers. Please'''
            ''' use OwlViTImageProcessor instead.'''      ,				__UpperCAmelCase      ,				)
        super().__init__(*__UpperCAmelCase      ,				**__UpperCAmelCase		)

