




import argparse

import torch

from ...utils import logging
from . import AlbertConfig, AlbertForPreTraining, load_tf_weights_in_albert


logging.set_verbosity_info()

def  SCREAMING_SNAKE_CASE							(       __UpperCamelCase		, __UpperCamelCase		, __UpperCamelCase)      ->					Any:
     # Initialise PyTorch model
     a     =				AlbertConfig.from_json_file(__UpperCamelCase)
     print(f'''Building PyTorch model from configuration: {config}''')
     a     =				AlbertForPreTraining(__UpperCamelCase)

     # Load weights from tf checkpoint
     load_tf_weights_in_albert(__UpperCamelCase		, __UpperCamelCase		, __UpperCamelCase)

     # Save pytorch-model
     print(f'''Save PyTorch model to {pytorch_dump_path}''')
     torch.save(model.state_dict()		, __UpperCamelCase)


if __name__ == "__main__":
   lowercase__				:      List[str]	   = 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(
       "--albert_config_file",
       default=None,
       type=str,
       required=True,
       help=(
           "The config json file corresponding to the pre-trained ALBERT 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."
   )
   lowercase__				:      Optional[Any]	   = parser.parse_args()
   convert_tf_checkpoint_to_pytorch(args.tf_checkpoint_path, args.albert_config_file, args.pytorch_dump_path)







from __future__ import annotations

def  SCREAMING_SNAKE_CASE							(       __UpperCamelCase)      ->					list[int]:
     a     =				2
     a     =				[]
     while i * i <= n:
          if n % i:
               i += 1
          else:
               n //= i
               factors.append(__UpperCamelCase)
     if n > 1:
          factors.append(__UpperCamelCase)
     return factors


if __name__ == "__main__":
   import doctest

   doctest.testmod()

