TorchScript 不支持的 PyTorch 结构¶
Torch 和 Tensor 不支持的属性¶
TorchScript 支持大多数在 torch 和 torch.Tensor 上定义的方法,但我们并没有完全覆盖所有内容。
以下是一些已知的在 Python 和 TorchScript 之间行为不同的特定操作和操作类别。如果你遇到其他不支持的内容,请提交一个 GitHub 问题。以下未列出已弃用的操作。
不支持的张量方法¶
不支持的张量属性¶
Torch与Python之间模式不一致的操作¶
以下类别的操作具有不同的模式:
从非张量输入构造张量的函数不支持requires_grad参数,除了torch.tensor。这包括以下操作:
以下函数在TorchScript中需要dtype、layout、device作为参数,但在Python中这些参数是可选的。
PyTorch 不支持的模块和类¶
TorchScript 目前无法编译许多其他常用的 PyTorch 构造。以下列出了 TorchScript 不支持的模块,以及一个不完整的 PyTorch 类列表,这些类不受支持。对于不支持的模块,我们建议使用 torch.jit.trace()。
torch.nn.RNNtorch.nn.AdaptiveLogSoftmaxWithLoss
torch.autograd.enable_grad