




"""simple docstring"""
import argparse

import torch

from transformers import OpenAIGPTConfig, OpenAIGPTModel, load_tf_weights_in_openai_gpt
from transformers.utils import CONFIG_NAME, WEIGHTS_NAME, logging


logging.set_verbosity_info()





def 						UpperCAmelCase				(			A__:    Dict							,				A__:    Optional[int]							,				A__:    Optional[Any]     )  ->     Any:
			# Construct model
			if openai_config_file == "":
						__lowerCamelCase					:	Any	       =				OpenAIGPTConfig()
			else:
						__lowerCamelCase					:	Union[str, Any]	       =				OpenAIGPTConfig.from_json_file(A__     )
			__lowerCamelCase					:	str	       =				OpenAIGPTModel(A__     )

			# Load weights from numpy
			load_tf_weights_in_openai_gpt(A__							,				A__							,				A__     )

			# Save pytorch-model
			__lowerCamelCase					:	int	       =				pytorch_dump_folder_path + '/' + WEIGHTS_NAME
			__lowerCamelCase					:	List[str]	       =				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__":
					a_				:    Tuple										=     argparse.ArgumentParser()
					# Required parameters
					parser.add_argument(
					    '''--openai_checkpoint_folder_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(
					    '''--openai_config_file''',
					    default='''''',
					    type=str,
					    help=(
					        '''An optional config json file corresponding to the pre-trained OpenAI model. \n'''
					        '''This specifies the model architecture.'''
					    ),
					)
					a_				:    Optional[int]										=     parser.parse_args()
					convert_openai_checkpoint_to_pytorch(
					    args.openai_checkpoint_folder_path, args.openai_config_file, args.pytorch_dump_folder_path
					)









"""simple docstring"""
import random
from typing import Any





def 						UpperCAmelCase				(			A__:    list     )  ->     list[Any]:
			for _ in range(len(A__     )     ):
						__lowerCamelCase					:	List[Any]	       =				random.randint(0							,				len(A__     ) - 1     )
						__lowerCamelCase					:	Optional[Any]	       =				random.randint(0							,				len(A__     ) - 1     )
						__lowerCamelCase       ,      __lowerCamelCase					:	Any	       =				data[b], data[a]
			return data


if __name__ == "__main__":
					a_				:    Any										=     [0, 1, 2, 3, 4, 5, 6, 7]
					a_				:    int										=     ['''python''', '''says''', '''hello''', '''!''']
					print('''Fisher-Yates Shuffle:''')
					print('''List''', integers, strings)
					print('''FY Shuffle''', fisher_yates_shuffle(integers), fisher_yates_shuffle(strings))



