code: def __init__(
      self,
      vocab_size=8065,
      hidden_size=1536,
      num_hidden_layers=36,
      intermediate_size=6144,
      num_attention_heads=4,
      attention_head_dim=384,
      max_position_embeddings=920,
      layer_norm_eps=1e-5,
      layerdrop=0.3,
      hidden_act="relu",
      initializer_range=0.02,
      hidden_dropout_prob=0.3,
      attention_probs_dropout_prob=0.3,
      pad_token_id=1,
      bos_token_id=0,
      eos_token_id=2,
      conv_glu_dim=1,
      conv_dropout=0.3,
      num_conv_layers=1,
      conv_kernel=(7,),
      conv_stride=(3,),
      input_feat_per_channel=80,
      input_channels=1,
      conv_channels=None,
      ctc_loss_reduction="sum",
      ctc_zero_infinity=False,
      **kwargs,
  ):
      super().__init__(
          **kwargs,
          pad_token_id=pad_token_id,
          bos_token_id=bos_token_id,
          eos_token_id=eos_token_id,
      )
      self.vocab_size = vocab_size
      self.hidden_size = hidden_size
      self.num_hidden_layers = num_hidden_layers
      self.intermediate_size = intermediate_size
      self.num_attention_heads = num_attention_heads
      self.attention_head_dim = attention_head_dim
      self.max_position_embeddings = max_position_embeddings
      self.layer_norm_eps = layer_norm_eps
      self.layerdrop = layerdrop
      self.hidden_act = hidden_act
      self.initializer_range = initializer_range
      self.hidden_dropout_prob = hidden_dropout_prob
      self.attention_probs_dropout_prob = attention_probs_dropout_prob
      self.pad_token_id = pad_token_id
      self.bos_token_id = bos_token_id
      self.eos_token_id = eos_token_id
      self.conv_glu_dim = conv_glu_dim
      self.conv_dropout = conv_dropout
      self.num_conv_layers = num_conv_layers
      self.input_feat_per_channel = input_feat_per_channel
      self.input_channels = input_channels
      self.conv_channels = conv_channels
      self.ctc_loss_reduction = ctc_loss_reduction
      self.ctc_zero_infinity = ctc_zero_infinity
  
      # prevents config testing fail with exporting to json
      self.conv_kernel = list(conv_kernel)
      self.conv_stride = list(conv_stride)
  
      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}`."
          )
  
imports: from ....configuration_utils import PretrainedConfig
  from ....utils import logging
label_desc: Use image node_id 1 to create a new MCTCTConfig object from inherited base classes: PretrainedConfig with example: obj = MCTCTConfig(vocab_size, hidden_size, num_hidden_layers, intermediate_size, num_attention_heads, attention_head_dim, max_position_embeddings, layer_norm_eps, layerdrop, hidden_act, initializer_range, hidden_dropout_prob, attention_probs_dropout_prob, pad_token_id, bos_token_id, eos_token_id, conv_glu_dim, conv_dropout, num_conv_layers, conv_kernel, conv_stride, input_feat_per_channel, input_channels, conv_channels, ctc_loss_reduction, ctc_zero_infinity)