code: def __call__(self, input_data: np.ndarray) -> np.ndarray:
      start = time.perf_counter()
      output = super().__call__(input_data)
      inference_duration.labels(
          torch_version=self.torch_version, device_id=self.device_id
      ).observe(time.perf_counter() - start)
      return output.argmax(dim=1)
  
file_path: BentoML/examples/custom_model_runner/service.py
imports: from __future__ import annotations
  from typing import TYPE_CHECKING
  import time
  import numpy
  from utils import exponential_buckets
  import bentoml
label_desc: Use image node_id 2 for calling the CustomMnistRunnable obj's underlying member method code with example usage: obj.__call__(input_data) and returns: output