class_docstr: A wrapper around the traced model in Caffe2's protobuf format.
  The exported graph has different inputs/outputs from the original Pytorch
  model, as explained in :class:`Caffe2Tracer`. This class wraps around the
  exported graph to simulate the same interface as the original Pytorch model.
  It also provides functions to save/load models in Caffe2's format.'
  
  Examples:
  ::
      c2_model = Caffe2Tracer(cfg, torch_model, inputs).export_caffe2()
      inputs = [{"image": img_tensor_CHW}]
      outputs = c2_model(inputs)
      orig_outputs = torch_model(inputs)
code: def __init__(self, predict_net, init_net):
      super().__init__()
      self.eval()  # always in eval mode
      self._predict_net = predict_net
      self._init_net = init_net
      self._predictor = None
  
imports: import copy
  import logging
  import os
  import torch
  from caffe2.proto import caffe2_pb2
  from torch import nn
  from detectron2.config import CfgNode
  from detectron2.utils.file_io import PathManager
  from .caffe2_inference import ProtobufDetectionModel
  from .caffe2_modeling import META_ARCH_CAFFE2_EXPORT_TYPE_MAP, convert_batched_inputs_to_c2_format
  from .shared import get_pb_arg_vali, get_pb_arg_vals, save_graph
label_desc: Use image node_id 1 to create a new Caffe2Model object from inherited base classes: nn with example: obj = Caffe2Model(predict_net, init_net)