



import argparse

import torch

from transformers import LxmertConfig, LxmertForPreTraining, load_tf_weights_in_lxmert
from transformers.utils import logging


logging.set_verbosity_info()






def  UpperCAmelCase__    (    lowercase__						,       lowercase__						,       lowercase__   ) ->      List[str]:
						# Initialise PyTorch model
						__lowercase					=				LxmertConfig.from_json_file(lowercase__   )
						print(F"Building PyTorch model from configuration: {config}"   )
						__lowercase					=				LxmertForPreTraining(lowercase__   )

						# Load weights from tf checkpoint
						load_tf_weights_in_lxmert(lowercase__						,       lowercase__						,       lowercase__   )

						# Save pytorch-model
						print(F"Save PyTorch model to {pytorch_dump_path}"   )
						torch.save(model.state_dict()						,       lowercase__   )


if __name__ == "__main__":
			UpperCamelCase__ =						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."
			)
			UpperCamelCase__ =						parser.parse_args()
			convert_tf_checkpoint_to_pytorch(args.tf_checkpoint_path, args.config_file, args.pytorch_dump_path)










from dataclasses import dataclass, field
from typing import ClassVar, Dict

from ..features import Features, Value
from .base import TaskTemplate
@dataclass(frozen=_UpperCAmelCase			)
class 			_lowerCAmelCase   ( _UpperCAmelCase			):






			"""simple docstring"""





			lowercase__      :  str      =			field(default="""summarization"""    ,					metadata={"""include_in_asdict_even_if_is_default""": True}			)
			lowercase__      :  ClassVar[Features]      =			Features({"""text""": Value("""string"""			)}			)
			lowercase__      :  ClassVar[Features]      =			Features({"""summary""": Value("""string"""			)}			)
			lowercase__      :  str      =			"text"
			lowercase__      :  str      =			"summary"





			@property
			def 		snake_case__			(				self	:       List[Any]   )						->					Dict[str, str]:
									"""simple docstring"""







									return {self.text_column: "text", self.summary_column: "summary"}





