# vitoplantamura/OnnxStream

Lightweight inference library for ONNX files, written in C++. It can run Stable Diffusion XL 1.0 on a RPI Zero 2 (or in 298MB of RAM) but also Mistral 7B on desktops and servers. ARM, x86, WASM, RISC-V supported. Accelerated by XNNPACK. Python, C# and JS(WASM) bindings available.

Repository: https://github.com/vitoplantamura/OnnxStream
Canonical: https://ross.abutalabs.com/products/onnxstream
Homepage: https://whisper.vitoplantamura.com/
Language: C++
License: NOASSERTION
License Family: other
Topics: machine-learning, onnx, raspberry-pi, stable-diffusion, llama, mistral, tinyml, wasm, webassembly, yolov8, whisper
Last push: 2026-06-18T17:04:41+00:00

## Health v2 (maintenance only)
Score: 59/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 88, release rhythm 8, longevity 81
- inputs: {"age_days": 1147, "days_push": 76, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2086, forks 99 (observed 2026-08-28T04:06:11.951531+00:00)

## What it is
A lightweight C++ inference library for ONNX models that streams weights to run large models in very little memory, accelerated by XNNPACK. It can run Stable Diffusion XL on a Raspberry Pi Zero 2 (298MB RAM), LLMs like Mistral 7B on desktops, and models like YOLOv8 and Whisper in the browser via WASM.

## Use cases
- run stable diffusion on a raspberry pi with 512MB ram
- run mistral 7B locally with minimal memory
- run whisper speech recognition in the browser
- run yolov8 object detection in the browser with wasm
- run onnx models on embedded arm or risc-v devices
- generate images from text on low-memory hardware
- run llm inference on a tiny sbc

## When to choose
- you need to run large ONNX models (diffusion, LLMs) in constrained memory environments
- you target ARM, RISC-V, x86, or WASM without GPU dependencies
- you want a lightweight C++ inference engine with Python/C#/JS bindings

## When to avoid
- you need maximum throughput on GPU servers with mature CUDA stacks
- you need broad ONNX operator coverage or production support like ONNX Runtime
- you need a permissively documented license (license is non-standard)

## Facets
- artifact type: library
- maturity: active
- function: llm-inference, machine-learning, stable-diffusion, speech-recognition, computer-vision, sdk
- domain: machine-learning, deep-learning, artificial-intelligence, image-processing, speech-processing, embedded-systems, gpu-computing
- platform: windows, wasm, embedded, cpp, python, cross-platform, browser
- tags: onnx, raspberry-pi, xnnpack, low-memory, tinyml, edge-inference, llm, yolov8, whisper, bindings, linux, macos

## Member repositories
- vitoplantamura/OnnxStream (main) score 59

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:06:11.951531+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:55:48.699070+00:00, confidence not recorded.
  - readme: https://github.com/vitoplantamura/OnnxStream (fetched 2026-08-28T04:06:11.951531+00:00, sha b04f0977f269)
  - homepage: https://whisper.vitoplantamura.com/ (fetched 2026-08-29T10:35:43.977079+00:00, sha 6953030e1149)
- Data as of 2026-08-30T08:39:29.467469+00:00.
