code: def _check_label(self, dataset):
      if not hasattr(dataset, "has_label"):
          raise ValueError(
              "dataset has no has_label func, please make sure that your"
              " class subclasses fate built-in Dataset class"
          )
  
      has_label = dataset.has_label()
      if has_label is None or has_label == False:
          raise ValueError(
              "label is required on the guest side for hetero training, has label return False or None\n"
              "- Please check your input data.\n"
              "- Please make sure the has_label func is implemented correctly in your dataset class."
          )
  
imports: import logging
  from fate.components.components.nn.loader import Loader
  from typing import Optional, Union, Dict, Literal
  from fate.arch.dataframe import DataFrame
  from fate.components.components.nn.nn_runner import NNRunner, loader_load_from_conf, load_model_dict_from_path, dir_warning, run_dataset_func
  from transformers.trainer_utils import get_last_checkpoint
  from fate.ml.nn.hetero.hetero_nn import HeteroNNTrainerGuest, HeteroNNTrainerHost, TrainingArguments
  from fate.ml.nn.model_zoo.hetero_nn_model import HeteroNNModelGuest, HeteroNNModelHost
  from fate.components.components.utils import consts
  from fate.ml.nn.dataset.table import TableDataset, Dataset
  from fate.ml.nn.model_zoo.hetero_nn_model import FedPassArgument, StdAggLayerArgument, parse_agglayer_conf, TopModelStrategyArguments
label_desc: Use image node_id 6 for calling the DefaultRunner obj's underlying member method code with example usage: obj._check_label(dataset) without return types