code: def after_save_checkpoint(
      self, checkpoint_callback: Checkpoint
  ) -> None:
      if self.clearml_model:
          if self.save_best_model:
              if self.save_blocked:
                  self.save_blocked = False
                  return None
              if not os.path.exists(
                  checkpoint_callback.best_model_path
              ):
                  return None
              if (
                  self.previos_best_model_path
                  == checkpoint_callback.best_model_path
              ):
                  return None
              self.previos_best_model_path = (
                  checkpoint_callback.best_model_path
              )
          self._log_model(self.path_nemo_model)
  
imports: import os
  from argparse import Namespace
  from dataclasses import dataclass
  from pathlib import Path
  from typing import Any, List, Literal, Mapping, Optional, Union
  import pandas
  from lightning_utilities.core.apply_func import apply_to_collection
  from omegaconf import DictConfig, ListConfig, OmegaConf
  from pytorch_lightning.callbacks import Checkpoint
  from pytorch_lightning.loggers import Logger
  from pytorch_lightning.utilities.parsing import AttributeDict
  from torch import Tensor
  from nemo.utils import logging
label_desc: Use image node_id 7 for calling the ClearMLLogger obj's underlying member method code with example usage: obj.after_save_checkpoint(checkpoint_callback) and returns: None, None, None