code: def print_train_step(
      self,
      batch_steps,
      step,
      global_step,
      log_dict,
      loss_dict,
      avg_loss_dict,
  ):
      indent = "     | > "
      print()
      log_text = "{}   --> STEP: {}/{} -- GLOBAL_STEP: {}{}\n".format(
          tcolors.BOLD, step, batch_steps, global_step, tcolors.ENDC
      )
      for key, value in loss_dict.items():
          # print the avg value if given
          if f"avg_{key}" in avg_loss_dict.keys():
              log_text += "{}{}: {:.5f}  ({:.5f})\n".format(
                  indent, key, value, avg_loss_dict[f"avg_{key}"]
              )
          else:
              log_text += "{}{}: {:.5f} \n".format(indent, key, value)
      for idx, (key, value) in enumerate(log_dict.items()):
          if isinstance(value, list):
              log_text += f"{indent}{key}: {value[0]:.{value[1]}f}"
          else:
              log_text += f"{indent}{key}: {value}"
          if idx < len(log_dict) - 1:
              log_text += "\n"
      print(log_text, flush=True)
  
file_path: TTS/TTS/utils/console_logger.py
imports: import datetime
  from TTS.utils.io import AttrDict
label_desc: Use image node_id 5 for calling the ConsoleLogger obj's underlying member method code with example usage: obj.print_train_step(batch_steps, step, global_step, log_dict, loss_dict, avg_loss_dict) without return types