快捷方式

PropagateUnbackedSymInts

class torch.fx.experimental.symbolic_shapes.PropagateUnbackedSymInts(module, garbage_collect_values=True, graph=None)[source][source]
boxed_run(args_list)[source]

通过解释运行 module 并返回结果。这使用“boxed”调用约定,您可以在其中传递参数列表,解释器将清除该列表。这确保了及时释放输入张量的分配。

注意

此 API 的后向兼容性得到保证。

call_function(target, args, kwargs)[source]

执行 call_function 节点并返回结果。

参数
  • target (Target) – 此节点的调用目标。有关语义的详细信息,请参阅 Node

  • args (Tuple) – 此调用的位置参数元组

  • kwargs (Dict) – 此调用的关键字参数字典

返回类型

Any

返回

Any: 函数调用返回的值

注意

此 API 的后向兼容性得到保证。

call_method(target, args, kwargs)[source]

执行 call_method 节点并返回结果。

参数
  • target (Target) – 此节点的调用目标。有关语义的详细信息,请参阅 Node

  • args (Tuple) – 此调用的位置参数元组

  • kwargs (Dict) – 此调用的关键字参数字典

返回类型

Any

返回

Any: 方法调用返回的值

注意

此 API 的后向兼容性得到保证。

call_module(target, args, kwargs)[source]

执行 call_module 节点并返回结果。

参数
  • target (Target) – 此节点的调用目标。有关语义的详细信息,请参阅 Node

  • args (Tuple) – 此调用的位置参数元组

  • kwargs (Dict) – 此调用的关键字参数字典

返回类型

Any

返回

Any: 模块调用返回的值

注意

此 API 的后向兼容性得到保证。

fetch_args_kwargs_from_env(n)[source]

从当前执行环境中获取节点 nargskwargs 的具体值。

参数

n (Node) – 要从中获取 argskwargs 的节点。

返回

具有 n 的具体值的 argskwargs

返回类型

Tuple[Tuple, Dict]

注意

此 API 的后向兼容性得到保证。

fetch_attr(target)[source]

self.moduleModule 层次结构中获取属性。

参数

target (str) – 要获取的属性的完全限定名称

返回

属性的值。

返回类型

Any

注意

此 API 的后向兼容性得到保证。

get_attr(target, args, kwargs)[source]

执行 get_attr 节点。将从 self.moduleModule 层次结构中检索属性值。

参数
  • target (Target) – 此节点的调用目标。有关语义的详细信息,请参阅 Node

  • args (Tuple) – 此调用的位置参数元组

  • kwargs (Dict) – 此调用的关键字参数字典

返回

检索到的属性的值

返回类型

Any

注意

此 API 的后向兼容性得到保证。

map_nodes_to_values(args, n)[source]

递归遍历 args 并在当前执行环境中查找每个 Node 的具体值。

参数
  • args (Argument) – 在其中查找具体值的数据结构

  • n (Node) – args 所属的节点。这仅用于错误报告。

返回类型

Optional[Union[Tuple[Optional[Union[Tuple[Argument, …], Sequence[Argument], Mapping[str, Argument], slice, range, Node, str, int, float, bool, complex, dtype, Tensor, device, memory_format, layout, OpOverload, SymInt, SymBool, SymFloat]], …], Sequence[Optional[Union[Tuple[Argument, …], Sequence[Argument], Mapping[str, Argument], slice, range, Node, str, int, float, bool, complex, dtype, Tensor, device, memory_format, layout, OpOverload, SymInt, SymBool, SymFloat]]], Mapping[str, Optional[Union[Tuple[Argument, …], Sequence[Argument], Mapping[str, Argument], slice, range, Node, str, int, float, bool, complex, dtype, Tensor, device, memory_format, layout, OpOverload, SymInt, SymBool, SymFloat]]], slice, range, Node, str, int, float, bool, complex, dtype, Tensor, device, memory_format, layout, OpOverload, SymInt, SymBool, SymFloat]]

注意

此 API 的后向兼容性得到保证。

output(target, args, kwargs)[source]

执行 output 节点。这实际上只是检索 output 节点引用的值并返回它。

参数
  • target (Target) – 此节点的调用目标。有关语义的详细信息,请参阅 Node

  • args (Tuple) – 此调用的位置参数元组

  • kwargs (Dict) – 此调用的关键字参数字典

返回

输出节点引用的返回值

返回类型

Any

注意

此 API 的后向兼容性得到保证。

placeholder(target, args, kwargs)[source]

执行 placeholder 节点。请注意,这是有状态的:Interpreter 维护着传递给 run 的参数的内部迭代器,并且此方法返回该迭代器的 next()。

参数
  • target (Target) – 此节点的调用目标。有关语义的详细信息,请参阅 Node

  • args (Tuple) – 此调用的位置参数元组

  • kwargs (Dict) – 此调用的关键字参数字典

返回

检索到的参数值。

返回类型

Any

注意

此 API 的后向兼容性得到保证。

run(*args, initial_env=None, enable_io_processing=True)[source]

通过解释运行 module 并返回结果。

参数
  • *args – 要运行的模块的参数,按位置顺序排列

  • initial_env (Optional[Dict[Node, Any]]) – 执行的可选起始环境。这是一个将 Node 映射到任何值的字典。例如,这可以用于预先填充某些 Node 的结果,以便在解释器中仅进行部分评估。

  • enable_io_processing (bool) – 如果为 true,我们会在首先使用图形的 process_inputs 和 process_outputs 函数处理输入和输出。

返回

从执行模块返回的值

返回类型

Any

注意

此 API 的后向兼容性得到保证。

run_node(n)[source][source]

运行 FX 节点,将未备份的符号绑定传播到新的伪张量

返回类型

Union[Tensor, Tuple[Tensor, …]]

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取面向初学者和高级开发者的深入教程

查看教程

资源

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

查看资源