diff --git a/python/tvm/relax/frontend/torch/exported_program_translator.py b/python/tvm/relax/frontend/torch/exported_program_translator.py index b489f3e79496..7c20d1b1a469 100644 --- a/python/tvm/relax/frontend/torch/exported_program_translator.py +++ b/python/tvm/relax/frontend/torch/exported_program_translator.py @@ -715,7 +715,11 @@ def from_exported_program( if tensor_name == spec.target: bind_name = spec.arg.name break - binding[bind_name] = tvm.runtime.from_dlpack(tensor_value.detach()) + try: + binding[bind_name] = tvm.runtime.from_dlpack(tensor_value.detach()) + except RuntimeError: + tensor_cpu = tensor_value.detach().cpu().contiguous() + binding[bind_name] = tvm.runtime.tensor(tensor_cpu.numpy()) mod = self.block_builder.get() mod = relax.transform.BindParams("main", binding)(mod)