class_docstr: An object tracking the updates of an ongoing training with progress bars and a nice table reporting metrics.
  
  Args:
      num_steps (`int`): The number of steps during training. column_names (`List[str]`, *optional*):
          The list of column names for the metrics table (will be inferred from the first call to
          [`~utils.notebook.NotebookTrainingTracker.write_line`] if not set).
class_docstr_tok: ["An","object","tracking","the","updates","of","an","ongoing","training","with","progress","bars","and","a","nice","table","reporting","metrics",".","Args",":","num_steps","(","`","int","`",")",":","The","number","of","steps","during","training",".","column_names","(","`","List","[","str","]","`",",","*","optional","*",")",":","The","list","of","column","names","for","the","metrics","table","(","will","be","inferred","from","the","first","call","to","[","`","~utils.notebook.NotebookTrainingTracker.write_line","`","]","if","not","set",")","."]
code: def display(self):
      self.html_code = html_progress_bar(
          self.value, self.total, self.prefix, self.label, self.width
      )
      if self.inner_table is not None:
          self.html_code += text_to_html_table(self.inner_table)
      if self.child_bar is not None:
          self.html_code += self.child_bar.html_code
      if self.output is None:
          self.output = disp.display(
              disp.HTML(self.html_code), display_id=True
          )
      else:
          self.output.update(disp.HTML(self.html_code))
  
imports: import re
  import time
  from typing import Optional
  import IPython.display
  from ..trainer_callback import TrainerCallback
  from ..trainer_utils import IntervalStrategy, has_length
label_desc: Use image node_id 2 for calling the NotebookTrainingTracker obj's underlying member method code with example usage: obj.display() without return types