Fluid Speech Pro for Glade
Complete Fluid Speech Pro converted for Glade with Apple Core AI. Both distributions include the learned FrameCleaner block. The model has 629,125,766 primary parameters, including 2,117,632 in FrameCleaner, and supports the upstream checkpoint's 25 languages.
Source revision: 46027a3bffc5817ce8f9b29add0a062610134a90.
The weights retain CC-BY-4.0; see LICENSE and NOTICE.
Choose a mode
| Directory | Behavior | Download |
|---|---|---|
clean/ |
Edited transcription: removes fillers and repetitions | 806.4 MB |
verbatim/ |
Word-for-word transcription, retaining fillers and repetitions | 806.4 MB |
Download one complete directory. Each works independently. Clean uses the checkpoint's trained rank-32 LoRA adapter and learned predictor/joint offsets, merged into the weights before export. It is not a text postprocessor and adds no inference operations. The original FP32 NeMo adapter is merged before encoder quantization. Both modes have the same graph topology, operation count and primary parameter count, with separate specialization caches.
Runtime
Requires Glade on physical Apple silicon with iOS 27 or macOS 27.
- Mono 16 kHz input and the checkpoint's complete 128-bin log-mel frontend.
- A 24-layer, 1,024-channel, eight-head FastConformer, with the full residual FrameCleaner after subsampling; a two-layer 640-channel LSTM TDT predictor.
- W8 encoder projections and FP16 graph tensors. Native host decoder sidecars are included. Quantization and finite-frame conventions are explicit metadata.
- One 384-position encoder shape, split into six four-layer assets. Attention remains fully bidirectional within each chunk; staging does not restrict it.
- Contiguous quiet-boundary chunks of up to 30 seconds preserve every audio sample, including silence. No VAD head is supplied by this checkpoint.
- Two concurrent encoder requests and up to 32 batched decoder lanes.
- Upstream-default greedy TDT decoding, durations 0β4, at most ten symbols per acoustic frame. These are beam-1 results, not the publisher's beam-4 leaderboard.
- Native word timing has an 80 ms acoustic frame step; it is not forced alignment.
Glade handles file reading, chunk planning, batching, ordered results and cleanup:
import Foundation
import Glade
let bundle = try ParakeetModelBundle(directory: modelDirectory)
let recording = try STTRecordingTranscriber(runtime: bundle.makeTranscriber())
try await recording.transcribe(fileURL: audioURL) { segment in
print(segment.text)
}
metadata.json identifies the transcription style, shapes and numerical
conventions; runtime.json carries scheduling. A bundle's style can be read as
bundle.transcriptionStyle. Loading one mode does not prepare the other.
Performance
November 14, 2026. Complete 1,095.320125-second JFK Rice speech; one complete warmup, then three measured passes. RTFx is input audio seconds / processing seconds. Reference WPM is the 2,220 normalized reference words Γ 60 / processing seconds. Medians are reported; loading and warmup are excluded.
| Device | Mode | Processing | RTFx | Reference WPM |
|---|---|---|---|---|
| MacBook Pro, M5 Max, 64 GB | Verbatim | 2.446 s | 447.9Γ | 54,463 |
| MacBook Pro, M5 Max, 64 GB | Clean | 2.447 s | 447.7Γ | 54,440 |
| iPhone Duo, A20 Pro, 12 GB | Verbatim | 2.274 s | 481.7Γ | 58,581 |
| iPhone Duo, A20 Pro, 12 GB | Clean | 2.323 s | 471.4Γ | 57,329 |
| iPhone 15 Pro Max, A17 Pro, 8 GB | Verbatim | 3.564 s | 307.3Γ | 37,373 |
| iPhone 15 Pro Max, A17 Pro, 8 GB | Clean | 3.563 s | 307.5Γ | 37,389 |
The Mac runs use prepared, preloaded PCM and exclude file reading and planning. The phones use the public recording API, whose timer additionally includes bounded WAV conversion and planning. All use the same 43 contiguous cuts and consume every sample. The Mac uses Automatic power mode, macOS 27.2.1 (26B8132), Xcode 27.2 (27B52). Duo uses iOS 27.3 (24C5037i); 15 Pro Max uses iOS 27.2 (24B119). Duo Verbatim and all 15 Pro Max passes were thermally nominal; Duo Clean passes were fair.
Batching matters. A separate, matched 15-second-window Mac control measured 114.4Γ with serial chunks / one decoder lane and 488.1Γ with two encoder requests / up to 32 decoder lanes. That control uses a different input shape from these 30-second distributions and is not the default download. The gain combines decoder batching and encoder concurrency; it does not isolate either. Short single-chunk latency does not scale like full-recording throughput.
First preparation
First observed preparation includes Core AI model/function preparation. Global caches were not cleared; cached values are subsequent loads of these assets. The first-use clock excludes offline conversion and any settling wait.
| Device | First Verbatim | First Clean | Cached preparation |
|---|---|---|---|
| M5 Max | 34.5 s | 35.1 s | 0.07 s |
| iPhone Duo | 82.5 s | 83.9 s | 0.12β0.18 s |
| iPhone 15 Pro Max | 53.2 s | 53.2 s | 0.17β0.19 s |
Qualification
Verbatim has 54/2,220 errors (2.43% WER) on this recording with whisper-normalizer 0.1.15 and jiwer 4.0.0, on all three devices. Clean matches the normalized independent FP32 clean reference exactly on these cuts. Clean agreement measures conversion fidelity; intended edits are not scored as errors against a verbatim human reference. English and a short FLEURS French recording were checked; this is not a broad multilingual accuracy evaluation.
Separate Mac and 15 Pro Max traces capture 594 unique ANE hardware predictions for a complete recording pass and no target GPU intervals. Concurrent phone scopes can overlap, so per-call ownership is not always unique. The Duo trace shows ANE-framework evaluation calls and no target GPU intervals, but its hardware-counter table is empty on that iOS build. This establishes backend invocation, not arithmetic utilization.
Attribution: Fluid Speech Pro by FluidVoice. Built on NVIDIA Parakeet TDT 0.6B v3 and Moondream Parakeet Ultra. This conversion is not endorsed by those publishers.
Model tree for coder543/fluid-speech-pro-glade
Base model
moondream/parakeet-ultra