code: def read_eval_dataset(filepath):
      dataset = []
      with open(filepath) as fIn:
          for line in fIn:
              (
                  query_id,
                  relevant_id,
                  candidate_ids,
                  bm25_scores,
              ) = line.strip().split("\t")
              if (
                  len(relevant_id) == 0
              ):  # Skip examples without relevant entries
                  continue
  
              relevant_id = relevant_id.split(" ")
              candidate_ids = candidate_ids.split(" ")
              negative_ids = set(candidate_ids) - set(relevant_id)
              dataset.append(
                  {
                      "query": corpus[query_id],
                      "positive": [corpus[pid] for pid in relevant_id],
                      "negative": [corpus[pid] for pid in negative_ids],
                  }
              )
              dev_test_ids.add(query_id)
              dev_test_ids.update(candidate_ids)
      return dataset
  
file_path: sentence-transformers/examples/unsupervised_learning/SimCSE/train_askubuntu_simcse.py
imports: from sentence_transformers import SentenceTransformer, LoggingHandler, InputExample
  from sentence_transformers import models, util, evaluation, losses
  import logging
  import os
  import gzip
  from torch.utils.data import DataLoader
  from datetime import datetime
label_desc: Use image node_id 1 for calling a global function with example usage: read_eval_dataset(filepath) and returns: dataset