code: def make_sparse(
      self,
      shape: Sequence[int],
      values: Sequence[int],
      indices_shape: Sequence[int],
      indices: Sequence[int],
      name: str = "spval",
  ) -> SparseTensorProto:
      sparse = SparseTensorProto()
      sparse.dims.extend(shape)
      nnz = len(values)
  
      sparse.values.CopyFrom(
          helper.make_tensor(name, TensorProto.INT64, (nnz,), values)
      )
      sparse.indices.CopyFrom(
          helper.make_tensor(
              "spind", TensorProto.INT64, indices_shape, indices
          )
      )
      return sparse
  
imports: import os
  import tempfile
  import unittest
  from typing import Sequence
  import numpy
  import onnx.defs
  import onnx.parser
  from onnx import GraphProto, SparseTensorProto, TensorProto, checker, helper, numpy_helper, shape_inference
label_desc: Use image node_id 2 for calling the TestChecker obj's underlying member method code with example usage: obj.make_sparse(shape, values, indices_shape, indices, name) and returns: sparse