code: def on_batch_end(self, trainer, pl_module):
      lrs = {
          f"lr_group_{i}": param["lr"]
          for i, param in enumerate(
              pl_module.trainer.optimizers[0].param_groups
          )
      }
      pl_module.logger.log_metrics(lrs)
  
file_path: transformers/examples/research_projects/rag-end2end-retriever/callbacks_rag.py
imports: import logging
  from pathlib import Path
  import numpy
  import pytorch_lightning
  import torch
  from pytorch_lightning.callbacks import EarlyStopping, ModelCheckpoint
  from pytorch_lightning.utilities import rank_zero_only
  from utils_rag import save_json
label_desc: Use image node_id 1 for calling the Seq2SeqLoggingCallback obj's underlying member method code with example usage: obj.on_batch_end(trainer, pl_module) without return types