def METHOD_NAME(
    cls, parser: ParlaiParser, partial_opt: Optional[Opt] = None
) -> ParlaiParser:
    super().METHOD_NAME(parser, partial_opt=partial_opt)
    agent = parser.add_argument_group('Dropout Polyencoder Arguments')
    agent.add_argument(
        '--poly-dropout-prob',
        type=float,
        default=0.5,
        help='How often to switch to a bi-encoder setup during training',
    )
    agent.add_argument(
        '--poly-dropout-reduction-type',
        type=str,
        choices=['first', 'max', 'mean'],
        default='first',
        help='how to reduce output when ignoring poly-codes during training',
    )
    agent.add_argument(
        '--poly-dropout-use-codes',
        type='bool',
        default=True,
        help='Whether to attend over codes prior to dropout method.',
    )
    return parser