
"""simple docstring"""
import os
import sys

import transformers


lowercase_							:    List[Any]         =						"""3"""

print('''Python version:''', sys.version)
print('''transformers version:''', transformers.__version__)

try:
      import torch

      print('''Torch version:''', torch.__version__)
      print('''Cuda available:''', torch.cuda.is_available())
      print('''Cuda version:''', torch.version.cuda)
      print('''CuDNN version:''', torch.backends.cudnn.version())
      print('''Number of GPUs available:''', torch.cuda.device_count())
      print('''NCCL version:''', torch.cuda.nccl.version())
except ImportError:
      print('''Torch version:''', None)

try:
      import deepspeed

      print('''DeepSpeed version:''', deepspeed.__version__)
except ImportError:
      print('''DeepSpeed version:''', None)

try:
      import tensorflow as tf

      print('''TensorFlow version:''', tf.__version__)
      print('''TF GPUs available:''', bool(tf.config.list_physical_devices('''GPU''')))
      print('''Number of TF GPUs available:''', len(tf.config.list_physical_devices('''GPU''')))
except ImportError:
      print('''TensorFlow version:''', None)









"""simple docstring"""




from ....configuration_utils import PretrainedConfig
from ....utils import logging


lowerCAmelCase				:     Union[str, Any]					=				logging.get_logger(__name__)

lowerCAmelCase				:     Union[str, Any]					=				{
    """speechbrain/m-ctc-t-large""": """https://huggingface.co/speechbrain/m-ctc-t-large/resolve/main/config.json""",
    # See all M-CTC-T models at https://huggingface.co/models?filter=mctct
}






class        __magic_name__				(			UpperCAmelCase__							):






				'''simple docstring'''
				__UpperCamelCase         =		"mctct"





				def __init__(			self						,					_a=8_065						,					_a=1_536						,					_a=36						,					_a=6_144						,					_a=4						,					_a=384						,					_a=920						,					_a=1e-5						,					_a=0.3						,					_a="relu"						,					_a=0.02						,					_a=0.3						,					_a=0.3						,					_a=1						,					_a=0						,					_a=2						,					_a=1						,					_a=0.3						,					_a=1						,					_a=(7,)						,					_a=(3,)						,					_a=80						,					_a=1						,					_a=None						,					_a="sum"						,					_a=False						,					**_a						,					):





							"""simple docstring"""
							super().__init__(**_a						,					pad_token_id=_a						,					bos_token_id=_a						,					eos_token_id=_a					)
							lowerCamelCase      =   vocab_size
							lowerCamelCase      =   hidden_size
							lowerCamelCase      =   num_hidden_layers
							lowerCamelCase      =   intermediate_size
							lowerCamelCase      =   num_attention_heads
							lowerCamelCase      =   attention_head_dim
							lowerCamelCase      =   max_position_embeddings
							lowerCamelCase      =   layer_norm_eps
							lowerCamelCase      =   layerdrop
							lowerCamelCase      =   hidden_act
							lowerCamelCase      =   initializer_range
							lowerCamelCase      =   hidden_dropout_prob
							lowerCamelCase      =   attention_probs_dropout_prob
							lowerCamelCase      =   pad_token_id
							lowerCamelCase      =   bos_token_id
							lowerCamelCase      =   eos_token_id
							lowerCamelCase      =   conv_glu_dim
							lowerCamelCase      =   conv_dropout
							lowerCamelCase      =   num_conv_layers
							lowerCamelCase      =   input_feat_per_channel
							lowerCamelCase      =   input_channels
							lowerCamelCase      =   conv_channels
							lowerCamelCase      =   ctc_loss_reduction
							lowerCamelCase      =   ctc_zero_infinity

							# prevents config testing fail with exporting to json
							lowerCamelCase      =   list(_a					)
							lowerCamelCase      =   list(_a					)

							if len(self.conv_kernel					) != self.num_conv_layers:
										raise ValueError(
										    """Configuration for convolutional module is incorrect. """
										    """It is required that `len(config.conv_kernel)` == `config.num_conv_layers` """
										    f'but is `len(config.conv_kernel) = {len(self.conv_kernel					)}`, '
										    f'`config.num_conv_layers = {self.num_conv_layers}`.'					)



