class_docstr: Dataset Class 
      1. Performs Model-dependent (but Data-independent) operations (tokenization etc)
      2. This can allow the same model preprocessing for multiple datasources
      3. Users can configurate which labels to use for modelling 
          (e.g. intent classification, slot filling or both together etc)
class_docstr_tok: ["Dataset","Class","1",".","Performs","Model-dependent","(","but","Data-independent",")","operations","(","tokenization","etc",")","2",".","This","can","allow","the","same","model","preprocessing","for","multiple","datasources","3",".","Users","can","configurate","which","labels","to","use","for","modelling","(","e.g",".","intent","classification",",","slot","filling","or","both","together","etc",")"]
docstr: Constructor
  Args:
      dataset_split: dataset split
      dialogues_processor: Data generator for SGD dialogues
      tokenizer: tokenizer
      schemas: SGD schema for domain, intent and slots
      schema_config: config dict for schemas
      cfg: cfg container for dataset
docstr_tok: ["Constructor","Args",":","dataset_split",":","dataset","split","dialogues_processor",":","Data","generator","for","SGD","dialogues","tokenizer",":","tokenizer","schemas",":","SGD","schema","for","domain",",","intent","and","slots","schema_config",":","config","dict","for","schemas","cfg",":","cfg","container","for","dataset"]
code: def __init__(
      self,
      dataset_split: str,
      dialogues_processor: object,
      tokenizer,
      schemas,
      schema_config,
      cfg,
  ):
      """Constructor
      Args:
          dataset_split: dataset split
          dialogues_processor: Data generator for SGD dialogues
          tokenizer: tokenizer
          schemas: SGD schema for domain, intent and slots
          schema_config: config dict for schemas
          cfg: cfg container for dataset
      """
      self.dataset_split = dataset_split
      self.tokenizer = tokenizer
      self.schemas = schemas
      self.schema_config = schema_config
      self.dialogues_processor = dialogues_processor
      self.cfg = cfg
      self.subsample = self.dialogues_processor._subsample
  
      dial_file = f"{dialogues_processor._task_name}_{dataset_split}_examples_bert.processed"
      self.dial_file = os.path.join(self.cfg.data_dir, dial_file)
      if self.cfg.use_cache and os.path.exists(self.dial_file):
          self.load_features()
      else:
          self.process_features()
          self.save_features()
  
file_path: NeMo/nemo/collections/nlp/data/dialogue/dataset/dialogue_sgd_bert_dataset.py
imports: import os
  import re
  from typing import List
  import numpy
  from nemo.collections.nlp.data.dialogue.dataset.dialogue_dataset import DialogueDataset
  from nemo.collections.nlp.data.dialogue.input_example.sgd_input_example import SGDInputExample
label_desc: Use image node_id 1 to create a new DialogueSGDBERTDataset object from inherited base classes: DialogueDataset with example: obj = DialogueSGDBERTDataset(dataset_split, dialogues_processor, tokenizer, schemas, schema_config, cfg)