convert_tools

convert_helper

inline_model_proto

experimental_experiment.convert.convert_helper.inline_model_proto(model_proto: ModelProto) ModelProto[source]

Inlines a model.

Parameters:

model_proto – ModelProto

Returns:

inlined model

optimize_model_proto

experimental_experiment.convert.convert_helper.optimize_model_proto(model_proto: ModelProto, verbose: int = 0, onnx_shape_inference: bool = False, inplace: bool = True) ModelProto[source]

Optimizes a model proto to optimize onnxruntime.

Parameters:
  • model_proto – ModelProto

  • verbose – verbosity

  • onnx_shape_inference – enable shape inference

  • inplace – the function modifies the proto inplace as well

Returns:

optimized model

You should run that before calling this function

onnx_model = exported.to_model_proto(
    opset_version=self._resolved_onnx_exporter_options.onnx_registry.opset_version
)

from experimental_experiment.convert.convert_helper import optimize_model_proto
onnx_model = optimize_model_proto(onnx_model)

ort_optimize

experimental_experiment.convert.convert_helper.ort_optimize(onnx_model: str | ModelProto, output: str, providers: str | List[str] = 'cpu', disable_aot: bool = False)[source]

Optimizes the model with onnxruntime.

Parameters:
  • onnx_model – ModelProto or file path

  • output – path for the output

  • providers – providers, cpu, cuda or a list of providers

  • disable_aot – disable AOT

onnx_tools

onnx_lighten

experimental_experiment.onnx_tools.onnx_lighten(onx: str | ModelProto, verbose: int = 0) Tuple[ModelProto, Dict[str, Dict[str, float]]][source]

Creates a model without big initializers but stores statistics into dictionaries. The function can be reversed with experimental_experiment.onnx_tools.onnx_unlighten(). The model is modified inplace.

Parameters:
  • onx – model

  • verbose – verbosity

Returns:

new model, statistics

onnx_unlighten

experimental_experiment.onnx_tools.onnx_unlighten(onx: str | ModelProto, stats: Dict[str, Dict[str, float]] | None = None, verbose: int = 0) ModelProto[source]

Function fixing the model produced by function experimental_experiment.onnx_tools.onnx_lighten(). The model is modified inplace.

Parameters:
  • onx – model

  • stats – statics, can be None if onx is a file, then it loads the file <filename>.stats, it assumes it is json format

  • verbose – verbosity

Returns:

new model, statistics