Instructions to use samthehugenerd/Marius-Topo with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Pocket-TTS
How to use samthehugenerd/Marius-Topo with Pocket-TTS:
from pocket_tts import TTSModel import scipy.io.wavfile tts_model = TTSModel.load_model("samthehugenerd/Marius-Topo") voice_state = tts_model.get_state_for_audio_prompt( "hf://kyutai/tts-voices/alba-mackenna/casual.wav" ) audio = tts_model.generate_audio(voice_state, "Hello world, this is a test.") # Audio is a 1D torch tensor containing PCM data. scipy.io.wavfile.write("output.wav", tts_model.sample_rate, audio.numpy()) - Notebooks
- Google Colab
- Kaggle
Marius-Topo
The voice of Topo on an iPhone: Kyutai's Pocket TTS, its english_2026-04 weights, as the four CoreML models FluidAudio loads on the Neural Engine, with the stock marius voice. It is not a new model or a finetune.
It is the English pack in FluidInference/pocket-tts-coreml with one model replaced: the flow decoder runs one integration step a frame where theirs runs eight. The step count is fixed when the decoder is converted, so flow_decoder_fused.mlmodelc is this repository's own; every other file is that repository's v2.1/english at 9174867, byte for byte.
What is here
v2.1/english/, the path FluidAudio reads a pack from:
| file | what |
|---|---|
cond_prefill_ane.mlmodelc |
fills the transformer's cache from the voice and the text, fp16 |
flowlm_step_ane.mlmodelc |
the transformer, one frame a call, fp16 |
flow_decoder_fused.mlmodelc |
noise to a latent frame, one step, fp16 |
mimi_decoder.mlmodelc |
a latent frame to 80 ms of audio at 24 kHz, fp32 |
constants_bin/ |
the text embeddings, the tokenizer, the two start-of-sequence embeddings, and marius.safetensors, the voice's state for these weights |
Only the .ane placement's models and one voice are here, so FluidAudio's other placements and voices will not load from it.
How it was made
The recipe is topo-voice-pack/convert.sh in the author's experiments repository. The flow decoder is converted from Kyutai's languages/english_2026-04 weights in kyutai/pocket-tts-without-voice-cloning, with Kyutai's code at kyutai-labs/pocket-tts@b94db17 and FluidInference's conversion scripts at FluidInference/mobius@210d6b6 (branch feat/pocket-tts-flowlm-ane), --num-steps 1. The other three models, the constants and the voice are FluidInference's files, which are the same weights.
Licence and credit
CC BY 4.0, inherited from Kyutai's weights. Pocket TTS is © Kyutai. The conversion scripts and the three models taken as they are are FluidInference's (Apache-2.0 and CC BY 4.0). marius is a volunteer's voice from Kyutai's Unmute Voice Donation Project (voice-donations/Selfie.wav in kyutai/tts-voices, CC0).
- Downloads last month
- -
Model tree for samthehugenerd/Marius-Topo
Base model
kyutai/pocket-tts