



import argparse

import torch

from transformers import MobileBertConfig, MobileBertForPreTraining, load_tf_weights_in_mobilebert
from transformers.utils import logging


logging.set_verbosity_info()





def 					__snake_case     (      _UpperCAmelCase       ,			_UpperCAmelCase       ,			_UpperCAmelCase    ):
    # Initialise PyTorch model
    __a							=    MobileBertConfig.from_json_file(_UpperCAmelCase    )
    print(f'Building PyTorch model from configuration: {config}'    )
    __a							=    MobileBertForPreTraining(_UpperCAmelCase    )
    # Load weights from tf checkpoint
    __a							=    load_tf_weights_in_mobilebert(_UpperCAmelCase       ,			_UpperCAmelCase       ,			_UpperCAmelCase    )
    # Save pytorch-model
    print(f'Save PyTorch model to {pytorch_dump_path}'    )
    torch.save(model.state_dict()       ,			_UpperCAmelCase    )


if __name__ == "__main__":
 __snake_case						:Union[str, Any]						=					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(
     '''--mobilebert_config_file''',
     default=None,
     type=str,
     required=True,
     help=(
         '''The config json file corresponding to the pre-trained MobileBERT model. \n'''
         '''This specifies the model architecture.'''
     ),
 )
 parser.add_argument(
     '''--pytorch_dump_path''', default=None, type=str, required=True, help='''Path to the output PyTorch model.'''
 )
 __snake_case						:Union[str, Any]						=					parser.parse_args()
 convert_tf_checkpoint_to_pytorch(args.tf_checkpoint_path, args.mobilebert_config_file, args.pytorch_dump_path)










def 					__snake_case     (      _UpperCAmelCase    ):
    if not isinstance(_UpperCAmelCase       ,			_UpperCAmelCase    ):
        raise TypeError('''Input value must be an \'int\' type'''    )

    __a							=    0
    while number:
        position += 1
        number >>= 1

    return position


if __name__ == "__main__":
 import doctest

 doctest.testmod()





