TorchScript 不支持的 PyTorch 构造¶
Torch 和 Tensor 不支持的属性¶
TorchScript 支持在 torch
和 torch.Tensor
上定义的大多数方法,但我们尚未完全覆盖。以下是已知的一些特定算子和算子类别,它们在 Python 和 TorchScript 之间的行为有所差异。如果您遇到其他不受支持的情况,请提交 GitHub Issue。已弃用的算子未在此处列出。
不支持的 Tensor 方法¶
不支持的 Tensor 属性¶
在 Torch 上未正确绑定的函数¶
以下函数如果在 TorchScript 中使用将会失败,原因可能是在 torch 上未绑定它们,或者 Python 期望的 schema 与 TorchScript 不同。
Torch 与 Python 之间 Schema 存在差异的算子¶
以下类别的算子具有不同的 schema
从非 tensor 输入构造 tensor 的函数不支持 requires_grad 参数,torch.tensor 除外。这包括以下算子
以下函数在 TorchScript 中需要 dtype、layout、device 作为参数,但在 Python 中这些参数是可选的。
PyTorch 不支持的模块和类¶
TorchScript 目前无法编译许多其他常用的 PyTorch 构造。下面列出了 TorchScript 不支持的模块以及一个不完整的 PyTorch 类列表。对于不支持的模块,我们建议使用 torch.jit.trace()
。
torch.autograd.enable_grad