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: Initialize the AcuteEvaluator.
  
  The following object attributes are used in running ACUTE Eval:
  
  ``onboarding_tasks``: A list of ALL available _onboarding_ comparison tasks
  
  ``desired_tasks``: A list of ALL available comparison tasks
  
  ``task_queue``: A queue of REMAINING tasks, from which HITs are constructed.
  
  ``worker_data``: A mapping from worker ID to data about the worker, including
  their tasks completed, conversations seen, and onboarding todo
  
  ``failed_onboard``: The set of workers who have failed onboarding
  
  ``unit_agent_map``: Map from unit id to the worker_id and task data for cleanup
docstr_tok: ["Initialize","the","AcuteEvaluator",".","The","following","object","attributes","are","used","in","running","ACUTE","Eval",":","``","onboarding_tasks","``",":","A","list","of","ALL","available","_onboarding_","comparison","tasks","``","desired_tasks","``",":","A","list","of","ALL","available","comparison","tasks","``","task_queue","``",":","A","queue","of","REMAINING","tasks",",","from","which","HITs","are","constructed",".","``","worker_data","``",":","A","mapping","from","worker","ID","to","data","about","the","worker",",","including","their","tasks","completed",",","conversations","seen",",","and","onboarding","todo","``","failed_onboard","``",":","The","set","of","workers","who","have","failed","onboarding","``","unit_agent_map","``",":","Map","from","unit","id","to","the","worker_id","and","task","data","for","cleanup"]
code: def __init__(
      self,
      task_run: "TaskRun",
      args: DictConfig,
      shared_state: SharedTaskState,
  ):
      """
      Initialize the AcuteEvaluator.
  
      The following object attributes are used in running ACUTE Eval:
  
      ``onboarding_tasks``: A list of ALL available _onboarding_ comparison tasks
  
      ``desired_tasks``: A list of ALL available comparison tasks
  
      ``task_queue``: A queue of REMAINING tasks, from which HITs are constructed.
  
      ``worker_data``: A mapping from worker ID to data about the worker, including
      their tasks completed, conversations seen, and onboarding todo
  
      ``failed_onboard``: The set of workers who have failed onboarding
  
      ``unit_agent_map``: Map from unit id to the worker_id and task data for cleanup
      """
      super().__init__(task_run, args, shared_state)
      random.seed(self.args.blueprint.random_seed)
      self.is_concurrent = False
      self.assignment_duration_in_seconds = (
          task_run.get_task_args().assignment_duration_in_seconds
      )
  
      # class attributes
      self.onboarding_tasks: List[Dict] = []
      self.desired_tasks: List[Dict] = []
      self.task_queue: queue.Queue = queue.Queue()
      self.worker_data: Dict[WorkerID, Dict[str, List]] = {}
      self.failed_onboard: Set = set()
      self.unit_agent_map: Dict[
          UnitID, Tuple[WorkerID, List[PairingsDict]]
      ] = {}
  
      # read in conversations data
      self._load_conversation_data()
  
      # setup the task queue
      self._setup_task_queue()
  
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 1 to create a new AcuteEvalRunner object from inherited base classes: TaskRunner with example: obj = AcuteEvalRunner(task_run, args, shared_state)