TorchScript 不支持的 PyTorch 构造

Torch 和 Tensor 的不支持的属性

TorchScript 支持 torchtorch.Tensor 上定义的大多数方法,但并未完全覆盖所有内容。以下列出了特定已知操作和行为在 Python 和 TorchScript 之间存在差异的操作类别。如果你遇到其他不被支持的情况,请提交 GitHub 问题。已弃用的操作未在此列出。

不支持的张量方法

不支持的张量属性

Torch中函数绑定不正确

以下函数在 TorchScript 中无法正常使用,要么是这些函数没有绑定到 torch 上,要么是 Python 的调用方式与 TorchScript 不兼容。

Torch和Python之间模式不一致的操作

以下类别的操作具有不同的模式:

从非张量输入构建张量的函数通常不支持requires_grad参数,但torch.tensor除外。这涉及以下操作:

以下函数在 TorchScript 中需要指定 dtypelayoutdevice 参数,而在 Python 中这些参数则是可选的。

PyTorch 不受支持的模块和类

TorchScript 当前无法编译许多常用的 PyTorch 构造。以下列出了 TorchScript 不支持的模块和不被支持的 PyTorch 类的不完整列表。对于这些不支持的模块,我们建议使用 torch.jit.trace()

本页目录