code: def __init__(
      self,
      num_embeddings: int,
      embedding_dim: int,
      padding_idx: Optional[int] = None,
      max_norm: Optional[float] = None,
      norm_type: float = 2.0,
      scale_grad_by_freq: bool = False,
      sparse: bool = False,
      _weight: Optional[Tensor] = None,
      _freeze: bool = False,
      device=None,
      dtype=None,
  ) -> None:
      super().__init__(
          num_embeddings,
          embedding_dim,
          padding_idx,
          max_norm,
          norm_type,
          scale_grad_by_freq,
          sparse,
          _weight,
          device,
          dtype,
      )
      self.weight = CPUPinnedParam(
          self.weight.data, requires_grad=not _freeze
      )
  
file_path: BigDL/python/llm/src/bigdl/llm/transformers/embedding.py
imports: import torch
  from torch import Tensor
  from torch.nn import functional
  from torch.nn import Parameter
  from typing import Optional
label_desc: Use image node_id 1 to create a new LLMEmbedding object from inherited base classes: torch.nn with example: obj = LLMEmbedding(num_embeddings, embedding_dim, padding_idx, max_norm, norm_type, scale_grad_by_freq, sparse, _weight, _freeze, device, dtype)