code: def __init__(
      self,
      model: Union["pl.LightningModule", "keras.models.Model"],
      mode: str = "TF",
  ):
      self.MODE = mode.upper()
      self.model = model
      self.epochs_trained = 0
  
      if self.MODE in Learner.PT:
          self.trainer = None
  
imports: import inspect
  from functools import partial
  from typing import Any, List, Optional, Union
  import matplotlib.cm
  import matplotlib.pyplot
  import numpy
  import tensorflow
  import tensorflow_addons
  from PIL import Image
  from tensorflow import keras
  from tensorflow.keras.models import Model
  from tf_keras_vis.gradcam import Gradcam, GradcamPlusPlus
  from tf_keras_vis.utils import normalize
  from typeguard import check_argument_types, typechecked
  from chitra.import_utils import is_installed
  from .datagenerator import Dataset
label_desc: Use image node_id 1 to create a new Learner object  with example: obj = Learner(model, mode)