






from typing import TYPE_CHECKING

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


UpperCAmelCase__				   =		{
    "configuration_electra": ["ELECTRA_PRETRAINED_CONFIG_ARCHIVE_MAP", "ElectraConfig", "ElectraOnnxConfig"],
    "tokenization_electra": ["ElectraTokenizer"],
}

try:
     if not is_tokenizers_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     UpperCAmelCase__				   =		["ElectraTokenizerFast"]

try:
     if not is_torch_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     UpperCAmelCase__				   =		[
         "ELECTRA_PRETRAINED_MODEL_ARCHIVE_LIST",
         "ElectraForCausalLM",
         "ElectraForMaskedLM",
         "ElectraForMultipleChoice",
         "ElectraForPreTraining",
         "ElectraForQuestionAnswering",
         "ElectraForSequenceClassification",
         "ElectraForTokenClassification",
         "ElectraModel",
         "ElectraPreTrainedModel",
         "load_tf_weights_in_electra",
     ]

try:
     if not is_tf_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     UpperCAmelCase__				   =		[
         "TF_ELECTRA_PRETRAINED_MODEL_ARCHIVE_LIST",
         "TFElectraForMaskedLM",
         "TFElectraForMultipleChoice",
         "TFElectraForPreTraining",
         "TFElectraForQuestionAnswering",
         "TFElectraForSequenceClassification",
         "TFElectraForTokenClassification",
         "TFElectraModel",
         "TFElectraPreTrainedModel",
     ]

try:
     if not is_flax_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     UpperCAmelCase__				   =		[
         "FlaxElectraForCausalLM",
         "FlaxElectraForMaskedLM",
         "FlaxElectraForMultipleChoice",
         "FlaxElectraForPreTraining",
         "FlaxElectraForQuestionAnswering",
         "FlaxElectraForSequenceClassification",
         "FlaxElectraForTokenClassification",
         "FlaxElectraModel",
         "FlaxElectraPreTrainedModel",
     ]


if TYPE_CHECKING:
     from .configuration_electra import ELECTRA_PRETRAINED_CONFIG_ARCHIVE_MAP, ElectraConfig, ElectraOnnxConfig
     from .tokenization_electra import ElectraTokenizer

     try:
          if not is_tokenizers_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .tokenization_electra_fast import ElectraTokenizerFast

     try:
          if not is_torch_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_electra import (
              ELECTRA_PRETRAINED_MODEL_ARCHIVE_LIST,
              ElectraForCausalLM,
              ElectraForMaskedLM,
              ElectraForMultipleChoice,
              ElectraForPreTraining,
              ElectraForQuestionAnswering,
              ElectraForSequenceClassification,
              ElectraForTokenClassification,
              ElectraModel,
              ElectraPreTrainedModel,
              load_tf_weights_in_electra,
          )

     try:
          if not is_tf_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_tf_electra import (
              TF_ELECTRA_PRETRAINED_MODEL_ARCHIVE_LIST,
              TFElectraForMaskedLM,
              TFElectraForMultipleChoice,
              TFElectraForPreTraining,
              TFElectraForQuestionAnswering,
              TFElectraForSequenceClassification,
              TFElectraForTokenClassification,
              TFElectraModel,
              TFElectraPreTrainedModel,
          )

     try:
          if not is_flax_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_flax_electra import (
              FlaxElectraForCausalLM,
              FlaxElectraForMaskedLM,
              FlaxElectraForMultipleChoice,
              FlaxElectraForPreTraining,
              FlaxElectraForQuestionAnswering,
              FlaxElectraForSequenceClassification,
              FlaxElectraForTokenClassification,
              FlaxElectraModel,
              FlaxElectraPreTrainedModel,
          )

else:
     import sys

     UpperCAmelCase__				   =		_LazyModule(__name__, globals()["__file__"], _import_structure, module_spec=__spec__)






from typing import TYPE_CHECKING

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


_snake_case             =     {
    '''configuration_squeezebert''': [
        '''SQUEEZEBERT_PRETRAINED_CONFIG_ARCHIVE_MAP''',
        '''SqueezeBertConfig''',
        '''SqueezeBertOnnxConfig''',
    ],
    '''tokenization_squeezebert''': ['''SqueezeBertTokenizer'''],
}

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

try:
   if not is_torch_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   _snake_case             =     [
       '''SQUEEZEBERT_PRETRAINED_MODEL_ARCHIVE_LIST''',
       '''SqueezeBertForMaskedLM''',
       '''SqueezeBertForMultipleChoice''',
       '''SqueezeBertForQuestionAnswering''',
       '''SqueezeBertForSequenceClassification''',
       '''SqueezeBertForTokenClassification''',
       '''SqueezeBertModel''',
       '''SqueezeBertModule''',
       '''SqueezeBertPreTrainedModel''',
   ]


if TYPE_CHECKING:
   from .configuration_squeezebert import (
       SQUEEZEBERT_PRETRAINED_CONFIG_ARCHIVE_MAP,
       SqueezeBertConfig,
       SqueezeBertOnnxConfig,
   )
   from .tokenization_squeezebert import SqueezeBertTokenizer

   try:
      if not is_tokenizers_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .tokenization_squeezebert_fast import SqueezeBertTokenizerFast

   try:
      if not is_torch_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .modeling_squeezebert import (
          SQUEEZEBERT_PRETRAINED_MODEL_ARCHIVE_LIST,
          SqueezeBertForMaskedLM,
          SqueezeBertForMultipleChoice,
          SqueezeBertForQuestionAnswering,
          SqueezeBertForSequenceClassification,
          SqueezeBertForTokenClassification,
          SqueezeBertModel,
          SqueezeBertModule,
          SqueezeBertPreTrainedModel,
      )

else:
   import sys

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



