ONNX Runtime OpenVINO Execution Provider Plugin
This package provides the OpenVINO™ Execution Provider plugin for ONNX Runtime.
Installation
Prerequisites
-
ONNX Runtime: Install separately (this package does NOT include ONNX Runtime)
pip install onnxruntime>=1.23.0
-
Platform: Pre-built wheels available for:
- Windows x64
- Linux x86_64 (manylinux_2_28 compatible — glibc 2.28+, e.g. RHEL 8, Ubuntu 20.04+)
Install the Plugin
pip install onnxruntime-ep-openvino
Note: This package is distributed as binary wheels only. If no wheel is available for your platform/Python version, installation will fail. Source builds are not supported.
Usage
Basic Example
import onnxruntime as ort
import onnxruntime_ep_openvino as openvino_ep
# Get the plugin library path
ep_lib_path = openvino_ep.get_library_path()
# Register the plugin with ONNX Runtime
registration_name = "openvino_ep"
ort.register_execution_provider_library(registration_name, ep_lib_path)
# Get the EP name
ep_name = openvino_ep.get_ep_name()
# Get available OpenVINO devices
all_ep_devices = ort.get_ep_devices()
openvino_devices = [d for d in all_ep_devices if d.ep_name == ep_name]
if not openvino_devices:
raise RuntimeError("No OpenVINO devices found")
# Select OpenVINO CPU device
cpu_devices = [d for d in openvino_devices if d.ep_metadata.get("ov_device") == "CPU"]
if not cpu_devices:
raise RuntimeError("No OpenVINO CPU device found")
# Create session options
sess_options = ort.SessionOptions()
# Add OpenVINO EP to the session
ep_options = {}
sess_options.add_provider_for_devices([cpu_devices[0]], ep_options)
# Create inference session
model_path = "path/to/model.onnx"
session = ort.InferenceSession(model_path, sess_options=sess_options)
# Run inference
# ... your inference code here ...
# Clean up
del session
# Unregister the library after all sessions are closed
ort.unregister_execution_provider_library(registration_name)
Helper Functions
get_library_path()
Returns the full path to the OpenVINO EP plugin library.
import onnxruntime_ep_openvino as openvino_ep
lib_path = openvino_ep.get_library_path()
print(f"Plugin library: {lib_path}")
get_ep_name()
Returns the name of the Execution Provider: "OpenVINOExecutionProvider"
ep_name = openvino_ep.get_ep_name()
print(f"EP name: {ep_name}")
get_ep_names()
Returns a list containing the EP name (for compatibility with multi-EP plugins).
ep_names = openvino_ep.get_ep_names()
# Returns: ['OpenVINOExecutionProvider']
Troubleshooting
Library Not Found
If you get a FileNotFoundError, ensure:
- The package is properly installed:
pip list | grep onnxruntime-ep-openvino - Reinstall if needed:
pip install --force-reinstall onnxruntime-ep-openvino
Note: OpenVINO and TBB libraries are bundled with the package - no separate installation needed!
No Devices Found
If get_ep_devices() doesn't return OpenVINO devices:
- Check that the plugin is registered before calling
get_ep_devices() - Verify your hardware is supported by OpenVINO
- Restart your Python session after installation
Version Compatibility
- Requires ONNX Runtime 1.23.0 or later
License
This project is licensed under the MIT License
Copyright © Intel Corporation. All rights reserved.
Metadata
Release files for onnxruntime-ep-openvino 1.7.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| onnxruntime_ep_openvino-1.7.0-py3-none-win_amd64.whl | Python 3 | none | Windows x86-64 | Details |
| onnxruntime_ep_openvino-1.7.0-py3-none-manylinux_2_28_x86_64.whl | Python 3 | none | Linux glibc 2.28+ x86-64 | Details |
Total release size: 119.4 MB
Release files / onnxruntime_ep_openvino-1.7.0-py3-none-win_amd64.whl
| Download URL | onnxruntime_ep_openvino-1.7.0-py3-none-win_amd64.whl |
|---|---|
| Size | 67.7 MB |
| Tags | Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
0b48601ff6720a9fdbf06de99073665cec9b8d7983226455d4f766aa4d8be16c
|
|
BLAKE2b-256 checksum How to use checksums |
c3c74ebac45e18e3c32655948f831ac95711849824bd7b3e793c3f8c6bc2060e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.8.13
|
Release files / onnxruntime_ep_openvino-1.7.0-py3-none-manylinux_2_28_x86_64.whl
| Download URL | onnxruntime_ep_openvino-1.7.0-py3-none-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 51.7 MB |
| Tags | Linux glibc 2.28+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
7016c5ba4154f2a2b6da87e8b8654e5e811151186fb97cc29bde5d2fabde6c93
|
|
BLAKE2b-256 checksum How to use checksums |
78b67d168ff711e6034c4df4c5144242a230c7e6329f24b50454103510671b85
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.8.13
|