class_docstr: Train/eval directpose
class_docstr_tok: ["Train\/eval","directpose"]
docstr: Save checkpoint
docstr_tok: ["Save","checkpoint"]
code: def save_model(self):
      """Save checkpoint"""
      if self.cfg.DDP_CONFIG.GPU_WORLD_RANK == 0:
          save_model(
              self.model, self.optimizer, self.base_iter, self.cfg
          )
  
file_path: gluon-cv/gluoncv/torch/utils/task_utils/pose.py
imports: import time
  import logging
  import datetime
  import numpy
  import torch
  from ..None import comm
  from ..utils import AverageMeter
  from ..model_utils import save_model
  from ..optimizer import maybe_add_gradient_clipping
  from ..eval_utils.coco_eval import COCOEvaluator
label_desc: Use image node_id 4 for calling the DirectposePipeline obj's underlying member method code with example usage: obj.save_model() without return types