code: def on_train_step_end(trainer) -> None:
      if hasattr(trainer.model, "module"):
          if hasattr(trainer.model.module, "on_train_step_end"):
              trainer.model.module.on_train_step_end(trainer)
      else:
          if hasattr(trainer.model, "on_train_step_end"):
              trainer.model.on_train_step_end(trainer)
  
      if hasattr(trainer.criterion, "on_train_step_end"):
          trainer.criterion.on_train_step_end(trainer)
  
      if hasattr(trainer.optimizer, "on_train_step_end"):
          trainer.optimizer.on_train_step_end(trainer)
  
file_path: TTS/TTS/utils/callbacks.py
label_desc: Use image node_id 6 for calling the TrainerCallback obj's underlying member method code with example usage: obj.on_train_step_end(trainer) without return types