追踪器
用于构建描述模型的部分图集的追踪模块。
类
一个强大的图形追踪器,用于追踪各层之间的依赖关系。 |
|
一组fx图表和追踪结果的集合。 |
函数
递归追踪模型和所有失败的子模块,并返回图形集合。 |
- class GraphCollection
基础类:
object一组fx图表和追踪结果的集合。
- __init__()
初始化图集合。
- Return type:
无
- failure_msg(m)
获取模块失败时的失败信息。
- Parameters:
m (模块 | 可调用) –
- Return type:
str | None
- is_failed(m)
检查节点目标在跟踪期间是否失败。
- Parameters:
m (模块 | 可调用) –
- Return type:
bool
- is_unvisited(m)
检查节点目标是否未被访问。
- Parameters:
m (模块 | 可调用) –
- Return type:
bool
- recursive_trace(model, concrete_args=None)
递归地跟踪模型和所有失败的子模块,并存储图集合。
- Parameters:
model (Module) – 要跟踪的模型。
concrete_args (Dict[str, Any] | None) – [实验性;不向后兼容!] 用于跟踪根模块(即模型的forward方法)的具体参数。请注意,如果/当跟踪递归时,不会传递具体参数!默认为None。
- Return type:
无
请注意,图集合包含根模块的图以及所有失败的子模块。对于失败的模块,图将包含失败模块作为叶子节点,并且为失败模块中的每个子模块分别提供图,以最大化跟踪结果的覆盖范围。
- class RobustTracer
基础类:
object一个强大的图形追踪器,用于追踪各层之间的依赖关系。
请注意,此跟踪器将不受支持的操作整体包装到其父模块中。
- __init__()
初始化追踪器。
- failure_msg(m)
获取模块的失败消息。
- Parameters:
m (模块 | 可调用) –
- Return type:
str | None
- is_failed(m)
检查模块是否失败。
- Parameters:
m (模块 | 可调用对象) –
- Return type:
bool
- is_leaf_module(m, module_qualified_name)
检查给定的模块是否为叶子模块。
- Parameters:
m (模块) –
module_qualified_name (str) –
- Return type:
bool
- classmethod is_registered_leaf(m)
检查模块是否注册为额外的叶子模块。
- Parameters:
m (模块 | 类型[模块]) –
- Return type:
bool
- is_unvisited(m)
检查节点目标是否未被访问。
- Parameters:
m (模块 | 可调用) –
- Return type:
bool
- record_call_module(m, e=None)
记录call_module操作。
- Parameters:
m (模块) –
e (异常 | 无) –
- Return type:
无
- classmethod register_leaf(m)
将一个模块注册为额外的叶子模块。
- Parameters:
m (类型[模块]) –
- Return type:
无
- trace(root, concrete_args=None)
使用fx追踪器追踪根节点。
与fx中的标准追踪器不同,此追踪器增加了以下功能:
只有 concrete_args 中的 torch.Tensors 被转换为 Proxy 对象。
追踪器在遇到不支持的操作时不会失败。相反,它会将包含不支持操作的模块包装成一个叶节点,并重复追踪过程。
即使叶模块是根模块,追踪器也不会追踪到叶模块中。
- Parameters:
root (模块) –
concrete_args (Dict[str, Any] | None) –
- Return type:
图表
- classmethod unregister_leaf(m)
取消注册一个模块作为额外的叶子模块。
- Parameters:
m (类型[模块]) –
- Return type:
无
- recursive_trace(model, concrete_args=None)
递归追踪模型和所有失败的子模块,并返回图形集合。
- Parameters:
model (Module) – 要跟踪的模型。
concrete_args (Dict[str, Any] | None) – [实验性;不向后兼容!] 用于跟踪根模块(即模型的forward方法)的具体参数。请注意,如果/当跟踪递归时,不会传递具体参数!默认为None。
- Returns:
由追踪生成的fx图集合。
- Return type:
请注意,图集合包含根模块的图以及所有失败的子模块。对于失败的模块,图将包含失败的模块作为叶子节点,然后为失败模块中的每个子模块分别提供图,以最大化跟踪结果的覆盖范围。