

'''simple docstring'''







import argparse

import torch

from transformers import GPTaConfig, GPTaModel, load_tf_weights_in_gpta
from transformers.utils import CONFIG_NAME, WEIGHTS_NAME, logging


logging.set_verbosity_info()
def       UpperCAmelCase__    (      UpperCAmelCase__,       UpperCAmelCase__,       UpperCAmelCase__				)			->			Optional[Any]:
							# Construct model
							if gpta_config_file == "":
														A_						=      GPTaConfig()
							else:
														A_						=      GPTaConfig.from_json_file(_A				)
							A_						=      GPTaModel(_A				)

							# Load weights from numpy
							load_tf_weights_in_gpta(_A,       _A,       _A				)

							# Save pytorch-model
							A_						=      pytorch_dump_folder_path + """/""" + WEIGHTS_NAME
							A_						=      pytorch_dump_folder_path + """/""" + CONFIG_NAME
							print(F'''Save PyTorch model to {pytorch_weights_dump_path}'''				)
							torch.save(model.state_dict(),       _A				)
							print(F'''Save configuration file to {pytorch_config_dump_path}'''				)
							with open(_A,       """w""",       encoding="""utf-8"""				) as f:
														f.write(config.to_json_string()				)


if __name__ == "__main__":
						__lowerCamelCase		       =    argparse.ArgumentParser()
						# Required parameters
						parser.add_argument(
						    '''--gpt2_checkpoint_path''', default=None, type=str, required=True, help='''Path to the TensorFlow checkpoint path.'''
						)
						parser.add_argument(
						    '''--pytorch_dump_folder_path''', default=None, type=str, required=True, help='''Path to the output PyTorch model.'''
						)
						parser.add_argument(
						    '''--gpt2_config_file''',
						    default='''''',
						    type=str,
						    help=(
						        '''An optional config json file corresponding to the pre-trained OpenAI model. \n'''
						        '''This specifies the model architecture.'''
						    ),
						)
						__lowerCamelCase		       =    parser.parse_args()
						convert_gpta_checkpoint_to_pytorch(args.gpta_checkpoint_path, args.gpta_config_file, args.pytorch_dump_folder_path)



'''simple docstring'''







def       UpperCAmelCase__    (      UpperCAmelCase__				)			->			bool:
       return str(UpperCAmelCase__				) == str(UpperCAmelCase__				)[::-1]
def       UpperCAmelCase__    (      UpperCAmelCase__				)			->			int:
       return int(UpperCAmelCase__				) + int(str(UpperCAmelCase__				)[::-1]				)
def       UpperCAmelCase__    (      UpperCAmelCase__ = 1_00_00				)			->			int:
       A_						=      []
       for num in range(1,       UpperCAmelCase__				):
              A_						=      0
              A_						=      num
              while iterations < 50:
                     A_						=      sum_reverse(UpperCAmelCase__				)
                     iterations += 1
                     if is_palindrome(UpperCAmelCase__				):
                            break
              else:
                     lychrel_nums.append(UpperCAmelCase__				)
       return len(UpperCAmelCase__				)


if __name__ == "__main__":
      print(f"""{solution() = }""")
