"Hey Assistant" wake-word on the VoxRT runtime
An always-on wake-phrase detector for the phrase "Hey Assistant".
~100 KB .vxrt model, ~48K parameters, streaming 16 kHz mono input,
sigmoid-score output. Trained in-house on synthetic data β no
upstream weights, no upstream licence obligations on the weights
themselves.
Ships on Android, iOS, Linux aarch64, and the browser (WASM SIMD128). On the smallest supported hardware β a $15 Raspberry Pi Zero 2 W β it holds the always-on hot loop at 5.3 % of one A53 core, sustained.
Try it live in your browser: the
@voxrt/wake-word-browsernpm package + the HF Space at hf.co/spaces/VoxRT/wake-word-browser-demo (see the "About the Space" note at the bottom of this card if the Space link is still pending).
Model quality
Test split: 5,240 positive utterances + 6,416 hard-negative utterances (isolated "Hey", isolated "Assistant", competitor wake-words like "Hey Siri", phonetic neighbours, arbitrary speech, non-speech audio). All speakers disjoint from train + val.
- ROC AUC: 0.9966
- Average precision (PR AUC): 0.9899
- Default threshold 0.90 hits precision 0.993 / recall 0.982 on the test split.
Full precision / recall / FPR table lives in the Linux SDK README β identical model.
Runtime performance
Cumulative RTF (wall_time / audio_time, lower is better) on a
single CPU core, real deployments:
| Device | CPU / build | RTF |
|---|---|---|
| Raspberry Pi Zero 2 W (Linux SDK) | Cortex-A53 Γ 1, sustained live-mic | 5.3 % |
| Snapdragon 662 (Android SDK) | Cortex-A73 pinned, HIGH_PERF affinity | 2.1 % |
| iPhone 13 Pro Max (iOS SDK) | Apple A15 | 1.5 % |
| Chrome on MacBook Pro M4 (Browser) | WASM SIMD128, @voxrt/wake-word-browser |
0.16 % |
| Safari on iPhone 13 Pro Max (Browser) | WASM SIMD128, @voxrt/wake-word-browser |
0.23 % |
On the SD662 the raw NEON code path is 8.5Γ faster than the scalar reference (0.182 RTF scalar β 0.021 RTF NEON) β see the runtime methodology at voxrt-wake-word-linux#neon-vs-scalar.
Download & use
The .vxrt file on this HF repo is byte-identical to the one at
github.com/VoxRT/voxrt-wake-word-models/releases.
Either source is fine β pick whichever your build tooling reaches
faster. The file is AES-256-GCM encrypted at rest; the VoxRT
runtime decrypts it on load using a master key baked into the
compiled SDK binary. The same file ships inside every VoxRT SDK
.aar / xcframework / tarball, so most users never touch the
.vxrt directly.
The browser SDK (@voxrt/wake-word-browser) bundles a
plaintext variant of the model β WASM decompiles, so an
encrypted-at-rest scheme with a master key inside the WASM binary
would fail to protect anything (see the plaintext-model
architecture note at
github.com/VoxRT/voxrt-wake-word-linux#security-tiers).
That plaintext .vxrt is shipped only inside the npm package,
not on this HF repo.
Use with a VoxRT SDK
.vxrt files aren't loadable with transformers, onnxruntime,
or any standard HF library β they're a proprietary container the
VoxRT runtime reads. Pick one of the SDKs:
- Android β
voxrt-wake-word-android(JitPack) - iOS β
voxrt-wake-word-ios(Swift Package Manager) - Linux aarch64 β
voxrt-wake-word-linux(tarball + Python wheel + npm + Go module) - Browser (WASM) β
@voxrt/wake-word-browser(npm, ~275 KB total)
Custom phrase β the paid tier
The default model detects "Hey Assistant" only. If your product
needs its own wake-phrase (your brand name, a language other than
English, multi-phrase detection), that's the paid VoxRT SDK tier β
we train, package into .vxrt, and hand back to you with the same
runtime performance guarantees.
Contact help@voxrt.com for scoping, timeline, and pricing.
Licensing
- Model weights are proprietary, trained in-house by Elephant Enterprises LLC on 100 % synthetic training data. No upstream model checkpoints, no copyleft or attribution obligations on the weights themselves.
- The VoxRT runtime +
.vxrtcontainer format are proprietary Elephant Enterprises LLC IP. - Redistribution of the
.vxrtis permitted only as an unmodified part of one of the SDK libraries linked above at the version it was resolved with. See LICENSE-BINARY for the full terms.
About VoxRT
VoxRT is a from-scratch on-device inference runtime tuned for streaming audio on commodity ARM CPUs β no GPU, no NPU, no vendor accelerator required. Sister products on the same runtime:
- Voice activity detection: Silero VAD in
.vxrt - Streaming ASR: NeMo FastConformer streaming-medium-pc
Commercial integration / custom-model packaging / custom wake-phrase:
help@voxrt.com Β· voxrt.com
About the Space
The interactive browser demo at hf.co/spaces/VoxRT/wake-word-browser-demo is built and maintained by the VoxRT web team. If the Space link above 404s, it's still being staged β check back or grab the same demo experience directly at voxrt.com.