code: def evaluate(model, g, features, labels, mask, loss_func):
      model.eval()
      with torch.no_grad():
          logits = model(g, features)
      loss = loss_func(logits[mask], labels[mask])
      accuracy, micro_f1, macro_f1 = score(logits[mask], labels[mask])
  
      return loss, accuracy, micro_f1, macro_f1
  
file_path: AutoGL/test/performance/heterogeneous/dgl/han_base/base.py
imports: import torch
  from sklearn.metrics import f1_score
  from tqdm import tqdm
  from utils import load_data, EarlyStopping
  import numpy
label_desc: Use image node_id 2 for calling a global function with example usage: evaluate(model, g, features, labels, mask, loss_func) and returns: loss,  accuracy,  micro_f1,  macro_f1