class_docstr: Execute fast ACUTE runs.
class_docstr_tok: ["Execute","fast","ACUTE","runs","."]
docstr: Pass in model_config directly to override the model config file,
  args.mephisto.blueprint, that would be read in otherwise.
docstr_tok: ["Pass","in","model_config","directly","to","override","the","model","config","file",",","args.mephisto.blueprint",",","that","would","be","read","in","otherwise","."]
code: def __init__(
      self,
      args: DictConfig,
      model_config: Optional[Dict[str, Any]] = None,
  ):
      """
      Pass in model_config directly to override the model config file,
      args.mephisto.blueprint, that would be read in otherwise.
      """
  
      self.args = args
      self.fast_acute_args = self.args.mephisto.blueprint
  
      # Load configs for models
      if model_config is not None:
          self.model_config = model_config
      else:
          with open(self.fast_acute_args.config_path) as f:
              self.model_config = json.load(f)
  
      # models + task
      self._build_model_pairs()
      self.task: str = self.fast_acute_args.task
  
      # keep track of chat files per model
      self.chat_files: Dict[str, str] = {}
  
      # question config for running ACUTE
      self.question_config: Dict[str, str] = ACUTE_EVAL_TYPES[
          self.fast_acute_args.acute_eval_type
      ]
  
      self.run_id = self.args.mephisto.task.task_name
  
imports: import datetime
  import json
  import os
  import random
  import time
  from dataclasses import dataclass, field
  from itertools import combinations
  from typing import Any, Dict, List, Optional, Set, Tuple
  import hydra
  import torch
  from mephisto.operations.hydra_config import register_script_config
  from mephisto.operations.operator import Operator
  from mephisto.tools.scripts import load_db_and_process_config
  from omegaconf import DictConfig, OmegaConf
  from parlai.crowdsourcing.tasks.acute_eval.analysis import AcuteAnalyzer, setup_args
  from parlai.crowdsourcing.tasks.acute_eval.dump_task_to_acute_format import dump_data, setup_args
  from parlai.crowdsourcing.tasks.acute_eval.fast_acute_blueprint import FAST_ACUTE_BLUEPRINT_TYPE
  from parlai.crowdsourcing.tasks.acute_eval.util import get_hashed_combo_path, TASK_DIRECTORY
  from parlai.crowdsourcing.utils.mturk import MTurkRunScriptConfig
  from parlai.scripts.self_chat import self_chat, setup_args
  from parlai.utils.strings import normalize_reply
  from parlai.utils.testing import capture_output
label_desc: Use image node_id 1 to create a new FastAcuteExecutor object from inherited base classes: object with example: obj = FastAcuteExecutor(args, model_config)