Xenova's Whisper Tiny Brings Free Speech Recognition to Any Browser
A 78 MB ONNX port of OpenAI's Whisper Tiny English model is quietly powering hundreds of browser-based transcription apps, no server required.
- Xenova/whisper-tiny.en is an ONNX port of OpenAI's Whisper Tiny English for Transformers.js
- 824,000+ monthly downloads and 79+ Hugging Face Spaces built on top of it
- Runs fully in the browser via WebAssembly, no server or API key required
- Just 78 MB quantized, Apache 2.0 licensed, works on CPU or WebGPU
- Supports chunk-level and word-level timestamps out of the box
- Reference implementation available at xenova/whisper-web
How Whisper Tiny Reached the Browser
The Hugging Face page for Xenova/whisper-tiny.en reports more than 824,000 monthly downloads and at least 79 public Spaces using the model. The repository packages OpenAI’s smallest English Whisper checkpoint as ONNX files, allowing Transformers.js to run speech recognition inside a browser without a Python service.
Whisper, packed for JavaScript
The conversion preserves the original model’s architecture and learned parameters. Whisper Tiny English remains a roughly 39-million-parameter encoder-decoder transformer trained for English speech recognition. The repository changes the deployment format so ONNX Runtime Web can execute the model through WebAssembly or, where supported, WebGPU.
ONNX stores a neural network as a portable computation graph plus its weights. A compatible runtime can load that graph without PyTorch, which gives JavaScript applications a practical route to local inference.
| Detail | What developers get |
|---|---|
| Base model | OpenAI Whisper Tiny English |
| Runtime | ONNX Runtime Web through WebAssembly, with WebGPU support on compatible browsers |
| Typical download | Approximately 75 to 80 MB for commonly used quantized artifacts |
| Language | English only |
| License | Apache 2.0, including commercial use subject to applicable dependency and data terms |
| Reference app | The whisper-web demo |
The shortest path to a transcript
A current Transformers.js project needs one package and a pipeline configured for automatic speech recognition:
npm install @huggingface/transformersimport { pipeline } from '@huggingface/transformers';
const transcriber = await pipeline(
'automatic-speech-recognition',
'Xenova/whisper-tiny.en'
);
const audio =
'https://huggingface.co/datasets/Xenova/transformers.js-docs/resolve/main/jfk.wav';
const result = await transcriber(audio);
console.log(result.text);This story is for Pro members
You've reached the end of the free preview. Upgrade to AlphaSignal Pro to read the full article - and everything else behind the paywall.