File size: 6,545 Bytes
883fd3f | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 | ---
license: cc-by-4.0
base_model: FluidVoice-Labs/fluid-speech-pro
base_model_relation: quantized
pipeline_tag: automatic-speech-recognition
language:
- en
- bg
- hr
- cs
- da
- nl
- et
- fi
- fr
- de
- el
- hu
- it
- lv
- lt
- mt
- pl
- pt
- ro
- sk
- sl
- es
- sv
- ru
- uk
tags:
- glade
- core-ai
- parakeet
- speech-recognition
---
# Fluid Speech Pro for Glade
Complete [Fluid Speech Pro](https://huggingface.co/FluidVoice-Labs/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:
```swift
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.
|