Your set_seed function looks fine to me and should be sufficient to reproduce the results.
This should be the first thing you should call. Try calling it just after the imports.
from sklearn.metrics import precision_recall_fscore_support, classification_report, confusion_matrix
import torch
import torch.nn as nn

from utils import LABEL_NAME, isnotebook, set_seed, format_time

if isnotebook():
    from tqdm.notebook import tqdm
else:
    from tqdm import tqdm

set_seed(seed=1234)