class_docstr: Class for Hugging Face causal LM models
  
  Attributes:
      model_path: path to HF model
      tokenizer_path: path to HF tokenizer
      name: string identifier for the model. Lowercase letters and numbers.
          No spaces/special characters except dashes.
      description: String description of the model.
      tasks: List of supported task strings
      details: Dictionary of additional details about the model
      model_class: Class used to initialise model
      tokenizer_class: Class used to initialise tokenizer
      device: Device for model. Defaults to "cuda" if available.
docstr: Uses the model for the text-generation task
  
  Args:
      task_input: input dictionary according to the ``text-generation`` task specification.
      task: text-generation
code: def __call__(self, task_input, task="text-generation"):
      """
      Uses the model for the text-generation task
  
      Args:
          task_input: input dictionary according to the ``text-generation`` task specification.
          task: text-generation
      """
      if task == "text-generation":
          text = task_input.pop("text")
          temperature = task_input.pop("temperature", 0.7)
  
          # TODO: Set pad token on a model basis
          return self.generate(
              text,
              **task_input,
              pad_token_id=50256,
              temperature=temperature,
              variant="causal_lm",
          )
      else:
          raise ValueError(f"Unsupported task: {task}")
  
file_path: backprop/backprop/models/hf_causallm_tg_model/model.py
imports: import torch
  from typing import List, Dict
  import transformers
  from backprop.models import HFTextGenerationModel
label_desc: Use image node_id 3 for calling the HFCausalLMTGModel obj's underlying member method code with example usage: obj.__call__(task_input, task) and returns: self