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)[source][source]¶
在运行了假张量传播并生成 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, …]]]