class_docstr: TrialJob stores the information of a trial job.
  
  Attributes
  ----------
  trialJobId: str
      Trial job id.
  status: str
      Job status.
  hyperParameters: list of `nni.experiment.TrialHyperParameters`
      See `nni.experiment.TrialHyperParameters`.
  logPath: str
      Log path.
  startTime: int
      Job start time (timestamp).
  endTime: int
      Job end time (timestamp).
  finalMetricData: list of `nni.experiment.TrialMetricData`
      See `nni.experiment.TrialMetricData`.
  stderrPath: str
      Stderr log path.
  sequenceId: int
      Sequence Id.
  message: str
      Message including platform/environment.
code: def __init__(
      self,
      trialJobId: str,
      status: str,
      startTime: int,
      sequenceId: int,
      logPath: str = "",
      endTime: int = -1,
      stderrPath: str = "",
      hyperParameters: List = [],
      finalMetricData: List = [],
      message: str = "--",
      **kwargs: dict[str, Any],
  ):
      self.trialJobId = trialJobId
      self.status = status
      self.hyperParameters = [
          TrialHyperParameters(**json.loads(e)) for e in hyperParameters
      ]
      self.logPath = logPath
      self.startTime = startTime
      self.endTime = endTime
      self.finalMetricData = [
          TrialMetricData(**e) for e in finalMetricData
      ]
      self.stderrPath = stderrPath
      self.sequenceId = sequenceId
      self.message = message
  
file_path: nni/nni/experiment/data.py
imports: from __future__ import annotations
  from dataclasses import dataclass
  import json
  from typing import Any, List, Optional
label_desc: Use image node_id 1 to create a new TrialJob object  with example: obj = TrialJob(trialJobId, status, startTime, sequenceId, logPath, endTime, stderrPath, hyperParameters, finalMetricData, message)