fish-s2-pro
Fish Audio S2 Pro, a 4.5B dual-autoregressive text-to-speech model (Qwen3-based semantic decoder, 400M codebook decoder, 44.1 kHz DAC codec) on Tenstorrent Blackhole, with a fish-speech-compatible /v1/tts API (streaming WAV, voice cloning via references) and an OpenAI-compatible /v1/audio/speech endpoint. Model code and weights are under the Fish Audio Research License (non-commercial). The p300x4 profile is declared but was not validated.
Runs on p150 or p300 or p300x2 or p300x4 โ see the serve profiles below.
Packaged and published with tt-model-manager 0.1.0 (manifest schema 5.1).
Quickstart
tt-model pull jashansinghTT/s2-pro-blackhole --with-weights
tt-model serve jashansinghTT/s2-pro-blackhole
pull --with-weights downloads the Docker image and the fishaudio/s2-pro weights at 1de9996b6be38b745688de084d87a5633f714e4e (into your HF cache; they are not in the image). serve starts the model's own HTTP server on port 20000 (or the next free port, if that one is busy); the first start compiles kernels for your device, which takes several minutes, and the server is ready when it logs Application startup complete.
Try it
curl -s localhost:20000/v1/health
curl -s localhost:20000/v1/tts -H 'Content-Type: application/json' \
-d '{"text":"Hello from Tenstorrent.","format":"wav"}' -o hello.wav
curl -s localhost:20000/v1/audio/speech -H 'Content-Type: application/json' \
-d '{"model":"fishaudio/s2-pro","input":"Hello.","voice":"default","response_format":"mp3"}' -o hello.mp3
Voice cloning: POST /v1/references/add (multipart id / audio / text), then pass "reference_id" in /v1/tts.
Serve profiles
One image serves every profile below; pick one with --profile.
| profile | hardware | mesh | max_num_seqs | max_model_len |
|---|---|---|---|---|
p150 (default) |
p150 | P150 | ||
p300 |
p300 | P300 | ||
p300x2 |
p300x2 | P300x2 | ||
p300x4 |
p300x4 | (1, 8) |
Provenance
The exact sources the image was built from โ code/ in this repo is byte-identical to the model code inside the image:
| component | built from |
|---|---|
| tt-metal | a local checkout โ commit not published (dirty tree โ the image includes uncommitted changes) |
code/ digest |
cbbbb8cb61016881 (sha256, first 16 hex digits) |
| built | 2026-09-08T23:26:50+00:00 by tt-model 0.1.0 |