Speech Runtime Lab v0 is a multilingual listening-quality benchmark lab for testing VAD and ASR/STT behavior across English, Hindi, and Hinglish.
Implemented so far:
- project definition
- multilingual ground-truth JSON
- metrics spec
- pure transcript metrics utilities
- VAD summary utility
- TypeScript validation harness
- browser recording UI skeleton
- local Silero browser VAD summary
- local OpenAI ASR transcription path
- server-side WER/CER metrics against selected ground truth
Not implemented yet:
- telephony
npm installCopy the example environment file:
cp .env.example .envSet:
OPENAI_API_KEY=your_api_key_here
OPENAI_TRANSCRIBE_MODEL=gpt-4o-transcribe
API_PORT=8787Never commit .env.
npm run typecheck
npm run example:metrics
npm run test:metrics
npm test
npm run buildRun both the local API server and browser UI:
npm run devThe UI runs on http://127.0.0.1:5173/.
The local API server runs on http://127.0.0.1:8787/.
The browser sends recorded audio to the local API server. The OpenAI API key stays server-side.
The dashboard supports selecting one of three OpenAI transcription models:
gpt-4o-transcribegpt-4o-mini-transcribewhisper-1
The selected model is sent to the local API server and validated against an allowlist before calling OpenAI.
Build the UI:
npm run buildPreview the production build:
npm run previewThe current UI supports ground-truth selection, local browser recording, local Silero browser VAD summary, and server-side OpenAI transcription with WER/CER metrics against the selected ground truth. It does not run telephony or streaming STT yet.
- Install dependencies:
npm install- Configure environment:
cp .env.example .envSet:
OPENAI_API_KEY=your_api_key_here
OPENAI_TRANSCRIBE_MODEL=gpt-4o-transcribe
API_PORT=8787- Run the lab:
npm run dev- Open:
http://127.0.0.1:5173/- In the UI:
- select a ground truth
- choose VAD mode:
noneorsilero - record audio
- stop recording
- review VAD summary if using
silero - click
Transcribe recording - review ASR transcript
- review WER, CER, word accuracy, and token diff
- browser recording
- ground-truth selection
- local Silero browser VAD summary
- server-side OpenAI ASR
- WER/CER/word accuracy metrics
- English, Hindi, and Hinglish ground truths
- telephony
- LiveKit
- Twilio
- streaming STT
- database
- raw audio storage
- production deployment
docs/speech_runtime_lab_v0.mddocs/speech_runtime_lab_metrics.mdresearch/speech-runtime-lab/ground_truths.v0.json