code: def __init__(self, transform, image_root, ann_root, split):
      urls = {
          "val": "https://storage.googleapis.com/sfr-vision-language-research/datasets/nocaps_val.json",
          "test": "https://storage.googleapis.com/sfr-vision-language-research/datasets/nocaps_test.json",
      }
      filenames = {"val": "nocaps_val.json", "test": "nocaps_test.json"}
  
      download_url(urls[split], ann_root)
  
      self.annotation = json.load(
          open(os.path.join(ann_root, filenames[split]), "r")
      )
      self.transform = transform
      self.image_root = image_root
  
file_path: blip/data/nocaps_dataset.py
imports: import os
  import json
  from torch.utils.data import Dataset
  from torchvision.datasets.utils import download_url
  from PIL import Image
label_desc: Use image node_id 1 to create a new nocaps_eval object from inherited base classes: Dataset with example: obj = nocaps_eval(transform, image_root, ann_root, split)