Okay thanks. Do you have an example of what it would look like? Thank you.
I already have a training loop but I want to make it more generic
for epoch in range(nb_epoch):
    train_running_loss = training_model(train_loader, net, optimizer, criterion, train_set)
    val_running_loss = eval_model(val_loader, net, criterion, val_set)
    #thats where I want to do the callbacks
    if early_stopping(patience_rn, experiment["training"]["patience"]):
            break
    update_patience_weight(net, val_running_loss, best_val_loss, patience_rn, BEST_PATH)