code: def setup_training_data(self, cfg: DictConfig) -> None:
      logging.info("Setting up training dataset.")
      train_ds = build_dataset(
          cfg, self.compute_consumed_samples(0), is_train=True
      )
  
      sampler = torch.utils.data.distributed.DistributedSampler(
          train_ds,
          num_replicas=self.trainer.world_size,
          rank=self.trainer.global_rank,
          shuffle=True,
      )
  
      self._train_dl = torch.utils.data.DataLoader(
          train_ds,
          sampler=sampler,
          batch_size=cfg.micro_batch_size,
          num_workers=cfg.data.num_workers,
          pin_memory=True,
          drop_last=cfg.data.train.get("drop_last", True),
          persistent_workers=True
          if cfg.data.num_workers > 0
          else False,
      )
  
imports: import functools
  import itertools
  from typing import List, Optional, Union
  import torch
  import torch.nn
  import torch.nn.functional
  from apex.transformer.pipeline_parallel.utils import get_num_microbatches
  from megatron.core import parallel_state
  from megatron.core.pipeline_parallel.schedules import get_forward_backward_func
  from omegaconf.dictconfig import DictConfig
  from pytorch_lightning.accelerators import CPUAccelerator
  from pytorch_lightning.trainer.trainer import Trainer
  from nemo.collections.multimodal.data.clip.clip_dataset import tokenize
  from nemo.collections.multimodal.data.nsfw.nsfw_dataset import build_dataset
  from nemo.collections.multimodal.models.vision_language_foundation.clip.megatron_clip_models import CLIPTextTransformer, CLIPVisionTransformer
  from nemo.collections.nlp.models.language_modeling.megatron_base_model import MegatronBaseModel
  from nemo.collections.nlp.modules.common.megatron.build_model import build_model
  from nemo.collections.nlp.modules.common.megatron.module import Float16Module, MegatronModule
  from nemo.collections.nlp.parts.utils_funcs import get_last_rank, torch_dtype_from_precision
  from nemo.core.classes.common import PretrainedModelInfo
  from nemo.utils import logging
label_desc: Use image node_id 16 for calling the MegatronContentFilteringModel obj's underlying member method code with example usage: obj.setup_training_data(cfg) without return types