






from collections import OrderedDict
from typing import Mapping

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


_a   			=						logging.get_logger(__name__)

_a   			=						{
    '''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 __lowerCamelCase				(   snake_case__):





	"""simple docstring"""






	UpperCamelCase__			=   SQUEEZEBERT_PRETRAINED_CONFIG_ARCHIVE_MAP
	UpperCamelCase__			=   "squeezebert"

	def __init__(							self ,					UpperCAmelCase=3_0522 ,					UpperCAmelCase=768 ,					UpperCAmelCase=12 ,					UpperCAmelCase=12 ,					UpperCAmelCase=3072 ,					UpperCAmelCase="gelu" ,					UpperCAmelCase=0.1 ,					UpperCAmelCase=0.1 ,					UpperCAmelCase=512 ,					UpperCAmelCase=2 ,					UpperCAmelCase=0.02 ,					UpperCAmelCase=1e-12 ,					UpperCAmelCase=0 ,					UpperCAmelCase=768 ,					UpperCAmelCase=4 ,					UpperCAmelCase=4 ,					UpperCAmelCase=4 ,					UpperCAmelCase=1 ,					UpperCAmelCase=4 ,					UpperCAmelCase=4 ,					**UpperCAmelCase ,					):
							"""simple docstring"""







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

							_UpperCAmelCase             =    vocab_size
							_UpperCAmelCase             =    hidden_size
							_UpperCAmelCase             =    num_hidden_layers
							_UpperCAmelCase             =    num_attention_heads
							_UpperCAmelCase             =    hidden_act
							_UpperCAmelCase             =    intermediate_size
							_UpperCAmelCase             =    hidden_dropout_prob
							_UpperCAmelCase             =    attention_probs_dropout_prob
							_UpperCAmelCase             =    max_position_embeddings
							_UpperCAmelCase             =    type_vocab_size
							_UpperCAmelCase             =    initializer_range
							_UpperCAmelCase             =    layer_norm_eps
							_UpperCAmelCase             =    embedding_size
							_UpperCAmelCase             =    q_groups
							_UpperCAmelCase             =    k_groups
							_UpperCAmelCase             =    v_groups
							_UpperCAmelCase             =    post_attention_groups
							_UpperCAmelCase             =    intermediate_groups
							_UpperCAmelCase             =    output_groups





class __lowerCamelCase				(   snake_case__):





	"""simple docstring"""






	@property
	def  UpperCamelCase					(							self					):
							"""simple docstring"""







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








from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


_a   			=						{'''configuration_qdqbert''': ['''QDQBERT_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''QDQBertConfig''']}

try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		_a   			=						[
		    '''QDQBERT_PRETRAINED_MODEL_ARCHIVE_LIST''',
		    '''QDQBertForMaskedLM''',
		    '''QDQBertForMultipleChoice''',
		    '''QDQBertForNextSentencePrediction''',
		    '''QDQBertForQuestionAnswering''',
		    '''QDQBertForSequenceClassification''',
		    '''QDQBertForTokenClassification''',
		    '''QDQBertLayer''',
		    '''QDQBertLMHeadModel''',
		    '''QDQBertModel''',
		    '''QDQBertPreTrainedModel''',
		    '''load_tf_weights_in_qdqbert''',
		]


if TYPE_CHECKING:
		from .configuration_qdqbert import QDQBERT_PRETRAINED_CONFIG_ARCHIVE_MAP, QDQBertConfig

		try:
				if not is_torch_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_qdqbert import (
				    QDQBERT_PRETRAINED_MODEL_ARCHIVE_LIST,
				    QDQBertForMaskedLM,
				    QDQBertForMultipleChoice,
				    QDQBertForNextSentencePrediction,
				    QDQBertForQuestionAnswering,
				    QDQBertForSequenceClassification,
				    QDQBertForTokenClassification,
				    QDQBertLayer,
				    QDQBertLMHeadModel,
				    QDQBertModel,
				    QDQBertPreTrainedModel,
				    load_tf_weights_in_qdqbert,
				)


else:
		import sys

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