class_docstr: Megatron Vision Transformer Model.
class_docstr_tok: ["Megatron","Vision","Transformer","Model","."]
code: def build_train_valid_test_datasets(self):
      logging.info("Building datasets for ViT...")
      if self.trainer.limit_val_batches > 1.0 and isinstance(
          self.trainer.limit_val_batches, float
      ):
          raise ValueError(
              "limit_val_batches must be an integer or float less than or equal to 1.0."
          )
  
      self._train_ds, self._validation_ds = build_train_valid_datasets(
          model_cfg=self.cfg,
          data_path=self.cfg.data.data_path,
          image_size=(self.cfg.img_h, self.cfg.img_w),
      )
      self._test_ds = None
  
      if self._train_ds is not None:
          logging.info(
              f"Length of train dataset: {len(self._train_ds)}"
          )
      if self._validation_ds is not None:
          logging.info(
              f"Length of val dataset: {len(self._validation_ds)}"
          )
      if self._test_ds is not None:
          logging.info(f"Length of test dataset: {len(self._test_ds)}")
      logging.info(f"Finished building datasets for ViT.")
  
      return self._train_ds, self._validation_ds, self._test_ds
  
imports: import itertools
  from functools import partial
  from typing import Any, Optional
  import torch
  from omegaconf.dictconfig import DictConfig
  from pytorch_lightning.accelerators import CPUAccelerator
  from pytorch_lightning.trainer.trainer import Trainer
  from nemo.collections.nlp.data.language_modeling.megatron.data_samplers import MegatronPretrainingSampler
  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.modules.common.megatron.utils import average_losses_across_data_parallel_group, get_all_params_for_weight_decay_optimization, get_linear_layer, get_params_for_weight_decay_optimization, init_method_normal, scaled_init_method_normal
  from nemo.collections.nlp.parts.utils_funcs import get_last_rank, torch_dtype_from_precision
  from nemo.collections.vision.data.megatron.data_samplers import MegatronVisionPretrainingRandomSampler
  from nemo.collections.vision.data.megatron.vit_dataset import build_train_valid_datasets
  from nemo.collections.vision.modules.vit.vit_backbone import VitBackbone, VitMlpHead
  from nemo.core.classes.common import PretrainedModelInfo
  from nemo.utils import logging
label_desc: Use image node_id 20 for calling the MegatronVitClassificationModel obj's underlying member method code with example usage: obj.build_train_valid_test_datasets() and returns: self,  self,  self