Skip to main content

heliaAOT

Bring blazing-fast, ultra-compact neural inference to Ambiq’s ultra-low-power SoCs—without a runtime.

heliaAOT is an ahead-of-time (AOT) compiler that converts front-end models (e.g., TFLite) into stand-alone C inference modules optimized for Ambiq microcontrollers. By shifting codegen to build-time and eliminating the runtime interpreter, heliaAOT delivers compact, readable C with zero arena-guesswork and no dead code.


✨ Why heliaAOT?

  • Smaller binaries – Generate only the code you need. No interpreter, no dead kernels.
  • Deterministic memory – Context-level memory planning; stop guessing arena sizes.
  • Readable output – Layer-mirrored C files for fast bring-up and debugging.
  • Ambiq-tuned – Optimized for Cortex-M (M4/M55/Helium) on Ambiq SoCs.
  • Fits your build – Emits a CMake, Zephyr or NSX module, or sources for your existing build system.

🚀 Quick Start

Option A: Install via pipx

pipx install --python python3.12 helia-aot
helia-aot --help

We recommend pipx because it installs Python apps in isolated, self-contained environments and puts the CLI on your PATH.

Option B: Install via uv

uv tool install --python python3.12 helia-aot
helia-aot --help

Option C: Install via pip

python -m venv .venv
source .venv/bin/activate  # Windows: .venv\Scripts\activate
python -m pip install helia-aot
helia-aot --help

🧭 First Conversion

helia-aot convert \
  --model.path ./model.tflite \
  --module.path ./out \
  --module.name my_model_aot

What you get:

out/my_model_aot/
├── CMakeLists.txt        # CMake library target; other --module.type values emit their own build files
├── LICENSE               # License for the generated module
├── README.md             # Module usage notes and requirements
├── aot_plan.json         # Optimization plan: the choice made for each operator
├── aot_report.json       # Why each choice was made, with sizes and hints
├── includes-api/         # Public C headers
└── src/                  # Model, tensors and operator implementations

Drop the folder into your firmware tree and build like any other C module. --module.type selects the build files: cmake (the default), zephyr or nsx. The module calls heliaCORE, Ambiq's kernel library, and needs the ns-cmsis-nn release its README names. CMake output leaves the AOT_PRINTF logging hook and the AOT_PUT_* memory placement hooks as no-ops unless your application supplies them (the AOT part follows --module.prefix); see Firmware integration.


🛠️ Current CLI

heliaAOT exposes the following commands:

  • convert – Convert a TFLite model into a C inference module.

    helia-aot convert --help
    
  • list-targets – List every supported target platform name.

    helia-aot list-targets
    
  • target-info – Show a target's CPU, clock speeds, memories, and capabilities.

    helia-aot target-info --name apollo330mp_evb
    
  • version – Print the installed heliaAOT version.

    helia-aot version
    

    We follow “progressive disclosure of complexity.” The CLI starts simple; advanced flags and expert workflows are documented in the site’s Guides and Reference sections.


📚 Documentation

  • Getting Started: the fastest way from model → C module
  • Guides: configuration, memory, precision, testing and troubleshooting
  • Reference: every command, setting, target, operator and error
  • Compatibility and versioning: what a release promises and what it does not
  • Benchmarks: dated size and speed comparisons, with their conditions
  • API: for power users who integrate deeper

The docs are written for CLI users first; you don’t need to know (or care) that the tool is implemented in Python.


🔌 Supported Inputs & Targets

Inputs

  • LiteRT/TFLite flatbuffers with int8 or int16 quantization
  • float16 and float32 operators (experimental)

Targets

  • Ambiq SoCs (Cortex-M4, M55/Helium); helia-aot list-targets names them
  • Integration paths: CMake, Zephyr and NSX modules; CMSIS-Pack (evaluation)

🧩 What the Generated C Looks Like

  • A compact operator library: only kernels required by your model.
  • A structured init() / run() style API with clear I/O.
  • Compile-time tensor shapes and a fixed memory plan.
  • Optional operator callbacks for instrumentation/telemetry.

🧪 Testing & Quality

  • Continuous Integration runs linting and unit tests
  • Deterministic builds and reproducible outputs where possible
  • Example apps and benchmarks in the docs

💬 Support & Feedback


📄 License

heliaAOT generates C modules whose license restricts their use to Ambiq hardware. See the generated module’s LICENSE for its terms, and Support, licence and contributing for the tooling’s licence.


Ready to dive in? Head over to the Getting Started guide and generate your first module in minutes.

Metadata

Release files for helia-aot 0.30.0

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

Source distribution (sdist)

Source distribution for helia-aot 0.30.0
File Size Uploaded
helia_aot-0.30.0.tar.gz 612.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for helia-aot 0.30.0
File Interpreter ABI Platform
helia_aot-0.30.0-py3-none-any.whl Python 3 none any Details

Total release size: 1.5 MB

Release files / helia_aot-0.30.0.tar.gz

Download URL helia_aot-0.30.0.tar.gz
Size 612.6 kB
Tags Source
SHA-256 checksum
How to use checksums
6600764a23cda45e87ca2c1006cb0d9fe12cebf4cfd58b97cbe51ed245553be9
BLAKE2b-256 checksum
How to use checksums
be52c218f821193dbca8629851f65875c16826d1cd9d968f65189f21721a5908
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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 17, 2026.

Transparency log

Release files / helia_aot-0.30.0-py3-none-any.whl

Download URL helia_aot-0.30.0-py3-none-any.whl
Size 841.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
78909ee8f03fa35791cb00b8a72468b0706f27b63bb69bf80236dafa105ec66b
BLAKE2b-256 checksum
How to use checksums
67f9f7bac85c24c294ea74f1abda0c4dcb96edad970f216fcd6a52f76b63ba93
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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 17, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.30.0 This release

2 release files

0.29.0

2 release files

0.28.0

2 release files

0.27.0

2 release files

0.24.0

2 release files

0.23.0

2 release files

0.22.0

2 release files

0.18.0

2 release files

0.17.1

2 release files

0.17.0

2 release files

0.16.0

2 release files

0.15.0

2 release files

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