函数¶
- class onnx_ir.Function(domain, name, overload='', *, graph, attributes)¶
IR 函数。
像图一样,函数可以有非拓扑排序的节点。用户有责任维护节点的拓扑顺序。
请注意,Function 中没有
node属性。Function 可以被视为节点序列,并且应该这样使用。例如,要将所有节点作为列表获取,请调用list(function)。- 参数:
- name¶
函数名称。
- domain¶
定义此函数的域。
- overload¶
当函数被重载时,重载名称。
- inputs¶
函数的输入值。
- attributes¶
此函数定义的属性。
- outputs¶
函数的输出值。
- opset_imports¶
函数导入的操作集。
- doc_string¶
文档字符串。
- meta¶
用于图转换传递的元数据存储。
- metadata_props¶
将序列化到 ONNX 文件中的元数据。
- all_nodes()[source]¶
在 O(#节点 + #属性) 时间内获取图中及其子图中的所有节点。
这是
onnx_ir.traversal.RecursiveGraphIterator(graph)的别名。考虑使用onnx_ir.traversal.RecursiveGraphIterator进行更高级的节点遍历。0.1.2 版本新增。
- property attributes: Attributes¶
- count(value) integer -- 返回 value 出现的次数¶
- property graph: Graph¶
包含此函数节点的底层 Graph 对象。
仅将此图用于身份比较
if value.graph is function.graph: # Do something with the value that belongs to this function
否则,直接使用 Function 对象访问节点和其他属性。
添加于 0.1.7 版本。
- index(value[, start[, stop]]) 整数 -- 返回 value 的第一个索引。¶
如果值不存在,则引发 ValueError。
支持 start 和 stop 参数是可选的,但建议使用。
- property inputs: MutableSequence[Value]¶
- property meta: MetadataStore¶
用于中间分析的元数据存储。
如果您希望将元数据序列化为 ONNX proto,请写入
metadata_props。
- property metadata_props: dict[str, str]¶
函数的元数据属性。
元数据属性用于存储有关函数的附加信息。与
meta不同,此属性被序列化为 ONNX proto。
- property outputs: MutableSequence[Value]¶
- remove(nodes, /, safe=False)[source]¶
在 O(#节点数) 时间内从图中移除节点。
如果发生任何错误,为确保图不会处于不一致状态,图不会被修改。
- 参数:
- 引发:
ValueError – 如果要移除的任何节点不属于此图。
ValueError – (当
safe=True时) 如果节点不属于此图或存在节点的用户。ValueError – (当
safe=True时) 如果节点仍被其他未被移除的节点使用。
- 返回类型:
无