code: 
  
  import argparse
  
  import torch
  
  from transformers import ElectraConfig, ElectraForMaskedLM, ElectraForPreTraining, load_tf_weights_in_electra
  from transformers.utils import logging
  
  
  logging.set_verbosity_info()
  
  
  
  
  def     UpperCAmelCase__       (    _A   :				int			,   _A   :				List[Any]			,   _A   :				Tuple			,   _A   :				int							):
  
  
  
  
  
    '''simple docstring'''
  
  
  
  
  
  
  
    a__						=ElectraConfig.from_json_file(_A							)
    print(F"""Building PyTorch model from configuration: {config}"""							)
  
    if discriminator_or_generator == "discriminator":
      a__						=ElectraForPreTraining(_A							)
    elif discriminator_or_generator == "generator":
      a__						=ElectraForMaskedLM(_A							)
    else:
      raise ValueError('''The discriminator_or_generator argument should be either \'discriminator\' or \'generator\''''							)
  
    # Load weights from tf checkpoint
    load_tf_weights_in_electra(
        _A			,   _A			,   _A			,   discriminator_or_generator=_A							)
  
    # Save pytorch-model
    print(F"""Save PyTorch model to {pytorch_dump_path}"""							)
    torch.save(model.state_dict()			,   _A							)
  
  
  if __name__ == "__main__":
         lowerCamelCase     =      argparse.ArgumentParser()
         # Required parameters
         parser.add_argument(
             '''--tf_checkpoint_path''', default=None, type=str, required=True, help='''Path to the TensorFlow checkpoint path.'''
         )
         parser.add_argument(
             '''--config_file''',
             default=None,
             type=str,
             required=True,
             help='''The config json file corresponding to the pre-trained model. \nThis specifies the model architecture.''',
         )
         parser.add_argument(
             '''--pytorch_dump_path''', default=None, type=str, required=True, help='''Path to the output PyTorch model.'''
         )
         parser.add_argument(
             '''--discriminator_or_generator''',
             default=None,
             type=str,
             required=True,
             help=(
                 '''Whether to export the generator or the discriminator. Should be a string, either \'discriminator\' or '''
                 '''\'generator\'.'''
             ),
         )
         lowerCamelCase     =      parser.parse_args()
         convert_tf_checkpoint_to_pytorch(
             args.tf_checkpoint_path, args.config_file, args.pytorch_dump_path, args.discriminator_or_generator
         )
  
style_context: 
  
  from typing import TYPE_CHECKING
  
  from ...utils import (
      OptionalDependencyNotAvailable,
      _LazyModule,
      is_tf_available,
      is_tokenizers_available,
      is_torch_available,
  )
  
  
  lowerCamelCase     =      {
      '''configuration_deberta_v2''': ['''DEBERTA_V2_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''DebertaV2Config''', '''DebertaV2OnnxConfig'''],
      '''tokenization_deberta_v2''': ['''DebertaV2Tokenizer'''],
  }
  
  try:
         if not is_tokenizers_available():
                raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
         pass
  else:
         lowerCamelCase     =      ['''DebertaV2TokenizerFast''']
  
  try:
         if not is_tf_available():
                raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
         pass
  else:
         lowerCamelCase     =      [
             '''TF_DEBERTA_V2_PRETRAINED_MODEL_ARCHIVE_LIST''',
             '''TFDebertaV2ForMaskedLM''',
             '''TFDebertaV2ForQuestionAnswering''',
             '''TFDebertaV2ForSequenceClassification''',
             '''TFDebertaV2ForTokenClassification''',
             '''TFDebertaV2Model''',
             '''TFDebertaV2PreTrainedModel''',
         ]
  
  try:
         if not is_torch_available():
                raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
         pass
  else:
         lowerCamelCase     =      [
             '''DEBERTA_V2_PRETRAINED_MODEL_ARCHIVE_LIST''',
             '''DebertaV2ForMaskedLM''',
             '''DebertaV2ForMultipleChoice''',
             '''DebertaV2ForQuestionAnswering''',
             '''DebertaV2ForSequenceClassification''',
             '''DebertaV2ForTokenClassification''',
             '''DebertaV2Model''',
             '''DebertaV2PreTrainedModel''',
         ]
  
  
  if TYPE_CHECKING:
         from .configuration_deberta_va import (
             DEBERTA_V2_PRETRAINED_CONFIG_ARCHIVE_MAP,
             DebertaVaConfig,
             DebertaVaOnnxConfig,
         )
         from .tokenization_deberta_va import DebertaVaTokenizer
  
         try:
                if not is_tokenizers_available():
                       raise OptionalDependencyNotAvailable()
         except OptionalDependencyNotAvailable:
                pass
         else:
                from .tokenization_deberta_va_fast import DebertaVaTokenizerFast
  
         try:
                if not is_tf_available():
                       raise OptionalDependencyNotAvailable()
         except OptionalDependencyNotAvailable:
                pass
         else:
                from .modeling_tf_deberta_va import (
                    TF_DEBERTA_V2_PRETRAINED_MODEL_ARCHIVE_LIST,
                    TFDebertaVaForMaskedLM,
                    TFDebertaVaForQuestionAnswering,
                    TFDebertaVaForSequenceClassification,
                    TFDebertaVaForTokenClassification,
                    TFDebertaVaModel,
                    TFDebertaVaPreTrainedModel,
                )
  
         try:
                if not is_torch_available():
                       raise OptionalDependencyNotAvailable()
         except OptionalDependencyNotAvailable:
                pass
         else:
                from .modeling_deberta_va import (
                    DEBERTA_V2_PRETRAINED_MODEL_ARCHIVE_LIST,
                    DebertaVaForMaskedLM,
                    DebertaVaForMultipleChoice,
                    DebertaVaForQuestionAnswering,
                    DebertaVaForSequenceClassification,
                    DebertaVaForTokenClassification,
                    DebertaVaModel,
                    DebertaVaPreTrainedModel,
                )
  
  else:
         import sys
  
         lowerCamelCase     =      _LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)
  