Overview #
Express2Text listens to a short recording of someone speaking English and writes down the words. You send the clip — a voice note, a dictated sentence, a spoken command — and get back plain lower-case text, with no punctuation and numbers as the words that were said. Use it when an app needs the words in a recording and should not send that recording to a third-party service.
Express2Text is a 20M-parameter conformer acoustic model with a connectionist temporal classification (CTC) head, trained from scratch: no pre-trained weights, no external speech model, only open data. It reads the recording as 80-bin log-mel frames, subsamples them four times, passes them through twelve conformer blocks and emits, for every 40 ms of audio, a distribution over 29 symbols — the letters a to z, the space, the apostrophe and the CTC blank. Greedy decoding collapses that sequence into the transcript.
It is the Default and only member of the Express series' Transcription family. Its siblings go the other way: Express Voice turns text into speech and Express Cue turns a description into a sound cue. All three share the audio quota bucket, and Express2Text runs on the same warm GPU container as Express Voice.
Intended use #
- Transcribing short voice notes, dictated lines and spoken commands in English, recorded close to the microphone in a quiet room.
- Turning a spoken reply into text that a responder or a form can use, where the words matter more than the punctuation.
- Keeping audio inside an organisation's own hosting, on the shared service or a dedicated one, instead of a third-party transcription API.
Out of scope #
- Languages other than English, and accents or vocabulary far from read audiobook speech.
- Long recordings, meetings, several speakers at once, music, and audio with heavy noise or reverberation.
- Punctuation, casing, numerals as digits, timestamps, speaker labels or confidence scores: the output is bare lower-case text.
- Any use where a mis-heard word could hurt someone — medical, legal, emergency or safety-critical dictation.
Choose Express2Text when #
- The clip is short, English and reasonably clean, and plain lower-case text is what you need.
- You need speech turned into text without leaving the Falcon API and its hosting.
- You need the reverse — text spoken aloud — choose Express Voice on
/v1/speak.
Specification #
| Parameters | 20,235,597 |
|---|---|
| Kind | Conformer encoder with a connectionist temporal classification (CTC) head |
| Input features | 80-bin log-mel filterbank, 25 ms window, 10 ms hop, per-utterance mean and variance normalisation |
| Subsampling | Two 3×3 stride-2 convolutions (4×, 40 ms per frame) then a linear layer to 256 |
| Blocks | 12 conformer blocks: half-step feed-forward (×4), 4-head self-attention with a learned relative-position bias (±512 frames), depthwise convolution (kernel 31, batch norm, SiLU), half-step feed-forward, LayerNorm |
| Vocabulary | 29 symbols: CTC blank, space, apostrophe and a–z |
| Decoding | Greedy CTC (best symbol per frame, repeats collapsed, blanks dropped); no language model, no beam search |
| Training | 4 passes over 960 h (47,920 steps of ≤ 30,000 frames), AdamW, lr 2e-3 with warm-up and cosine decay, SpecAugment, 3-way speed perturbation |
| Training platform | Vertex AI, 1× NVIDIA A100 40 GB, bf16 autocast |
Try it #
- You send
- A four-second recording of someone reading “your table is ready, please make your way to the front desk”.
- You get back
- The text “your table is ready please make your way to the front desk”, in lower case with no punctuation.
The same exchange as the API sees it:
{
"audio": "data:audio/wav;base64,UklGRiQAAABXQVZFZm10IBAAAAABAAEAgD4AAAB9AAACABAAZGF0YQ…"
}{
"ok": true,
"engine": "express2text",
"text": "your table is ready please make your way to the front desk",
"duration_seconds": 3.52
}Limits & safety #
It hears only what the microphone captured, and it was trained only on clean, read English audiobooks.
- English only, and best on read speech: spontaneous, accented, fast or overlapping speech is transcribed less reliably, sometimes badly.
- No punctuation, casing, digits or speaker labels: the output is a bare stream of lower-case words.
- No confidence score: a misheard word looks exactly like a correct one, and a clip the model cannot follow can come back empty rather than flagged.
- Sixty-second clips at most: longer audio is cut, and a clip with long silences or music in it produces fragments.
- Not a substitute for a human transcript in any medical, legal, emergency or safety-critical setting, and not a speaker-identification or voice-verification system.
Related models #
Express Voice
Turns a short line of English text into speech, in a choice of clear male and female voices.
Text to speech in seven English voices, male and female: two SpeechT5 fine-tunes
Express Cue
Describe a sound in words and get a short audio clip back.
Renders a short sound cue from a text description through a deterministic synthesis engine
Latest versions #
| Version | Date | Status | Note |
|---|---|---|---|
| 1.0.0 | Released | First version: trained from scratch on LibriSpeech in one 3.2-hour A100 job (4 passes); 12.1 % / 25.5 % word error on test-clean / test-other with greedy decoding. |
Read the full documentation
Nine chapters: architecture, inputs and outputs, training, evaluation, API, runtime, limits and versions.