class_docstr: Base class for implementing dataset builders. See more information
  on top. Child class needs to implement ``build`` and ``load``.
  
  Args:
      dataset_name (str): Name of the dataset passed from child.
code: def __init__(
      self, dataset_name: Optional[str] = None, *args, **kwargs
  ):
      super().__init__(*args, **kwargs)
  
      if dataset_name is None:
          # In case user doesn't pass it
          dataset_name = f"dataset_{uuid.uuid4().hex[:6]}"
      self.dataset_name = dataset_name
      self._train_dataset = None
      self._val_dataset = None
      self._test_dataset = None
  
      log_class_usage("DatasetBuilder", self.__class__)
  
imports: import uuid
  from typing import Optional
  import pytorch_lightning
  from mmf.utils.build import build_dataloader_and_sampler
  from mmf.utils.logger import log_class_usage
  from omegaconf import DictConfig
  from torch.utils.data import Dataset
label_desc: Use image node_id 1 to create a new BaseDatasetBuilder object from inherited base classes: pl with example: obj = BaseDatasetBuilder(dataset_name)