class_docstr: Managing class for the acute evaluator process.
  
  Relevant args are parsed in the `setup_args` function above.
class_docstr_tok: ["Managing","class","for","the","acute","evaluator","process",".","Relevant","args","are","parsed","in","the","`","setup_args","`","function","above","."]
docstr: Load conversation data.
  
  Loads in the data from the pairs filepath.
docstr_tok: ["Load","conversation","data",".","Loads","in","the","data","from","the","pairs","filepath","."]
code: def _load_conversation_data(self):
      """
      Load conversation data.
  
      Loads in the data from the pairs filepath.
      """
      pairs_path = self.args.blueprint.pairings_filepath
  
      with open(pairs_path) as pf:
          for i, l in enumerate(pf.readlines()):
              convo_pair = json.loads(l.strip())
              eval_speakers = [
                  s
                  for d in convo_pair["dialogue_dicts"]
                  for s in d["speakers"]
                  if s in convo_pair["speakers_to_eval"]
              ]
              # make sure order is preserved
              assert eval_speakers == convo_pair["speakers_to_eval"]
              model_left_idx = random.choice([0, 1])
              task = {
                  "task_specs": {
                      "s1_choice": self.args.blueprint.s1_choice,
                      "s2_choice": self.args.blueprint.s2_choice,
                      "question": self.args.blueprint.eval_question,
                      "is_onboarding": convo_pair["is_onboarding"],
                      "model_left": {
                          "name": eval_speakers[model_left_idx],
                          "dialogue": convo_pair["dialogue_dicts"][
                              model_left_idx
                          ]["dialogue"],
                      },
                      "model_right": {
                          "name": eval_speakers[1 - model_left_idx],
                          "dialogue": convo_pair["dialogue_dicts"][
                              1 - model_left_idx
                          ]["dialogue"],
                      },
                  },
                  "pairing_dict": convo_pair,
                  "pair_id": i,
              }
              if convo_pair.get("is_onboarding"):
                  self.onboarding_tasks.append(task)
              else:
                  self.desired_tasks.append(task)
  
imports: import json
  import queue
  import random
  from typing import List, Any, Dict, Tuple, Set, TYPE_CHECKING
  from mephisto.utils.logger_core import get_logger
  from mephisto.abstractions.blueprint import SharedTaskState, TaskRunner
  from omegaconf import DictConfig
label_desc: Use image node_id 4 for calling the AcuteEvalRunner obj's underlying member method code with example usage: obj._load_conversation_data() without return types