code: def __init__(self, config_params=None):
      super().__init__(config_params)
      self.checkpoint = None
      self.tag_flag = None
      self.enable_nebula_load = config_params.enable_nebula_load
      self.nebula_load_path = config_params.load_path
      if self.nebula_load_path is None:
          self.nebula_load_path = config_params.persistent_storage_path
  
      nebula_config_params = {
          NEBULA_PERSISTENT_STORAGE_PATH: config_params.persistent_storage_path,
          NEBULA_PERSISTENT_TIME_INTERVAL: config_params.persistent_time_interval,
          NEBULA_NUM_OF_VERSION_IN_RETENTION: config_params.num_of_version_in_retention,
      }
      torch_nebula.init(**nebula_config_params)
  
file_path: DeepSpeed/deepspeed/runtime/checkpoint_engine/nebula_checkpoint_engine.py
imports: import os
  import torch
  import torch_nebula
  from deepspeed.runtime.checkpoint_engine.checkpoint_engine import CheckpointEngine
  from deepspeed.utils import logger, log_dist
  from deepspeed.nebula.constants import *
label_desc: Use image node_id 1 to create a new NebulaCheckpointEngine object from inherited base classes: CheckpointEngine with example: obj = NebulaCheckpointEngine(config_params)