ONNX reference

How to interpret the ONNX graph report

The report follows tensor names through operator nodes. It is a structural view of the saved graph, not an execution trace.

Graph inputs and outputs

An input is a value the graph declares at its boundary. An output is a value the graph returns. The table shows the saved name and type. A tensor type includes an element type such as float32 or int64 and a shape such as [batch_size, sequence_length, 768].

Numbers are fixed dimensions. Words are symbolic dimensions chosen by the model author. A question mark means the model did not provide a value the parser could display. A graph input that is also listed as an initializer is classified as an initializer input in the dependency trace, because it normally represents a stored value rather than user data.

Nodes, operators, and tensors

A node applies an operator to named input tensors and produces named output tensors. MatMul, Add, and Relu are examples of operator types. A non-default domain is shown before the operator type. Node attributes can configure an operator, but the current report shows only how many attributes exist, not their values.

A tensor name connects a producer to one or more consumers. Intermediate tensors may have type and shape information when the model includes value-info records. If it does not, the connection can still be traced by name, but the report may not know its shape.

Initializers

An initializer is a named tensor stored by the model, commonly a learned weight or constant. Initializers feed node inputs without being produced by another node. AI Model Inspector reads their names, data types, and dimensions. Those fields contribute to the weight-memory estimate; tensor values and external file locations are not displayed.

Small conceptual example

input x ──┐
MatMul ── hidden ── Add ── output y
weight W ─┘ ↑
bias b

Here, x is a graph input. W and b are initializers. A MatMul node consumes x and W, producing hidden. An Add node consumes hidden and b, producing graph output y.

The forward trace starts from x and follows consumer nodes to y. The backward trace starts at y and follows producer nodes toward x and the initializers. Output and input summaries list connected endpoints, involved initializers, operator types, tensor count, node count, and maximum alternating tensor/node depth.

Reading the visualization carefully

The dependency graph is based on exact name matching in the saved model. It does not evaluate conditions, loops, nested subgraphs, operator semantics, or runtime optimizations. A reported path means that tensor and node names are connected; it does not prove that values are numerically correct or that a runtime can execute the model.

The detailed node table is limited to the first 50 nodes in the interface. The dependency builder uses all parsed top-level nodes. For very large graphs, use the search controls and JSON download to inspect the parsed report.

Return to the ONNX overview for parser coverage, or open the inspector to view a graph.