评价此页

torch.fx.experimental.symbolic_shapes.compute_unbacked_bindings#

torch.fx.experimental.symbolic_shapes.compute_unbacked_bindings(shape_env, example_value, old_example_value=None, peek=False)[源代码]#

在运行了 fake tensor 传播并产生 example_value 结果后,遍历 example_value 来查找新绑定的未备份符号,并记录它们的路径以供后续使用。如果我们分配了一个未备份的 SymInt 但在 example_value 中找不到它,则会出错。(注意:这意味着如果您有一个多输出函数,您必须在张量输出的元组上调用此函数,您不能等待!)

peek 参数允许您查看绑定内容,而无需更改受影响的列表。这主要用于确保在 propagate_real_tensors 开启时,unbacked_var_to_val 能够及时填充。

返回类型

Optional[dict[sympy.core.symbol.Symbol, tuple[torch.utils._pytree.KeyEntry, …]]]