.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "auto_examples/plot_backend.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note Click :ref:`here ` to download the full example code .. rst-class:: sphx-glr-example-title .. _sphx_glr_auto_examples_plot_backend.py: .. _l-example-backend-api: ONNX Runtime Backend for ONNX ============================= *ONNX Runtime* extends the `onnx backend API `_ to run predictions using this runtime. Let's use the API to compute the prediction of a simple logistic regression model. .. GENERATED FROM PYTHON SOURCE LINES 17-23 .. code-block:: default import numpy as np from onnxruntime import datasets from onnxruntime.capi.onnxruntime_pybind11_state import InvalidArgument import onnxruntime.backend as backend from onnx import load .. GENERATED FROM PYTHON SOURCE LINES 24-26 The device depends on how the package was compiled, GPU or CPU. .. GENERATED FROM PYTHON SOURCE LINES 26-41 .. code-block:: default from onnxruntime import get_device device = get_device() name = datasets.get_example("logreg_iris.onnx") model = load(name) rep = backend.prepare(model, device) x = np.array([[-1.0, -2.0]], dtype=np.float32) try: label, proba = rep.run(x) print("label={}".format(label)) print("probabilities={}".format(proba)) except (RuntimeError, InvalidArgument) as e: print(e) .. rst-class:: sphx-glr-script-out Out: .. code-block:: none [ONNXRuntimeError] : 2 : INVALID_ARGUMENT : Got invalid dimensions for input: float_input for the following indices index: 0 Got: 1 Expected: 3 Please fix either the inputs or the model. .. GENERATED FROM PYTHON SOURCE LINES 42-44 The backend can also directly load the model without using *onnx*. .. GENERATED FROM PYTHON SOURCE LINES 44-54 .. code-block:: default rep = backend.prepare(name, device) x = np.array([[-1.0, -2.0]], dtype=np.float32) try: label, proba = rep.run(x) print("label={}".format(label)) print("probabilities={}".format(proba)) except (RuntimeError, InvalidArgument) as e: print(e) .. rst-class:: sphx-glr-script-out Out: .. code-block:: none [ONNXRuntimeError] : 2 : INVALID_ARGUMENT : Got invalid dimensions for input: float_input for the following indices index: 0 Got: 1 Expected: 3 Please fix either the inputs or the model. .. GENERATED FROM PYTHON SOURCE LINES 55-58 The backend API is implemented by other frameworks and makes it easier to switch between multiple runtimes with the same API. .. rst-class:: sphx-glr-timing **Total running time of the script:** ( 0 minutes 0.018 seconds) .. _sphx_glr_download_auto_examples_plot_backend.py: .. only :: html .. container:: sphx-glr-footer :class: sphx-glr-footer-example .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_backend.py ` .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_backend.ipynb ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_