class_docstr: # Trial 🏃‍
  
  Every trial in an experiment has same configs.
  It's just multiple runs.
  
  A new trial will replace checkpoints
  or previous trials, you should make a copy if needed.
  The performance log in `trials.yaml` is not replaced.
  
  You should run new trials after bug fixes or to see performance is
   consistent.
  
  If you want to try different configs, create multiple experiments.
class_docstr_tok: ["#","Trial","\ud83c\udfc3\u200d","Every","trial","in","an","experiment","has","same","configs",".","It","'s","just","multiple","runs",".","A","new","trial","will","replace","checkpoints","or","previous","trials",",","you","should","make","a","copy","if","needed",".","The","performance","log","in","`","trials.yaml","`","is","not","replaced",".","You","should","run","new","trials","after","bug","fixes","or","to","see","performance","is","consistent",".","If","you","want","to","try","different","configs",",","create","multiple","experiments","."]
code: def __init__(
      self,
      *,
      uuid: str,
      python_file: str,
      trial_date: str,
      trial_time: str,
      name: str,
      comment: str,
      repo_remotes: List[str] = None,
      commit: Optional[str] = None,
      commit_message: Optional[str] = None,
      is_dirty: bool = True,
      experiment_path: Path,
      start_step: int = 0,
      notes: str = "",
      pid: int,
      tags: List[str],
      distributed_rank: int,
      distributed_world_size: int,
      distributed_main_rank: int,
  ):
      super().__init__(
          python_file=python_file,
          trial_date=trial_date,
          trial_time=trial_time,
          name=name,
          comment=comment,
          uuid=uuid,
          experiment_path=experiment_path,
          repo_remotes=repo_remotes,
          commit=commit,
          commit_message=commit_message,
          is_dirty=is_dirty,
          start_step=start_step,
          notes=notes,
          pid=pid,
          tags=tags,
          distributed_rank=distributed_rank,
          distributed_world_size=distributed_world_size,
          distributed_main_rank=distributed_main_rank,
      )
      self.diff = None
  
imports: import os
  import time
  from pathlib import Path
  from typing import List, Dict, Optional
  from labml import lab
  from labml.internal.configs.processor import load_configs
  from ..None import util
  from ..manage.runs import get_run_by_uuid
  from ...logger import Text
  from ...utils.notice import labml_notice
label_desc: Use image node_id 1 to create a new Run object from inherited base classes: RunInfo with example: obj = Run()