



'''simple docstring'''





import argparse

import torch

from transformers import FunnelBaseModel, FunnelConfig, FunnelModel, load_tf_weights_in_funnel
from transformers.utils import logging


logging.set_verbosity_info()

def        a_     (							_lowerCAmelCase       ,_lowerCAmelCase       ,_lowerCAmelCase       ,_lowerCAmelCase       )      ->      str:
  # Initialise PyTorch model
  __lowerCamelCase       :       str           = FunnelConfig.from_json_file(_lowerCAmelCase       )
  print(F'Building PyTorch model from configuration: {config}'       )
  __lowerCamelCase       :       Optional[int]           = FunnelBaseModel(_lowerCAmelCase       ) if base_model else FunnelModel(_lowerCAmelCase       )

  # Load weights from tf checkpoint
  load_tf_weights_in_funnel(_lowerCAmelCase       ,_lowerCAmelCase       ,_lowerCAmelCase       )

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


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.'
   )
   parser.add_argument(
       '--base_model', action='store_true', help='Whether you want just the base model (no decoder) or not.'
   )
   _UpperCamelCase											=						parser.parse_args()
   convert_tf_checkpoint_to_pytorch(
       args.tf_checkpoint_path, args.config_file, args.pytorch_dump_path, args.base_model
   )











'''simple docstring'''





from collections.abc import Sequence

def        a_     (							_lowerCAmelCase       ,_lowerCAmelCase       )      ->      float:
  return sum(c * (x**i) for i, c in enumerate(_lowerCAmelCase       )       )

def        a_     (							_lowerCAmelCase       ,_lowerCAmelCase       )      ->      float:
  __lowerCamelCase       :       Any           = 0.0
  for coeff in reversed(_lowerCAmelCase       ):
    __lowerCamelCase       :       Tuple           = result * x + coeff
  return result


if __name__ == "__main__":
   _UpperCamelCase											=						(0.0, 0.0, 5.0, 9.3, 7.0)
   _UpperCamelCase											=						1_0.0
   print(evaluate_poly(poly, x))
   print(horner(poly, x))






