code: def from_config(cls, config: Config, embed_dim: int):
      conv_layers = []
      for kernel_size in config.kernel_sizes:
          conv_layers.append(
              create_module(
                  config.convolution_type,
                  input_size=config.conv_dim,
                  kernel_size=kernel_size,
                  convolution_type="non-causal",
              )
          )
  
      return cls(
          embed_dim,
          config.conv_dim,
          config.max_target_positions,
          config.length_dropout,
          config.glu,
          config.activation,
          config.pooling_type,
          conv_layers,
      )
  
imports: from typing import List, Optional, Tuple
  import torch
  import torch.nn
  import torch.nn.functional
  from pytext.config.module_config import Activation, ModuleConfig
  from pytext.models.module import create_module, Module
  from pytext.optimizer import get_activation
  from torch import Tensor
  from .light_conv import LightweightConv
label_desc: Use image node_id 4 for calling the ConvLengthPredictionModule obj's underlying member method code with example usage: obj.from_config(cls, config, embed_dim) and returns: cls