class_docstr: ALL LIGHT Teacher: combines all gender bias mitigation methods described in.
  
  <https://arxiv.org/abs/1911.03842>.
  
  This teacher combines methods for gender bias mitigation in
  dialogue generation on the LIGHT dialogue task, including:
  - Adding more positive data (Pos Data):`--add-new-data`
  - Conditional training (Bias Ctrl): `--add-conditional`
  - Counterfactual Data Augmentation (CDA): `--add-counterfactual`
  
  For more information, please see our projects page:
  <https://parl.ai/projects/genderation_bias/>
class_docstr_tok: ["ALL","LIGHT","Teacher",":","combines","all","gender","bias","mitigation","methods","described","in",".","<","https",":","\/\/arxiv.org\/abs\/1911.03842",">",".","This","teacher","combines","methods","for","gender","bias","mitigation","in","dialogue","generation","on","the","LIGHT","dialogue","task",",","including",":","-","Adding","more","positive","data","(","Pos","Data",")",":","`","--","add-new-data","`","-","Conditional","training","(","Bias","Ctrl",")",":","`","--","add-conditional","`","-","Counterfactual","Data","Augmentation","(","CDA",")",":","`","--","add-counterfactual","`","For","more","information",",","please","see","our","projects","page",":","<","https",":","\/\/parl.ai\/projects\/genderation_bias\/",">"]
code: def add_cmdline_args(
      cls, parser: ParlaiParser, partial_opt: Optional[Opt] = None
  ) -> ParlaiParser:
      super().add_cmdline_args(parser, partial_opt)
      parser = parser.add_argument_group("LIGHT Gender Args")
      OrigLightTeacher.add_cmdline_args(parser, partial_opt=partial_opt)
      parser.add_argument(
          "--add-new-data",
          type="bool",
          default=True,
          help="Add the extra data collected",
      )
      parser.add_argument(
          "--add-conditional",
          type="bool",
          default=True,
          help="Append the conditional bucket to the end of the input or not",
      )
      parser.add_argument(
          "--add-counterfactual",
          type="bool",
          default=True,
          help="Load counterfactual data for training",
      )
      parser.add_argument(
          "--force-conditional",
          type=str,
          default="none",
          help="Add one bucket to everything, regardless of the true bin",
      )
      parser.add_argument(
          "--bucket-only",
          type=str,
          default="none",
          help="Only train/evaluate on examples from a specific bucket",
      )
  
      parser.set_defaults(
          light_use_objects=False,
          light_use_setting=False,
          light_use_affordances=False,
          light_use_persona_names=False,
          light_use_persona="none",
          light_use_action="none",
          light_use_emote="none",
          use_reply="none",
      )
      return parser
  
imports: from typing import Optional
  from parlai.core.params import ParlaiParser
  from parlai.core.opt import Opt
  from parlai.core.message import Message
  from parlai.core.teachers import FixedDialogTeacher
  from parlai.tasks.light_dialog.agents import DefaultTeacher
  from parlai.tasks.light_genderation_bias.build import build
  from parlai.utils.io import PathManager
  from collections import deque
  from copy import deepcopy
  import csv
  import json
  import os
  import random
label_desc: Use image node_id 1 for calling the LightGenderTeacher obj's underlying member method code with example usage: obj.add_cmdline_args(cls, parser, partial_opt) and returns: parser