class_docstr: This module learns positional embeddings up to a fixed maximum size.
code: def __init__(self, num_embeddings: int, embedding_dim: int):
      # BioGpt is set up so that if padding_idx is specified then offset the embedding ids by 2
      # and adjust num_embeddings appropriately. Other models don't have this hack
      self.offset = 2
      super().__init__(num_embeddings + self.offset, embedding_dim)
  
imports: import math
  from typing import Optional, Tuple, Union
  import torch
  import torch.utils.checkpoint
  from torch import nn
  from torch.nn import BCEWithLogitsLoss, CrossEntropyLoss, MSELoss
  from ...activations import ACT2FN
  from ...modeling_attn_mask_utils import _prepare_4d_causal_attention_mask
  from ...modeling_outputs import BaseModelOutputWithPastAndCrossAttentions, CausalLMOutputWithCrossAttentions, SequenceClassifierOutputWithPast, TokenClassifierOutput
  from ...modeling_utils import PreTrainedModel
  from ...utils import add_code_sample_docstrings, add_start_docstrings, add_start_docstrings_to_model_forward, logging
  from .configuration_biogpt import BioGptConfig
label_desc: Use image node_id 1 to create a new BioGptLearnedPositionalEmbedding object from inherited base classes: nn with example: obj = BioGptLearnedPositionalEmbedding(num_embeddings, embedding_dim)