from collections import OrderedDict
from typing import Mapping

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


__snake_case         =     logging.get_logger(__name__)

__snake_case         =     {
    '''squeezebert/squeezebert-uncased''': (
        '''https://huggingface.co/squeezebert/squeezebert-uncased/resolve/main/config.json'''
    ),
    '''squeezebert/squeezebert-mnli''': '''https://huggingface.co/squeezebert/squeezebert-mnli/resolve/main/config.json''',
    '''squeezebert/squeezebert-mnli-headless''': (
        '''https://huggingface.co/squeezebert/squeezebert-mnli-headless/resolve/main/config.json'''
    ),
}







class       __snake_case (  lowerCAmelCase__ ):
 __lowerCamelCase     : Any 	=   SQUEEZEBERT_PRETRAINED_CONFIG_ARCHIVE_MAP
 __lowerCamelCase     : Tuple 	=   'squeezebert'
 def __init__(	self		, snake_case__=3_0522		, snake_case__=768		, snake_case__=12		, snake_case__=12		, snake_case__=3072		, snake_case__="gelu"		, snake_case__=0.1		, snake_case__=0.1		, snake_case__=512		, snake_case__=2		, snake_case__=0.02		, snake_case__=1e-12		, snake_case__=0		, snake_case__=768		, snake_case__=4		, snake_case__=4		, snake_case__=4		, snake_case__=1		, snake_case__=4		, snake_case__=4		, **snake_case__		, )						->				str:
       '''simple docstring'''





       super().__init__(pad_token_id=lowercase__		, **lowercase__    )

       UpperCAmelCase     :			Optional[int]     	=vocab_size
       UpperCAmelCase     :			int     	=hidden_size
       UpperCAmelCase     :			Optional[int]     	=num_hidden_layers
       UpperCAmelCase     :			Any     	=num_attention_heads
       UpperCAmelCase     :			Optional[Any]     	=hidden_act
       UpperCAmelCase     :			Optional[int]     	=intermediate_size
       UpperCAmelCase     :			Any     	=hidden_dropout_prob
       UpperCAmelCase     :			List[str]     	=attention_probs_dropout_prob
       UpperCAmelCase     :			Any     	=max_position_embeddings
       UpperCAmelCase     :			int     	=type_vocab_size
       UpperCAmelCase     :			List[Any]     	=initializer_range
       UpperCAmelCase     :			Tuple     	=layer_norm_eps
       UpperCAmelCase     :			str     	=embedding_size
       UpperCAmelCase     :			Union[str, Any]     	=q_groups
       UpperCAmelCase     :			Union[str, Any]     	=k_groups
       UpperCAmelCase     :			Union[str, Any]     	=v_groups
       UpperCAmelCase     :			Any     	=post_attention_groups
       UpperCAmelCase     :			List[Any]     	=intermediate_groups
       UpperCAmelCase     :			Optional[int]     	=output_groups







class       __snake_case (  lowerCAmelCase__ ):
 @property
 def 						UpperCAmelCase__							(	self    )						->				Mapping[str, Mapping[int, str]]:
       '''simple docstring'''





       if self.task == "multiple-choice":
             UpperCAmelCase     :			int     	={0: '''batch''', 1: '''choice''', 2: '''sequence'''}
       else:
             UpperCAmelCase     :			Dict     	={0: '''batch''', 1: '''sequence'''}
       return OrderedDict(
           [
               ('''input_ids''', dynamic_axis),
               ('''attention_mask''', dynamic_axis),
               ('''token_type_ids''', dynamic_axis),
           ]    )








from collections import OrderedDict
from typing import Mapping

from packaging import version

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


snake_case_   :	Optional[Any]							      =logging.get_logger(__name__)

snake_case_   :	Any							      ={
    '''MBZUAI/swiftformer-xs''': '''https://huggingface.co/MBZUAI/swiftformer-xs/resolve/main/config.json''',
}





class        a__      (	lowerCAmelCase__		):
		UpperCAmelCase_							:       Union[str, Any] 					= 'swiftformer'






		def __init__(      self							, lowercase__=3							, lowercase__=[3, 3, 6, 4]							, lowercase__=[48, 56, 112, 220]							, lowercase__=4							, lowercase__=[True, True, True, True]							, lowercase__="gelu"							, lowercase__=3							, lowercase__=2							, lowercase__=1							, lowercase__=0.0							, lowercase__=True							, lowercase__=1e-5							, lowercase__=1e-5							, **lowercase__							, )				->				Optional[Any]:
				super().__init__(**lowercase__						)
				__A    =							num_channels
				__A    =							depths
				__A    =							embed_dims
				__A    =							mlp_ratio
				__A    =							downsamples
				__A    =							hidden_act
				__A    =							down_patch_size
				__A    =							down_stride
				__A    =							down_pad
				__A    =							drop_path_rate
				__A    =							use_layer_scale
				__A    =							layer_scale_init_value
				__A    =							batch_norm_eps





class        a__      (	lowerCAmelCase__		):
		UpperCAmelCase_							:       Union[str, Any] 					= version.parse('1.11'		)






		@property
		def 					_lowerCamelCase					(      self						)				->				Mapping[str, Mapping[int, str]]:
				return OrderedDict(
				    [
				        ("pixel_values", {0: "batch", 1: "num_channels", 2: "height", 3: "width"}),
				    ]						)






		@property
		def 					_lowerCamelCase					(      self						)				->				float:
				return 1e-4

