class_docstr: A callback for progress bar visualization in training, evaluation, and prediction.
  It is initialized only on rank 0 in distributed environments.
  
  Args:
      refresh_rate: Determines at which rate (in number of steps) the progress bars get updated.
class_docstr_tok: ["A","callback","for","progress","bar","visualization","in","training",",","evaluation",",","and","prediction",".","It","is","initialized","only","on","rank","0","in","distributed","environments",".","Args",":","refresh_rate",":","Determines","at","which","rate","(","in","number","of","steps",")","the","progress","bars","get","updated","."]
code: def __init__(self, refresh_rate: int = 1) -> None:
      self._refresh_rate = refresh_rate
  
      self._train_progress_bar: Optional[tqdm] = None
      self._eval_progress_bar: Optional[tqdm] = None
      self._predict_progress_bar: Optional[tqdm] = None
  
imports: from typing import Optional
  from pyre_extensions import none_throws
  from torchtnt.framework.callback import Callback
  from torchtnt.framework.state import State
  from torchtnt.framework.unit import TEvalUnit, TPredictUnit, TTrainUnit
  from torchtnt.utils.distributed import get_global_rank
  from torchtnt.utils.tqdm import close_progress_bar, create_progress_bar, update_progress_bar
  from tqdm.auto import tqdm
label_desc: Use image node_id 1 to create a new TQDMProgressBar object from inherited base classes: Callback with example: obj = TQDMProgressBar(refresh_rate)