class_docstr: An abstract runner with customized run method on the python-side.
  This is the user facing class for function overloading inheritance.
  
  Note: @derived_object is required for proper usage of any inherited class.
class_docstr_tok: ["An","abstract","runner","with","customized","run","method","on","the","python-side",".","This","is","the","user","facing","class","for","function","overloading","inheritance",".","Note",":","@","derived_object","is","required","for","proper","usage","of","any","inherited","class","."]
docstr: Run the built artifact and get runner futures.
  
  Parameters
  ----------
  runner_inputs : List[RunnerInput]
      The inputs to the runner.
  
  Returns
  -------
  runner_futures: List[RunnerFuture]
      The runner futures.
docstr_tok: ["Run","the","built","artifact","and","get","runner","futures",".","Parameters","--","--","--","--","--","runner_inputs",":","List","[","RunnerInput","]","The","inputs","to","the","runner",".","Returns","--","--","--","-","runner_futures",":","List","[","RunnerFuture","]","The","runner","futures","."]
code: def run(self, runner_inputs: List[RunnerInput]) -> List[RunnerFuture]:
      """Run the built artifact and get runner futures.
  
      Parameters
      ----------
      runner_inputs : List[RunnerInput]
          The inputs to the runner.
  
      Returns
      -------
      runner_futures: List[RunnerFuture]
          The runner futures.
      """
      raise NotImplementedError
  
imports: from typing import Callable, List, Optional, Union
  from typing_extensions import Literal
  from tvm._ffi import register_object
  from tvm.runtime import Object
  from ..None import _ffi_api
  from ..arg_info import ArgInfo
label_desc: Use image node_id 1 for calling the PyRunner obj's underlying member method code with example usage: obj.run(runner_inputs) without return types