code: def get_dataset(name, max_len, train_format="", test_format=""):
      # datasets
      train_dataset = load_dataset(
          name, split="train" + train_format
      ).shuffle(seed=123)
      test_dataset = load_dataset(
          name, split="test" + test_format
      ).shuffle(seed=321)
      split = train_dataset.train_test_split(test_size=0.2, seed=123)
      train_dataset = split["train"]
      val_dataset = split["test"]
  
      vocab = Vocabulary()
      vocab = set_vocabulary(vocab, train_dataset)
      vocab = set_vocabulary(vocab, val_dataset)
  
      train_dataset = process_data(train_dataset, vocab, max_len)
      val_dataset = process_data(val_dataset, vocab, max_len)
      test_dataset = process_data(test_dataset, vocab, max_len)
  
      return (
          TextClassificationDataset(train_dataset),
          TextClassificationDataset(val_dataset),
          TextClassificationDataset(test_dataset),
          vocab,
      )
  
imports: import os
  import sys
  import time
  from datasets import load_dataset
  from datasets import DatasetDict
  import jittor
  from jittor import nn, Module
  from jittor.dataset import Dataset
  from fastNLP.core.controllers.trainer import Trainer
  from fastNLP.core.metrics.accuracy import Accuracy
  from fastNLP.core.vocabulary import Vocabulary
  from fastNLP.core.callbacks.progress_callback import RichCallback
  from fastNLP.core.callbacks.callback import Callback
  from fastNLP.core.dataloaders.jittor_dataloader.fdl import JittorDataLoader
label_desc: Use image node_id 4 for calling a global function with example usage: get_dataset(name, max_len, train_format, test_format) and returns: TextClassificationDataset,  TextClassificationDataset,  TextClassificationDataset,  vocab