code: def _process_prompt_tuning_input(self, inputs, batch):
      input_ids = inputs["input_ids"]
      inputs_embeds = self.model.get_input_embeddings()(
          input_ids
      )  # b, l, e
      prompt_embeds = self.prompt_embedding.weight.repeat(
          input_ids.size(0), 1, 1
      )  # b, pl, e
      inputs_embeds = torch.cat([prompt_embeds, inputs_embeds], dim=1)
      inputs["inputs_embeds"] = inputs_embeds
      del inputs["input_ids"]
      mask = torch.ones(
          input_ids.size(0), self.prompt_length, dtype=torch.long
      ).to(self.device)
      inputs["attention_mask"] = torch.cat(
          [mask, inputs["attention_mask"]], dim=1
      )
      if self.is_casual_model and "labels" in inputs:
          labels = torch.full_like(mask, -100)
          inputs["labels"] = torch.cat(
              [labels, inputs["labels"]], dim=1
          )
      return inputs
  
file_path: TextBox/textbox/model/pretrained_models.py
imports: import os
  import copy
  import torch
  import torch.nn
  import warnings
  import inspect
  from .abstract_model import AbstractModel
  from transformers import AutoConfig, AutoModelForCausalLM, AutoModelForSeq2SeqLM, EncoderDecoderModel
  from transformers.models.encoder_decoder.configuration_encoder_decoder import EncoderDecoderConfig
  from ..utils.argument_list import efficient_kwargs_dict
label_desc: Use image node_id 3 for calling the Pretrained_Models obj's underlying member method code with example usage: obj._process_prompt_tuning_input(inputs, batch) and returns: inputs