Skip to main content

oaax

Python bindings for runtime libraries that implement the OAAX runtime interface (OAAX 2.0). The package loads any compliant runtime library with ctypes and lets you drive it with NumPy arrays: initialise, load models, enqueue inputs, retrieve outputs, and clean up. It is not tied to any particular vendor's runtime or model format.

Installation

pip install oaax

You need an OAAX runtime shared library (.dll on Windows, .so on Linux) and a model file that runtime can load. The package doesn't ship either.

A generic CPU runtime, built on ONNX Runtime, is available as an archive for each platform:

Each archive contains the runtime library and the libraries it depends on. Unpack it and pass the library path to Runtime(...).

To try it with a real model, the examples use UltraFace, a face detection model (MIT licensed) available from https://github.com/Linzaer/Ultra-Light-Fast-Generic-Face-Detector-1MB.

Usage

import numpy as np
from oaax import Runtime

with Runtime("path/to/RuntimeLibrary.dll") as rt:
    print(rt.name, rt.version)
    rt.init({})  # runtime-specific options, if any

    model_id = rt.load_model("path/to/model.onnx")
    io = rt.model_io(model_id)  # None if the runtime doesn't report its inputs and outputs
    if io is not None:
        inputs, outputs = io
        print(inputs)

    image = np.random.rand(1, 3, 240, 320).astype(np.float32)
    result = rt.run(model_id, {"input": image}, timeout_ms=10_000)  # the model's real input name
    for tensor in result:
        print(tensor.name, tensor.data.shape, tensor.data.dtype)

Use the input names and shapes your model expects. If you pass an input name the model doesn't have, run() raises ValueError when the runtime reports its inputs; otherwise the request may time out.

For pipelined use, rt.enqueue(model_id, inputs) submits a request without waiting, and rt.retrieve(timeout_ms) returns whichever request finishes first.

Configuration keys passed to rt.init(...) and per-model options are defined by each runtime vendor, not by the OAAX interface. A compliant runtime ignores keys it doesn't recognise.

Documentation and source

License

Apache License 2.0. See LICENSE.

Metadata

Release files for oaax 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for oaax 0.1.1
File Size Uploaded Provenance Actions
oaax-0.1.1.tar.gz 28.6 kB With provenance Details for oaax-0.1.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for oaax 0.1.1
File Interpreter ABI Platform Actions
oaax-0.1.1-py3-none-any.whl Python 3 none any Details for oaax-0.1.1-py3-none-any.whl

Total release size: 52.7 kB

Release files / oaax-0.1.1.tar.gz

Download URL oaax-0.1.1.tar.gz
Size 28.6 kB
Tags Source
SHA-256 checksum
How to use checksums
5ddbd290f6a96869ea90069b6f32f2eec1ddc5473573efd975af0cdcf68b49b9
BLAKE2b-256 checksum
How to use checksums
bcb63b78b7177bd4f3fcb1d87f49f42f7b4cde0b8f561c295c845cd1cd6b24f2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / oaax-0.1.1-py3-none-any.whl

Download URL oaax-0.1.1-py3-none-any.whl
Size 24.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ebbd3f235f60595e2eea2d0a19952002f02a8fcd7ff3ac79439065d3b58eb227
BLAKE2b-256 checksum
How to use checksums
dd5e8fc7e9d52fb8207aca59876ea267cf02ab1ab398ff3ddbde8f325ec5363e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Security for oaax 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for oaax-0.1.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page