Buddy voice models
Files that the Buddy macOS app (an open-source screen buddy) bundles inside the app at build time. The build downloads them from a fixed revision of this repo and checks each file's SHA-256, so the app never downloads anything at run time.
Each file keeps the license of the work it comes from. They are listed per folder below.
whisper/ โ speech to text
| File | What it is | SHA-256 |
|---|---|---|
ggml-swift-q8_0.bin |
Oriserve/Whisper-Hindi2Hinglish-Swift, converted to the whisper.cpp ggml format and quantized to q8_0 |
8550803dc10fa9f0b3db5cb884f8580c61067b062a67ee169d5789bcd0faec90 |
ggml-silero-v6.2.0.bin |
The Silero VAD v6.2.0 voice activity model in whisper.cpp's ggml format, unchanged from ggml-org/whisper-vad. The server uses it to skip the parts of a recording with no speech, so silence and noise give no text |
2aa269b785eeb53a82983a20501ddf7c1d9c48e33ab63a41391ac6c9f7fb6987 |
whisper-server-macos-arm64.tar.gz |
The whisper-server program from whisper.cpp (commit a630b35c), built for Apple Silicon with Metal, plus the six libraries it loads |
83cbe5b02c8268e3d6e3fe96f8a7dadca6205fa867a5f9d21c8da8bb7897b6f3 |
What changed from the original model: the weights are the same model, stored in a different format. The Hugging Face safetensors weights were converted to ggml with whisper.cpp's conversion script and quantized to 8-bit (q8_0), which makes the file smaller (82 MB). Nothing was retrained or fine-tuned.
How Buddy runs it: whisper-server -l hi -nt -bs 1 -bo 1 -t 4 --vad -vm ggml-silero-v6.2.0.bin, on 127.0.0.1 only. With -l hi this model writes both English and Hinglish speech in Roman script.
Licenses:
- Model: Apache License 2.0, ยฉ Oriserve. Based on openai/whisper-base (MIT, ยฉ OpenAI).
whisper-serverand its libraries: MIT, ยฉ The ggml authors.- Silero VAD model: MIT, ยฉ Silero Team (snakers4/silero-vad);
ggmlconversion by the ggml authors (MIT).
indus/ โ text to speech
Core ML models for Indus, a Hindi and Hinglish text-to-speech voice (the voice "Inaya"), made so that Buddy can speak on a Mac without Python. Buddy's PocketTTS code runs them; the conversion scripts that made them are in the Buddy repository under engine/scripts/indus-coreml/.
What is here
One .tar.gz per part, each unpacking to one folder of the same name:
| File | What it is |
|---|---|
cond_prefill.mlmodelc.tar.gz |
Feeds the text into the language model's memory in one call (float16). |
flowlm_step.mlmodelc.tar.gz |
The language model's generation step (float16). |
flow_decoder_fused.mlmodelc.tar.gz |
Turns the language model's output into an audio code (one Euler step). |
mimi_decoder.mlmodelc.tar.gz |
Kyutai's Mimi decoder, audio code to 24 kHz sound (float32). |
constants_bin.tar.gz |
The word-piece table, the tokenizer, the start embedding and the Inaya voice. |
The weights are the 6-layer Indus model from Indus-Labs/indus-pocket-tts at revision 39899d3c1dcda47a7ef167cd222419feb86abeb9.
What changed
- Converted from PyTorch to Core ML and compiled; the model is split into the pieces above. No training or fine-tuning.
- The Mimi decoder is float32, because in float16 its attention position loses precision after about ten seconds of audio.
- The audio encoder is not here: Indus Labs removed it from the published weights, so the voice cannot be cloned.
- Each part was checked against the PyTorch model on the same inputs before it was packed.
Credit
- Kyutai: Pocket TTS and the Mimi codec, CC BY 4.0. https://huggingface.co/kyutai/pocket-tts
- Indus Labs: indus-pocket-tts, CC BY 4.0, a derivative of Kyutai's Pocket TTS (fine-tuned on Hindi and Hinglish speech with a new tokenizer, distilled from 24 to 6 layers, audio encoder removed). https://huggingface.co/Indus-Labs/indus-pocket-tts
- The runtime code is adapted from FluidAudio and the conversion scripts from mobius (FluidInference, Apache-2.0); pocket-tts (Kyutai, MIT).
License and terms of use
The files in indus/ are licensed under CC BY 4.0 as a derivative of the two works above. The material is provided as is, without warranties.
Kyutai's prohibited-use terms come with the weights: do not use the voice to impersonate anyone or clone a voice without the speaker's consent, and do not use it for fraud or deception. Indus Labs adds: do not mislead listeners about whether they are hearing a machine.
Model tree for adityalingwal82/buddy-voice-models
Base model
openai/whisper-base