class_docstr: Same as default teacher, but it doesn't contain __SILENCE__ entries.
  
  If we are the first speaker, then the first utterance is skipped.
class_docstr_tok: ["Same","as","default","teacher",",","but","it","does","n't","contain","__SILENCE__","entries",".","If","we","are","the","first","speaker",",","then","the","first","utterance","is","skipped","."]
code: def get(self, episode_idx, entry_idx=0):
      full_eps = self.all_eps[episode_idx]
      entries = full_eps["dialogue"]
  
      # Sometimes we're speaker 1 and sometimes we're speaker 2.
      # We can't be speaker 1 if dialog has only 2 turns.
      speaker_id = int(episode_idx >= len(self.data))
  
      their_turn = entries[speaker_id + 2 * entry_idx]
      my_turn = entries[1 + speaker_id + 2 * entry_idx]
      episode_done = 2 * entry_idx + speaker_id + 1 >= len(entries) - 2
  
      action = Message(
          {
              "topic": full_eps["topic"],
              "text": their_turn["text"],
              "emotion": their_turn["emotion"],
              "act_type": their_turn["act"],
              "labels": [my_turn["text"]],
              "episode_done": episode_done,
          }
      )
      return action
  
imports: import os
  import json
  from parlai.core.message import Message
  from parlai.core.teachers import FixedDialogTeacher
  from parlai.utils.io import PathManager
  from .build import build
label_desc: Use image node_id 2 for calling the NoStartTeacher obj's underlying member method code with example usage: obj.get(episode_idx, entry_idx) and returns: action