code: def run(self):
      try:
          _run_validation(
              config=self.config,
              reference_model=self.reference_model,
              onnx_model=self.onnx_model,
              onnx_named_outputs=self.onnx_named_outputs,
              atol=self.atol,
              input_shapes=self.input_shapes,
              device=self.device,
              dtype=self.dtype,
              model_kwargs=self.model_kwargs,
          )
      except Exception as e:
          tb = traceback.format_exc()
          self._cconn.send((e, tb))
          return
  
imports: import copy
  import gc
  import multiprocessing
  import os
  import traceback
  from inspect import signature
  from itertools import chain
  from pathlib import Path
  from typing import Any, Dict, Iterable, List, Optional, Tuple, Union
  import numpy
  import onnx
  from transformers.utils import is_tf_available, is_torch_available
  from ...onnx.utils import _get_onnx_external_data_tensors, check_model_uses_external_data
  from ...utils import TORCH_MINIMUM_VERSION, is_diffusers_available, is_torch_onnx_support_available, logging, require_numpy_strictly_lower
  from ..error_utils import AtolError, MinimumVersionError, OutputMatchError, ShapeError
  from .base import OnnxConfig
  from .model_configs import SpeechT5OnnxConfig
  from .utils import PickableInferenceSession, recursive_to_device
label_desc: Use image node_id 2 for calling the ValidationProcess obj's underlying member method code with example usage: obj.run() without return types