code: def get_valid_auc(self, arch_id: str, epoch_num: int):
      # todo: due to the too many job contention on server, the time usage may not valid.
      time_usage = (int(epoch_num) + 1) * self.get_train_one_epoch_time(
          self.device
      )
      if self.dataset == Config.Frappe:
          if epoch_num is None or epoch_num >= 20:
              epoch_num = 19
          t_acc = self.mlp_train[self.dataset][arch_id][str(epoch_num)][
              "valid_auc"
          ]
          return t_acc, time_usage
      elif self.dataset == Config.Criteo:
          if epoch_num is None or epoch_num >= 10:
              epoch_num = 9
          t_acc = self.mlp_train[self.dataset][arch_id][str(epoch_num)][
              "valid_auc"
          ]
          return t_acc, time_usage
      elif self.dataset == Config.UCIDataset:
          if epoch_num is None or epoch_num >= 40:
              epoch_num = 39
          t_acc = self.mlp_train[self.dataset][arch_id][str(epoch_num)][
              "valid_auc"
          ]
          return t_acc, time_usage
      else:
          raise NotImplementedError
  
file_path: singa/examples/model_selection/TRAILS-Database-Native-Model-Selection/internal/ml/model_selection/src/query_api/query_api_mlp.py
imports: import os
  from src.common.constant import Config
  from src.tools.compute import generate_global_rank
  from src.tools.io_tools import read_json
label_desc: Use image node_id 6 for calling the GTMLP obj's underlying member method code with example usage: obj.get_valid_auc(arch_id, epoch_num) and returns: t_acc,  time_usage, t_acc,  time_usage, t_acc,  time_usage