class_docstr: A [`TrainerCallback`] that displays the progress of training or evaluation, optimized for Jupyter Notebooks or
  Google colab.
code: def on_step_end(self, args, state, control, **kwargs):
      epoch = (
          int(state.epoch)
          if int(state.epoch) == state.epoch
          else f"{state.epoch:.2f}"
      )
      self.training_tracker.update(
          state.global_step + 1,
          comment=f"Epoch {epoch}/{state.num_train_epochs}",
          force_update=self._force_next_update,
      )
      self._force_next_update = False
  
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 3 for calling the NotebookProgressCallback obj's underlying member method code with example usage: obj.on_step_end(args, state, control) without return types