





from typing import List

from ...configuration_utils import PretrainedConfig
from ...utils import logging


snake_case_           =      logging.get_logger(__name__)

snake_case_           =      {
    'snap-research/efficientformer-l1-300': (
        'https://huggingface.co/snap-research/efficientformer-l1-300/resolve/main/config.json'
    ),
}

class 		SCREAMING_SNAKE_CASE__    (	_UpperCAmelCase  ):
      A_						:    List[Any]							=   'efficientformer'


      def __init__(self	:				Tuple    ,      a__	:				List[int] = [3, 2, 6, 4]    ,      a__	:				List[int] = [48, 96, 224, 448]    ,      a__	:				List[bool] = [True, True, True, True]    ,      a__	:				int = 448    ,      a__	:				int = 32    ,      a__	:				int = 4    ,      a__	:				int = 7    ,      a__	:				int = 5    ,      a__	:				int = 8    ,      a__	:				int = 4    ,      a__	:				float = 0.0    ,      a__	:				int = 16    ,      a__	:				int = 3    ,      a__	:				int = 3    ,      a__	:				int = 3    ,      a__	:				int = 2    ,      a__	:				int = 1    ,      a__	:				float = 0.0    ,      a__	:				int = 1    ,      a__	:				bool = True    ,      a__	:				bool = True    ,      a__	:				float = 1E-5    ,      a__	:				str = "gelu"    ,      a__	:				float = 0.0_2    ,      a__	:				float = 1E-12    ,      a__	:				int = 224    ,      a__	:				float = 1E-05    ,      **a__	:				str    ,      ):





         """simple docstring"""



         super().__init__(**a__				)

         __snake_case								=       hidden_act
         __snake_case								=       hidden_dropout_prob
         __snake_case								=       hidden_sizes
         __snake_case								=       num_hidden_layers
         __snake_case								=       num_attention_heads
         __snake_case								=       initializer_range
         __snake_case								=       layer_norm_eps
         __snake_case								=       patch_size
         __snake_case								=       num_channels
         __snake_case								=       depths
         __snake_case								=       mlp_expansion_ratio
         __snake_case								=       downsamples
         __snake_case								=       dim
         __snake_case								=       key_dim
         __snake_case								=       attention_ratio
         __snake_case								=       resolution
         __snake_case								=       pool_size
         __snake_case								=       downsample_patch_size
         __snake_case								=       downsample_stride
         __snake_case								=       downsample_pad
         __snake_case								=       drop_path_rate
         __snake_case								=       num_metaad_blocks
         __snake_case								=       distillation
         __snake_case								=       use_layer_scale
         __snake_case								=       layer_scale_init_value
         __snake_case								=       image_size
         __snake_case								=       batch_norm_eps








from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


snake_case_           =      {
    'configuration_git': ['GIT_PRETRAINED_CONFIG_ARCHIVE_MAP', 'GitConfig', 'GitVisionConfig'],
    'processing_git': ['GitProcessor'],
}

try:
    if not is_torch_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    pass
else:
    snake_case_           =      [
        'GIT_PRETRAINED_MODEL_ARCHIVE_LIST',
        'GitForCausalLM',
        'GitModel',
        'GitPreTrainedModel',
        'GitVisionModel',
    ]

if TYPE_CHECKING:
    from .configuration_git import GIT_PRETRAINED_CONFIG_ARCHIVE_MAP, GitConfig, GitVisionConfig
    from .processing_git import GitProcessor

    try:
        if not is_torch_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .modeling_git import (
            GIT_PRETRAINED_MODEL_ARCHIVE_LIST,
            GitForCausalLM,
            GitModel,
            GitPreTrainedModel,
            GitVisionModel,
        )

else:
    import sys

    snake_case_           =      _LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)

