class_docstr: This Teacher is responsible for performing the task of Dialogue State Tracking.
  
  It can be used to evaluate LM on JGA (Joint Goal Accuracy) metric (as shown in
  [SimpleTOD](https://arxiv.org/abs/2005.00796) and
  [Soloist](https://arxiv.org/abs/2005.05298)).
class_docstr_tok: ["This","Teacher","is","responsible","for","performing","the","task","of","Dialogue","State","Tracking",".","It","can","be","used","to","evaluate","LM","on","JGA","(","Joint","Goal","Accuracy",")","metric","(","as","shown","in","[","SimpleTOD","]","(","https",":","\/\/arxiv.org\/abs\/2005.00796",")","and","[","Soloist","]","(","https",":","\/\/arxiv.org\/abs\/2005.05298",")",")","."]
code: def setup_data(self, fold):
      dialogs = self._load_data(fold)
      examples = []
      for dialog in dialogs:
          context = []
          for turn in dialog["turns"]:
              curr_turn = turn["utterance"].lower()
              curr_speaker = (
                  "<user>"
                  if turn["speaker"].lower() == "user"
                  else "<system>"
              )
              curr_context = f"{curr_speaker} {curr_turn}"
              context.append(curr_context)
              cum_belief_states = self._get_curr_belief_states(turn)
              if curr_speaker == "<user>":
                  examples.append(
                      {
                          "dialogue_id": dialog["dialogue_id"],
                          "turn_num": turn["turn_id"],
                          "text": " ".join(context),
                          "labels": self.BELIEF_STATE_DELIM.join(
                              cum_belief_states
                          ),
                      }
                  )
      if not is_this_circleci():
          self.rng.shuffle(examples)
      for example in examples:
          yield example, True
  
imports: import copy
  import json
  import os
  from typing import Optional
  import numpy
  import pandas
  import parlai.core.tod.tod_agents
  import parlai.core.tod.tod_core
  import parlai.tasks.multiwoz_v22.build
  from parlai.core.message import Message
  from parlai.core.metrics import AverageMetric
  from parlai.core.opt import Opt
  from parlai.core.params import ParlaiParser
  from parlai.utils.data import DatatypeHelper
  from parlai.utils.io import PathManager
  from parlai.utils.testing import is_this_circleci
label_desc: Use image node_id 6 for calling the MultiWOZv22DSTTeacher obj's underlying member method code with example usage: obj.setup_data(fold) without return types