Local inference
Run transcription on Apple Silicon using a model explicitly downloaded during setup.
OUR WORK / Open-source projects
A local speech-to-text API for Apple Silicon Macs, connecting audio uploads to MLX Whisper transcription.
A local application may need speech recognition through a simple interface, with audio processing kept on the same machine.
Novasoft extracted a compact FastAPI service from its local AI work. It wraps the existing MLX Whisper engine, preloads a cached model and returns a JSON transcript from an uploaded audio file. The service integration is NovaSoft’s work; the recognition engine and model are upstream technologies.
It shows how existing local AI can be turned into a simple service other apps can use, without building a new speech model.
You install it on an Apple Silicon Mac, download a Whisper model once with an explicit command, then start the service. It listens only on the local machine. Send an audio file to the transcription endpoint and you get the text back as JSON. FFmpeg handles the audio formats, and you can swap in a different MLX Whisper model with one setting. Installing it and that first model download need internet access.
The service won’t quietly fetch a missing model at startup; it refuses to start until the model you chose is cached. Once running, it works offline.
Version 0.1.0 is an initial developer release, not a hosted product. It handles one transcription at a time, accepts files up to 25 MiB, and has no login, so it belongs on a trusted machine, not the open internet. Audio is deleted after each job and transcripts aren’t stored or logged. There’s no live streaming, no speaker labelling and no promise of accuracy.
It came out of the same work as our local AI infrastructure. The code is MIT licensed; the speech engine and models are separate upstream projects.
EXPLORE THE SOURCE
CAPABILITY IN PRACTICE
Run transcription on Apple Silicon using a model explicitly downloaded during setup.
Send an audio file to the transcription endpoint and receive text as JSON.
Process one inference at a time, enforce a 25 MiB application upload limit and remove temporary audio after normal processing.
Contact Novasoft
Tell us what you need and we’ll tell you honestly whether we can help.