Views
No views yet
fishaudio/s2-pro,
the 4B-parameter flagship Fish Audio S2 text-to-speech model.[laugh], [whispers], [sighs].server-4gb / webui-4gb Docker profiles run S2-Pro on a 4 GB
laptop GPU (measured 3294 MiB peak on a simulated 4096 MiB budget, faster than
realtime on an RTX 4060 Ti).The 4 GB figure comes from the fork's serving code, not from these weights alone. The quantization is what fits ~4.9 GB on disk; getting into 4 GB of VRAM additionally needs the fork's decode-only codec, host-resident embedding table, slicedlm_head, and chunked codec decode. Stock upstream code with this checkpoint will need more VRAM than that.
1git clone https://github.com/scarxity/fish-speech-int4-patch
2cd fish-speech-int4-patch
3
4huggingface-cli download scarxity/fish-speech-s2-pro-nf4 --local-dir checkpoints/s2-pro-nf4
5
6docker compose --profile server-4gb build
7docker compose --profile server-4gb up -dhttp://localhost:8880/v1/tts:{ "text": "Hello, world.", "reference_id": "my-voice" }/v1/audio/speech endpoint and a Gradio WebUI (port 7860)
are included. See the fork's
4 GB guide
for reference-voice setup and long-text handling.bitsandbytes >= 0.43--bnb4 --half| Scheme | bitsandbytes NF4 (normal-float 4-bit) |
| Double quantization | enabled (compress_statistics=True) |
| Compute dtype | fp16 |
| Quantized | the 36-layer slow backbone and the 4-layer depth transformer |
| Effective | ~4.13 bits/weight |
tokenizer_config.json in this repo declares PreTrainedTokenizerFast.
Some S2-Pro copies ship TokenizersBackend, a transformers v5 name that
older loaders reject with UnboundLocalError: tokenizer.