class_docstr: The TextAttack attack resume recipe module:
  
  A command line parser to resume a checkpointed attack from user
  specifications.
code: def register_subcommand(main_parser: ArgumentParser):
      resume_parser = main_parser.add_parser(
          "attack-resume",
          help="resume a checkpointed attack",
          formatter_class=ArgumentDefaultsHelpFormatter,
      )
  
      # Parser for parsing args for resume
      resume_parser.add_argument(
          "--checkpoint-file",
          "-f",
          type=str,
          required=True,
          help='Path of checkpoint file to resume attack from. If "latest" (or "{directory path}/latest") is entered,'
          "recover latest checkpoint from either current path or specified directory.",
      )
  
      resume_parser.add_argument(
          "--checkpoint-dir",
          "-d",
          required=False,
          type=str,
          default=None,
          help="The directory to save checkpoint files. If not set, use directory from recovered arguments.",
      )
  
      resume_parser.add_argument(
          "--checkpoint-interval",
          "-i",
          required=False,
          type=int,
          help="If set, checkpoint will be saved after attacking every N examples. If not set, no checkpoints will be saved.",
      )
  
      resume_parser.add_argument(
          "--parallel",
          action="store_true",
          default=False,
          help="Run attack using multiple GPUs.",
      )
  
      resume_parser.set_defaults(func=AttackResumeCommand())
  
file_path: TextAttack/textattack/commands/attack_resume_command.py
imports: from argparse import ArgumentDefaultsHelpFormatter, ArgumentParser
  import os
  import textattack
  from textattack import Attacker, CommandLineAttackArgs, DatasetArgs, ModelArgs
  from textattack.commands import TextAttackCommand
label_desc: Use image node_id 3 for calling the AttackResumeCommand obj's underlying member method code with example usage: obj.register_subcommand(main_parser) without return types