onnx_ir.passes¶

The pass API defines transformation contracts, results, composition, lifecycle errors, and functionalization utilities. Reusable implementations are documented in onnx_ir.passes.common.

See Writing transformation passes for implementation, composition, metadata invalidation, and testing guidance. See Model I/O for targeted normalization and validation tools.

Pass infrastructure¶

onnx_ir.passes.PassBase

Base class for all passes.

onnx_ir.passes.InPlacePass

A pass that modifies the input model in place and returns it.

onnx_ir.passes.FunctionalPass

A pass that returns a new model but does not modify the input model.

onnx_ir.passes.Sequential

Run a sequence of passes in order.

onnx_ir.passes.PassResult

Result of a pass.

onnx_ir.passes.PassManager

Pass manager for the IR.

Errors¶

exception onnx_ir.passes.InvariantError¶

Raised when an invariant is violated.

exception onnx_ir.passes.PreconditionError¶

Raised when a precondition is violated.

exception onnx_ir.passes.PostconditionError¶

Raised when a postcondition is violated.

exception onnx_ir.passes.PassError¶

Raised when an error occurs during a pass.

Utilities¶

onnx_ir.passes.functionalize(pass_instance)¶

Produce a functional pass from a given pass.

A new functional pass is created that clones the input model before running the pass.

Added in version 0.1.14.

Parameters:

pass_instance (PassBase) – The pass to convert.

Returns:

A functional pass.

Return type:

FunctionalPass