原因是你训练用的pytorch 可能是 1.2 ,后来运行测试在libtorch 上,libtorch 太新了
terminate called after throwing an instance of 'std::runtime_error'
what(): The following operation failed in the TorchScript interpreter.
Traceback of TorchScript (most recent call last):
RuntimeError: Unsupported value kind: Tensor
解决办法:
换低版本的libtorch:
pytorch版本和libtorch版本对应上,有问题
原因是, 在训练过程中得到的 权重 weights 文件,是 在 pytorch 1.2 训练得到的;
而 pytorch 对应 不同的 libtorch 这个问题,之前一直没有意识到;
之前一直以为 是 cuda 或者 cxx ,c++ abi 的版本问题, 实际上不是;
现在验证的结果告诉我们:pytorch 1.8 和 pytorch 1.2 起码是兼容的(在tensor 支持上);pytorch 1.10.2 不和 pytorch 1.2 兼容;