phonon-31m English for Compute Flow

phonon-31m-en packaged for Arm's Compute Flow. It runs on the stock tts:pocket-tts brick, with no code changes, since Phonon has the same architecture as Pocket TTS. It is the same model; only the file format differs.

For the Phonon runtime (command line, Python, browser, iOS, Android), use gradium/phonon-31m-en. For llama.cpp and audio.cpp, use gradium/phonon-31m-en-llamacpp and gradium/phonon-31m-en-audiocpp.

Files

File Runner What it holds
phonon_manifest.json The Compute Flow manifest for the PocketTTS brick.
tokenizer.model SentencePiece The tokenizer, the same as the original model's.
text_encoder.onnx ONNX Runtime The text embedding table.
flowlm.q8_0.gguf llama.cpp The flow-matching transformer, 8-bit (Q8_0).
simple_mlpada_ln.onnx ONNX Runtime The flow head and the end-of-speech head.
latent_proj.onnx ONNX Runtime The projection from one generated latent to the next frame's input.
mimi_decoder.tflite LiteRT The Mimi decoder, streaming, at full precision (f32).
assets/default.npy The default voice.
assets/bos_embedding.npy The input of the first generated frame.
SHA256SUMS Checksums of every file above.

Quickstart

Once phonon-31m-en is listed in the brick's models:

compute-flow model install tts:pocket-tts phonon-31m-en
compute-flow build native
./build_native/tts_cli -m @manifest/pocket-tts/phonon-31m-en/phonon_manifest.json \
  -p "Hello from Phonon." -t 1

Until then, download this repository and pass the manifest's path:

hf download gradium/phonon-31m-en-compute-flow --local-dir phonon-31m-en
(cd phonon-31m-en && shasum -a 256 -c SHA256SUMS)
./build_native/tts_cli -m phonon-31m-en/phonon_manifest.json -p "Hello from Phonon." -t 1

Good to know

  • Text: the brick sends the text to the tokenizer as written. Write numbers, symbols and abbreviations out in words. The Phonon runtime does this for you with --lang en.
  • Voice: the package has the model's default voice only.
  • Sampling: temperature 0.3, the Phonon runtime's default (rng_std in the manifest is its square root). The end-of-speech threshold is the model's own, +4.0.
  • Length: the manifest allows up to 500 frames, 40 seconds of audio, per request.

How it differs from the Phonon runtime

The package was converted from the original weights and checked part by part against the Phonon runtime, on the same inputs. Four things differ:

  • llama.cpp's gptneox architecture only has the tanh approximation of GELU, while Phonon uses the exact one. The generated latents move very slightly.
  • Phonon's conditioners (number of speakers, duration) are folded into a constant bias on every generated frame's input, at their default values. This is exact for those values, and they cannot be changed.
  • The brick keeps two more frames after the end of speech than the Phonon runtime does, and draws its noise from its own generator, so the audio is not sample-identical.
  • The brick feeds the voice prompt to the model again on every request, so the first audio comes later than in the Phonon runtime, which conditions on a voice once.

License

Apache 2.0, like phonon-31m-en. Phonon builds on Pocket TTS and the Mimi codec, developed by Kyutai.

All Phonon models ยท Runtime on GitHub

Downloads last month
-
GGUF
Model size
18.9M params
Architecture
gptneox
Hardware compatibility
Log In to add your hardware

8-bit

Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for gradium/phonon-31m-en-compute-flow

Quantized
(16)
this model