code: def create_const_fill_op(
      name: str,
      blob: Union[np.ndarray, workspace.Int8Tensor],
      device_option: Optional[caffe2_pb2.DeviceOption] = None,
  ) -> caffe2_pb2.OperatorDef:
      """
      Given a blob object, return the Caffe2 operator that creates this blob
      as constant. Currently support NumPy tensor and Caffe2 Int8Tensor.
      """
  
      tensor_type = type(blob)
      assert tensor_type in [
          np.ndarray,
          workspace.Int8Tensor,
      ], 'Error when creating const fill op for "{}", unsupported blob type: {}'.format(
          name, type(blob)
      )
  
      if tensor_type == np.ndarray:
          return _create_const_fill_op_from_numpy(
              name, blob, device_option
          )
      elif tensor_type == workspace.Int8Tensor:
          assert device_option is None
          return _create_const_fill_op_from_c2_int8_tensor(name, blob)
  
imports: import collections
  import copy
  import functools
  import logging
  import numpy
  import os
  from typing import Any, Callable, Dict, List, Optional, Tuple, Union
  from unittest import mock
  import caffe2.python.utils
  import torch
  import torch.nn.functional
  from caffe2.proto import caffe2_pb2
  from caffe2.python import core, net_drawer, workspace
  from torch.nn.functional import interpolate
label_desc: Use image node_id 16 for calling a global function with example usage: create_const_fill_op(name, blob, device_option) and returns: _create_const_fill_op_from_numpy, _create_const_fill_op_from_c2_int8_tensor