Downloads · 30 days
0
spybyscript/nemotron-speech-streaming-en-0.6b-aimodel
nemotron-speech-streaming-en-0.6b-aimodel is a automatic speech recognition model from spybyscript. Use it when you need speech turned into text. It is set up for coreai. The card lists the license as other.
Community conversion by spybyscript of NVIDIA's original English checkpoint into Apple's Core AI .aimodel format for OS 27. Exported directly from the original PyTorch weights, with no training or fine-tuning. This is…
Downloads · 30 days
0
Access
Public
Updated Sep 16, 2026
Repo size
1.9 GB
Likes
0
Public
Click a slice to open those files.
.mlirb1.9 GB · 100%
From the Hugging Face model README
Community conversion by spybyscript of NVIDIA's original English checkpoint into Apple's Core AI .aimodel format for OS 27. Exported directly from the original PyTorch weights, with no training or fine-tuning. This is not an official NVIDIA or Apple release.
Each variant contains 31 component assets for a stateful 560 ms English RNN-T pipeline, plus tokenizer, tensor contract, checksums and validation. A host decoder carries the caches and turns token IDs into text. The included Swift streaming runner is the tested reference implementation; see INTEGRATION.md.
Related formats: spybyscript's Android LiteRT conversion. The Core AI export uses the original checkpoint, not the LiteRT files. This is the English model, not Nemotron 3.5.
ebe59e5a817142986528bbbee5dba8db7b38ed50.bddd8a7300826efd19cf7e01f1c7db8402bed6786fc4c7739632894f69c71473.The FP32 native reference was independently cross-checked against the original model's generate() with the same 560 ms chunk profile. Conversion evaluation used 20 selected LibriSpeech test-clean recordings, 10 speakers, 171.555 seconds, 488 reference words. This is a small conversion test, not the full LibriSpeech benchmark or broad deployment qualification.
| Variant | Bundle bytes¹ | Exact native-token matches | Human-reference WER | Peak process RSS² | Warm RTF³ |
|---|---|---|---|---|---|
| Native FP32 reference | — | reference | 3.07% (15/488) | — | — |
| fp16 | 1,256,223,566 | 20/20 | 3.07% (15/488) | 1.43 GB | 0.081 |
| w8 — evaluation only | 653,019,082 | 18/20 | 2.66% (13/488) | 0.995 GB | 0.089 |
¹ Bytes recorded by each manifest, excluding the manifest itself. Decimal GB. ² Peak resident memory for the entire Swift benchmark process, not just model weights or a prediction of iPhone memory. ³ Processing seconds / audio seconds, excluding the first recording; lower is faster. These warm timings do not include loading, initial specialization or audio capture. Median per-recording chunk p50 was 42.7 ms (FP16) and 47.3 ms (W8), per 560 ms model chunk. The full report includes first-recording costs, per-recording timings and numerical drift.
Full results: FP16, W8. Evaluation transcripts and audio hashes are included; the recordings themselves are not distributed. See corpus attribution.
Tested on Apple M5 Max, 128 GiB RAM, macOS 27.0 (26A5425a), Xcode 27.0 (27A266a), Swift 6.4. Core AI default specialization was used. The benchmark performs host copies between graphs and is a correctness-oriented reference, not a fully fused implementation. Actual GPU/CPU/Neural Engine placement was not profiled.
The standalone Swift implementation also completed 80 utterances per variant in one process (686.22 seconds of audio): the same 20 recordings repeated four times with varying callback sizes, complete cache resets and an empty-stream check. All outputs matched that variant's captured results. Peak RSS was 1.44 GB FP16 / 1.02 GB W8. Retained PCM after callbacks stayed below one 9,313-sample model window. This is a repeated short-utterance stability test, not a new 80-recording accuracy set or a single uninterrupted 11-minute utterance. See FP16 stability and W8 stability.
The beta Python Core AI wrapper repeatedly aborted after eight recordings with an IOSurface allocation failure. Autorelease pools, direct buffer copies and forced garbage collection did not resolve it. Swift with explicitly reusable input/output buffers passed the sustained test. The Python wrapper's underlying cause remains unresolved; use the included Swift runner for sustained testing.
Both final variants were compiler-checked for iOS 27, architecture h19p. Compiler warnings prevent any claim of confirmed Neural Engine placement. No iPhone/iPad execution, energy, thermal or microphone latency measurements are claimed. These universal .aimodel source assets still specialize on the destination device; compiler outputs are not distributed. See compilation evidence.
Requirements: Apple silicon, macOS 27, Xcode 27 and Apple's Metal Toolchain. Model execution uses the system Core AI framework; no Python, Transformers, NeMo, LiteRT or ONNX runtime is needed by the Swift executable.
Download one variant with Hugging Face's CLI (pin an immutable repository revision for deployment):
hf download spybyscript/nemotron-speech-streaming-en-0.6b-aimodel \
--include 'fp16/*' '*.swift' '*.md' 'LICENSE.pdf' 'publication.json' 'SHA256SUMS' \
--local-dir nemotron-en-aimodel
cd nemotron-en-aimodel
xcodebuild -downloadComponent MetalToolchain
xcrun swiftc -parse-as-library -O CoreAISpeechRunner.swift SwiftTranscribe.swift -o transcribe
./transcribe fp16 recording-mono-16khz.wav
The executable verifies bundle hashes before loading, prints JSON containing text, token IDs, timing and memory, and streams the file through deliberately unaligned 997-sample callbacks. Resample/downmix to mono 16 kHz before invocation. Keep .aimodel directories intact.
For W8, download w8/* as well, then explicitly opt in:
./transcribe w8 recording-mono-16khz.wav --allow-experimental
For an app, keep graphs and tensor storage resident, serialize stream operations, and reset all caches between utterances. SpeechRunner.feed(_:final:) accepts incremental Float32 PCM; reset() starts a new utterance. The reference currently copies activations through host arrays and uses the main actor for serialization. Move app inference to a dedicated execution context and validate end-to-end Swift transcripts before adding a UI. VAD, diarization, resampling and speaker segmentation are not included.
This conversion preserves a streaming ASR model's existing recognition weaknesses; format conversion does not improve its speech understanding. Names, emotional speech, overlap, music, noise and omitted words need representative evaluation. Token parity is scoped to the tested recordings. W8 especially needs a larger, diverse accuracy test before becoming a default. Measure phone memory and latency with concurrent emotion analysis, cold versus warm operation, thermal load and energy before choosing a shipping configuration.
Apple references: Core AI guide, PyTorch converter, Core AI models and Swift examples, optimization library.