def METHOD_NAME(self, model_path, inputs, outputs, max_batchsize):
    self.max_batchsize = max_batchsize
    work_dir = os.path.dirname(model_path)
    compiled_model = os.path.join(work_dir, 'model-tvm.so')
    if compiled_model.endswith('.so') or compiled_model.endswith('.dylib'):
        if not os.path.isfile(compiled_model):
            print()
            raise RuntimeError(
                f"Error: Model file {compiled_model} not found!"
            )
    else:
        raise RuntimeError(
            f"Error: The specified path ({model_path}) does not match path to the compiled model!"
        )
    print('TVM: loading model ' + compiled_model)
    mod = tvm.runtime.load_module(compiled_model)
    device = tvm.device("llvm", 0)
    if os.path.isfile(os.path.join(work_dir, "vm_exec_code.ro")):
        self.executor_type = "virtual_machine"
        with open(os.path.join(work_dir, "vm_exec_code.ro"), "rb") as file:
            vm_bytes = file.read()
        vm_exec = tvm.runtime.vm.Executable.load_exec(vm_bytes, mod)
        for sub_dir in next(os.walk(work_dir))[1]:
            if sub_dir.endswith("-tvm-tmp"):
                path_consts = os.path.join(
                    work_dir, sub_dir + "/consts")
                break
        vm_exec.mod["load_late_bound_consts"](path_consts)
        self.executor = runtime_vm.VirtualMachine(vm_exec, device)
    else:
        self.executor_type = "graph_executor"
        self.executor = graph_executor.GraphModule(
            mod['default'](device))
    if not inputs:
        if self.executor_type == "virtual_machine":
            inputs = [str(idx) for idx in range(
                self.executor.module["get_num_outputs"]())]
        else:
            inputs = [str(idx) for idx in range(
                self.executor.get_num_outputs())]
    if not outputs:
        if self.executor_type == "virtual_machine":
            outputs = [str(idx) for idx in range(
                self.executor.module["get_num_outputs"]())]
        else:
            outputs = [str(idx) for idx in range(
                self.executor.get_num_outputs())]
    self.inputs = inputs
    self.outputs = outputs