yobx.builder.light#

Fluent API for building ONNX graphs using a chainable, builder-style syntax.

Quick Start

from yobx.builder.light import start

# Single-input model: Y = Neg(X)
onx = start().vin("X").Neg().rename("Y").vout().to_onnx()

# Two-input model: Z = Add(X, Y)
onx = (
    start()
    .vin("X")
    .vin("Y")
    .bring("X", "Y")
    .Add()
    .rename("Z")
    .vout()
    .to_onnx()
)

# Python operator overloads
import numpy as np
gr = start()
x, y = gr.vin("X"), gr.vin("Y")
(x * y + gr.cst(np.ones(4, dtype=np.float32), "bias")).rename("Z").vout()
onx = gr.to_onnx()

Entry Points

yobx.builder.light.start(opset: int | None = None, opsets: Dict[str, int] | None = None, ir_version: int | None = None) OnnxGraph[source]#

Creates a new OnnxGraph to start building an ONNX model.

Parameters:
  • opset – main opset version

  • opsets – additional opsets as {domain: version}

  • ir_version – ONNX IR version

Returns:

OnnxGraph

Example:

from yobx.builder.light import start

onx = start().vin("X").Neg().rename("Y").vout().to_onnx()
yobx.builder.light.g() OnnxGraph[source]#

Creates a new OnnxGraph for use as a subgraph (e.g. inside If).

Returns:

OnnxGraph with proto_type=ProtoType.GRAPH