快捷方式

torch.fx.experimental

警告

这些 API 处于实验阶段,可能会在未经通知的情况下更改。

torch.fx.experimental.symbolic_shapes

torch.fx.experimental.symbolic_shapes 提供了与我们的符号形状推理系统交互的接口,该系统在 torch.compile 中被大量使用。虽然这通常不被认为是公共 API,但在编写 PyTorch 中的框架代码以及 PyTorch 的扩展(例如,在自定义运算符实现中)时,您可能需要使用这些 API 来适当地设置动态形状支持。

ShapeEnv

DimDynamic

控制如何为维度执行符号分配。

StrictMinMaxConstraint

对于客户端:此维度的尺寸必须在 'vr'(指定上下限,包含-包含)内,并且必须是非负数,并且不应为 0 或 1(但请参见下面的 NB)。

RelaxedUnspecConstraint

对于客户端:没有显式约束;约束是通过跟踪从守卫隐式推断出的任何内容。

EqualityConstraint

表示和决定输入源之间各种类型的相等约束。

SymbolicContext

数据结构,指定我们如何在 create_symbolic_sizes_strides_storage_offset 中创建符号;例如,它们应该是静态的还是动态的。

StatelessSymbolicContext

通过 DimDynamicDimConstraint 给出的符号上下文确定,在 create_symbolic_sizes_strides_storage_offset 中创建符号。

StatefulSymbolicContext

通过 Source:Symbol 缓存给出的符号上下文确定,在 create_symbolic_sizes_strides_storage_offset 中创建符号。

SubclassSymbolicContext

对于可追踪张量子类的给定内部张量,正确的符号上下文可能与外部符号上下文不同。

DimConstraints

用于解决符号维度约束系统的自定义求解器。

hint_int

检索整数的提示(基于运行时观察到的底层实数值)。

is_concrete_int

用于检查 SymInt 中的底层对象是否为具体值。

is_concrete_bool

用于检查 SymBool 中的底层对象是否为具体值。

has_free_symbols

bool(free_symbols(val)) 的更快版本。

definitely_true

仅当我们可以确定 a 为 True 时返回 True,在此过程中可能引入一个保护。

definitely_false

仅当我们可以确定 a 为 False 时返回 True,在此过程中可能引入一个保护。

guard_size_oblivious

以大小无关的方式对符号布尔表达式进行保护。

parallel_or

评估多个参数的逻辑 OR,如果另一个参数肯定为 True,则避免对未支持的 SymInt 进行保护。

parallel_and

评估多个参数的逻辑 FALSE,如果另一个参数肯定为 False,则避免对未支持的 SymInt 进行保护。

sym_eq

类似于 ==,但当在列表/元组上运行时,它将递归地测试相等性并使用 sym_and 将结果组合在一起,而不会进行保护。

constrain_range

应用一个约束,即传入的 SymInt 必须位于 min-max 包含范围内,而不会在 SymInt 上引入保护(这意味着它可以用于未支持的 SymInt)。

constrain_unify

给定两个 SymInt,约束它们以使它们必须相等。

canonicalize_bool_expr

通过将布尔表达式转换为 lt / le 不等式并将所有非常数项移到 rhs 来规范化布尔表达式。

statically_known_true

如果 x 可以简化为常数且为真,则返回 True。

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取针对初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并获得问题的解答

查看资源