



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

from ..features import Audio, Features, Value
from .base import TaskTemplate



@dataclass(frozen=snake_case__	)
class 		_lowercase		(       snake_case__	):
   _UpperCAmelCase     	=			field(default='''automatic-speech-recognition''',   metadata={'''include_in_asdict_even_if_is_default''': True}	)
   _UpperCAmelCase     	=			Features({'''audio''': Audio()}	)
   _UpperCAmelCase     	=			Features({'''transcription''': Value('''string'''	)}	)
   _UpperCAmelCase     	=			"audio"
   _UpperCAmelCase     	=			"transcription"

   def 		A							(      self			:       List[Any]							,   __lowerCAmelCase			:       Any							)       ->				int:


    """simple docstring"""






    if self.audio_column not in features:
     raise ValueError(f"""Column {self.audio_column} is not present in features."""							)
    if not isinstance(features[self.audio_column]							,   UpperCAmelCase_							):
     raise ValueError(f"""Column {self.audio_column} is not an Audio type."""							)
    a						=		copy.deepcopy(self							)
    a						=		self.input_schema.copy()
    a						=		features[self.audio_column]
    a						=		input_schema
    return task_template




   @property
   def 		A							(      self			:       List[str]							)       ->				Dict[str, str]:


    """simple docstring"""






    return {self.audio_column: "audio", self.transcription_column: "transcription"}






import argparse

from transformers import TaConfig, TaForConditionalGeneration, load_tf_weights_in_ta
from transformers.utils import logging


logging.set_verbosity_info()


def 	UpperCAmelCase__      (      UpperCAmelCase__ :Optional[int] ,					UpperCAmelCase__ :List[str] ,					UpperCAmelCase__ :Any					):






 '''simple docstring'''

 a						=		TaConfig.from_json_file(UpperCAmelCase__					)
 print(F"""Building PyTorch model from configuration: {config}"""					)
 a						=		TaForConditionalGeneration(UpperCAmelCase__					)

 # Load weights from tf checkpoint
 load_tf_weights_in_ta(UpperCAmelCase__ ,					UpperCAmelCase__ ,					UpperCAmelCase__					)

 # Save pytorch-model
 print(F"""Save PyTorch model to {pytorch_dump_path}"""					)
 model.save_pretrained(UpperCAmelCase__					)


if __name__ == "__main__":
     A_		:     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(
         '''--config_file''',
         default=None,
         type=str,
         required=True,
         help=(
             '''The config json file corresponding to the pre-trained T5 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.'''
     )
     A_		:     Tuple        =     parser.parse_args()
     convert_tf_checkpoint_to_pytorch(args.tf_checkpoint_path, args.config_file, args.pytorch_dump_path)

