





'''simple docstring'''

from collections import OrderedDict
from typing import Mapping

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


lowercase_         =			logging.get_logger(__name__)

lowercase_         =			{
    """google/mobilebert-uncased""": """https://huggingface.co/google/mobilebert-uncased/resolve/main/config.json"""
}


class  a_					(    snake_case_	):

    '''simple docstring'''
    UpperCamelCase			   =			MOBILEBERT_PRETRAINED_CONFIG_ARCHIVE_MAP
    UpperCamelCase			   =			'''mobilebert'''


    def __init__(		self			,		A=3_0522			,		A=512			,		A=24			,		A=4			,		A=512			,		A="relu"			,		A=0.0			,		A=0.1			,		A=512			,		A=2			,		A=0.02			,		A=1e-12			,		A=0			,		A=128			,		A=True			,		A=True			,		A=128			,		A=False			,		A=True			,		A=4			,		A="no_norm"			,		A=True			,		A=None			,		**A			,		)		->       Dict:
        super().__init__(pad_token_id=A			,		**A	)

        _SCREAMING_SNAKE_CASE     =      vocab_size
        _SCREAMING_SNAKE_CASE     =      hidden_size
        _SCREAMING_SNAKE_CASE     =      num_hidden_layers
        _SCREAMING_SNAKE_CASE     =      num_attention_heads
        _SCREAMING_SNAKE_CASE     =      hidden_act
        _SCREAMING_SNAKE_CASE     =      intermediate_size
        _SCREAMING_SNAKE_CASE     =      hidden_dropout_prob
        _SCREAMING_SNAKE_CASE     =      attention_probs_dropout_prob
        _SCREAMING_SNAKE_CASE     =      max_position_embeddings
        _SCREAMING_SNAKE_CASE     =      type_vocab_size
        _SCREAMING_SNAKE_CASE     =      initializer_range
        _SCREAMING_SNAKE_CASE     =      layer_norm_eps
        _SCREAMING_SNAKE_CASE     =      embedding_size
        _SCREAMING_SNAKE_CASE     =      trigram_input
        _SCREAMING_SNAKE_CASE     =      use_bottleneck
        _SCREAMING_SNAKE_CASE     =      intra_bottleneck_size
        _SCREAMING_SNAKE_CASE     =      use_bottleneck_attention
        _SCREAMING_SNAKE_CASE     =      key_query_shared_bottleneck
        _SCREAMING_SNAKE_CASE     =      num_feedforward_networks
        _SCREAMING_SNAKE_CASE     =      normalization_type
        _SCREAMING_SNAKE_CASE     =      classifier_activation

        if self.use_bottleneck:
            _SCREAMING_SNAKE_CASE     =      intra_bottleneck_size
        else:
            _SCREAMING_SNAKE_CASE     =      hidden_size

        _SCREAMING_SNAKE_CASE     =      classifier_dropout




class  a_					(    snake_case_	):

    '''simple docstring'''


    @property
    def       snake_case_(		self	)		->       Mapping[str, Mapping[int, str]]:
        if self.task == "multiple-choice":
            _SCREAMING_SNAKE_CASE     =      {0: """batch""", 1: """choice""", 2: """sequence"""}
        else:
            _SCREAMING_SNAKE_CASE     =      {0: """batch""", 1: """sequence"""}
        return OrderedDict(
            [
                ("""input_ids""", dynamic_axis),
                ("""attention_mask""", dynamic_axis),
                ("""token_type_ids""", dynamic_axis),
            ]	)











'''simple docstring'''

from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_tf_available, is_torch_available


lowercase_         =			{
    """configuration_esm""": ["""ESM_PRETRAINED_CONFIG_ARCHIVE_MAP""", """EsmConfig"""],
    """tokenization_esm""": ["""EsmTokenizer"""],
}

try:
      if not is_torch_available():
            raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
      pass
else:
      lowercase_         =			[
          """ESM_PRETRAINED_MODEL_ARCHIVE_LIST""",
          """EsmForMaskedLM""",
          """EsmForSequenceClassification""",
          """EsmForTokenClassification""",
          """EsmModel""",
          """EsmPreTrainedModel""",
      ]
      lowercase_         =			["""EsmForProteinFolding""", """EsmFoldPreTrainedModel"""]

try:
      if not is_tf_available():
            raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
      pass
else:
      lowercase_         =			[
          """TF_ESM_PRETRAINED_MODEL_ARCHIVE_LIST""",
          """TFEsmForMaskedLM""",
          """TFEsmForSequenceClassification""",
          """TFEsmForTokenClassification""",
          """TFEsmModel""",
          """TFEsmPreTrainedModel""",
      ]

if TYPE_CHECKING:
      from .configuration_esm import ESM_PRETRAINED_CONFIG_ARCHIVE_MAP, EsmConfig
      from .tokenization_esm import EsmTokenizer

      try:
            if not is_torch_available():
                  raise OptionalDependencyNotAvailable()
      except OptionalDependencyNotAvailable:
            pass
      else:
            from .modeling_esm import (
                ESM_PRETRAINED_MODEL_ARCHIVE_LIST,
                EsmForMaskedLM,
                EsmForSequenceClassification,
                EsmForTokenClassification,
                EsmModel,
                EsmPreTrainedModel,
            )
            from .modeling_esmfold import EsmFoldPreTrainedModel, EsmForProteinFolding

      try:
            if not is_tf_available():
                  raise OptionalDependencyNotAvailable()
      except OptionalDependencyNotAvailable:
            pass
      else:
            from .modeling_tf_esm import (
                TF_ESM_PRETRAINED_MODEL_ARCHIVE_LIST,
                TFEsmForMaskedLM,
                TFEsmForSequenceClassification,
                TFEsmForTokenClassification,
                TFEsmModel,
                TFEsmPreTrainedModel,
            )


else:
      import sys

      lowercase_         =			_LazyModule(__name__, globals()["""__file__"""], _import_structure)



