class_docstr: Embedding parallelized in the vocabulary dimension.
  
  This is mainly adapted from torch.nn.Embedding and all the default
  values are kept.
  Arguments:
      num_embeddings: vocabulary size.
      embedding_dim: size of hidden state.
      init_method: method to initialize weights.
class_docstr_tok: ["Embedding","parallelized","in","the","vocabulary","dimension",".","This","is","mainly","adapted","from","torch.nn.Embedding","and","all","the","default","values","are","kept",".","Arguments",":","num_embeddings",":","vocabulary","size",".","embedding_dim",":","size","of","hidden","state",".","init_method",":","method","to","initialize","weights","."]
code: def forward(self, input_):
      # Get the embeddings.
      output_parallel = F.embedding(
          input_,
          self.weight,
          self.padding_idx,
          self.max_norm,
          self.norm_type,
          self.scale_grad_by_freq,
          self.sparse,
      )
  
      # Reduce across all the model parallel GPUs.
      output = gather_forward_split_backward(
          output_parallel, ParallelMode.PARALLEL_1D, dim=-1
      )
      return output
  
imports: import torch
  import torch.nn.init
  from torch import Tensor
  from torch import nn
  from torch.nn import functional
  from torch.nn.parameter import Parameter
  from colossalai.legacy.context import ParallelMode, seed
  from colossalai.legacy.core import global_context
  from colossalai.legacy.nn.layer.base_layer import ParallelLayer
  from colossalai.legacy.nn.layer.parallel_1d._utils import gather_forward_split_backward, reduce_grad, reduce_input
  from colossalai.legacy.nn.layer.parallel_1d.layers import Linear1D_Row
  from colossalai.legacy.nn.layer.utils import divide
  from colossalai.legacy.registry import LAYERS, LOSSES
  from colossalai.utils import get_current_device
label_desc: Use image node_id 2 for calling the HiddenParallelEmbedding1D obj's underlying member method code with example usage: obj.forward(input_) and returns: output