code: def load_checkpoint(with_local=False):
      
      gptr = ctypes.POINTER(ctypes.c_char)()
      global_len = ctypes.c_ulong()
      if with_local:
          lptr = ctypes.POINTER(ctypes.c_char)()
          local_len = ctypes.c_ulong()
          version = _LIB.RabitLoadCheckPoint(
              ctypes.byref(gptr),
              ctypes.byref(global_len),
              ctypes.byref(lptr),
              ctypes.byref(local_len))
          if version == 0:
              return (version, None, None)
          return (version,
                  _load_model(gptr, global_len.value),
                  _load_model(lptr, local_len.value))
      else:
          version = _LIB.RabitLoadCheckPoint(
              ctypes.byref(gptr),
              ctypes.byref(global_len),
              None, None)
          if version == 0:
              return (version, None)
          return (version,
                  _load_model(gptr, global_len.value))
docs: Load latest check point.
  
      Parameters
      ----------
      with_local: bool, optional
          whether the checkpoint contains local model
  
      Returns
      -------
      tuple : tuple
          if with_local: return (version, gobal_model, local_model)
          else return (version, gobal_model)
          if returned version == 0, this means no model has been CheckPointed
          and global_model, local_model returned will be None