

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


lowerCAmelCase_       	=	logging.get_logger(__name__)

lowerCAmelCase_       	=	{
    '''sayakpaul/vit-msn-base''': '''https://huggingface.co/sayakpaul/vit-msn-base/resolve/main/config.json''',
    # See all ViT MSN models at https://huggingface.co/models?filter=vit_msn
}





class 	snake_case_   (		__A					):







			'''simple docstring'''

			SCREAMING_SNAKE_CASE     :   List[Any]									=				"vit_msn"







			def __init__(     self :				Dict							,   _UpperCamelCase :				Optional[int]=7_6_8							,   _UpperCamelCase :				Optional[Any]=1_2							,   _UpperCamelCase :				Union[str, Any]=1_2							,   _UpperCamelCase :				str=3_0_7_2							,   _UpperCamelCase :				Tuple="gelu"							,   _UpperCamelCase :				Dict=0.0							,   _UpperCamelCase :				Dict=0.0							,   _UpperCamelCase :				List[str]=0.02							,   _UpperCamelCase :				List[Any]=1e-06							,   _UpperCamelCase :				Any=2_2_4							,   _UpperCamelCase :				Optional[Any]=1_6							,   _UpperCamelCase :				Any=3							,   _UpperCamelCase :				str=True							,   **_UpperCamelCase :				Any							,   )      ->int:
									super().__init__(**_UpperCamelCase							)

									snake_case_   =	hidden_size
									snake_case_   =	num_hidden_layers
									snake_case_   =	num_attention_heads
									snake_case_   =	intermediate_size
									snake_case_   =	hidden_act
									snake_case_   =	hidden_dropout_prob
									snake_case_   =	attention_probs_dropout_prob
									snake_case_   =	initializer_range
									snake_case_   =	layer_norm_eps
									snake_case_   =	image_size
									snake_case_   =	patch_size
									snake_case_   =	num_channels
									snake_case_   =	qkv_bias



'''simple docstring'''
from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_sentencepiece_available,
    is_tf_available,
    is_tokenizers_available,
    is_torch_available,
)


UpperCamelCase__    					=      {
    '''configuration_rembert''': ['''REMBERT_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''RemBertConfig''', '''RemBertOnnxConfig''']
}

try:
  if not is_sentencepiece_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  UpperCamelCase__    					=      ['''RemBertTokenizer''']

try:
  if not is_tokenizers_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  UpperCamelCase__    					=      ['''RemBertTokenizerFast''']

try:
  if not is_torch_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  UpperCamelCase__    					=      [
      '''REMBERT_PRETRAINED_MODEL_ARCHIVE_LIST''',
      '''RemBertForCausalLM''',
      '''RemBertForMaskedLM''',
      '''RemBertForMultipleChoice''',
      '''RemBertForQuestionAnswering''',
      '''RemBertForSequenceClassification''',
      '''RemBertForTokenClassification''',
      '''RemBertLayer''',
      '''RemBertModel''',
      '''RemBertPreTrainedModel''',
      '''load_tf_weights_in_rembert''',
  ]


try:
  if not is_tf_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  UpperCamelCase__    					=      [
      '''TF_REMBERT_PRETRAINED_MODEL_ARCHIVE_LIST''',
      '''TFRemBertForCausalLM''',
      '''TFRemBertForMaskedLM''',
      '''TFRemBertForMultipleChoice''',
      '''TFRemBertForQuestionAnswering''',
      '''TFRemBertForSequenceClassification''',
      '''TFRemBertForTokenClassification''',
      '''TFRemBertLayer''',
      '''TFRemBertModel''',
      '''TFRemBertPreTrainedModel''',
  ]


if TYPE_CHECKING:
  from .configuration_rembert import REMBERT_PRETRAINED_CONFIG_ARCHIVE_MAP, RemBertConfig, RemBertOnnxConfig

  try:
    if not is_sentencepiece_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .tokenization_rembert import RemBertTokenizer

  try:
    if not is_tokenizers_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .tokenization_rembert_fast import RemBertTokenizerFast

  try:
    if not is_torch_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .modeling_rembert import (
        REMBERT_PRETRAINED_MODEL_ARCHIVE_LIST,
        RemBertForCausalLM,
        RemBertForMaskedLM,
        RemBertForMultipleChoice,
        RemBertForQuestionAnswering,
        RemBertForSequenceClassification,
        RemBertForTokenClassification,
        RemBertLayer,
        RemBertModel,
        RemBertPreTrainedModel,
        load_tf_weights_in_rembert,
    )

  try:
    if not is_tf_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .modeling_tf_rembert import (
        TF_REMBERT_PRETRAINED_MODEL_ARCHIVE_LIST,
        TFRemBertForCausalLM,
        TFRemBertForMaskedLM,
        TFRemBertForMultipleChoice,
        TFRemBertForQuestionAnswering,
        TFRemBertForSequenceClassification,
        TFRemBertForTokenClassification,
        TFRemBertLayer,
        TFRemBertModel,
        TFRemBertPreTrainedModel,
    )


else:
  import sys

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