Fish Audio 的多角色语音合成模型,10 月 23 日已经收录:一段文本最多分给 16 个说话人,支持声音克隆,可以用 [sighs] 这类标签和自然语言控制语气,还能在上一版音频的基础上改词重录。这次重新收录,是因为主仓库的权重 10 月 29 日整体换了一版。
上升分 111 · 点赞 1127 · 下载量 31923
理由
- 新内容:10 月 29 日主仓库上传了一整套新权重,分片从 8 个变成 15 个。上传时附带的说明写着这是“RL 第 100 轮迭代”的权重,FP8 格式和文件布局不变,这句说明随后被删掉了。10 月 29 日之前下载的,要重新拉取才是新版。
- 许可补正:10 月 23 日本栏目写过“LICENSE.md 打不开,商用条款无法核对”。其实仓库里的 LICENSE 文件能读,是 Fish Audio 社区许可 1.0:研究和非商用免费;年收入低于 50 万美元的个人或公司可以免费商用;对外提供 TTS API 或托管服务,不论规模都要另签协议。
- 技术报告(arXiv 2610.18010)称,强化学习阶段只用一个学出来的人类偏好模型做奖励;推理引擎在一张 H200 上单路每秒解码 271 帧,Fish Audio S2 是 177 帧(均为官方称)。
用法
- SGLang-Omni:git clone sgl-project/sglang-omni,uv pip install --prerelease=allow -e ".[fishaudio]",再 sgl-omni serve --model-path fishaudio/drama-3 --port 8000。也可以用 vLLM-Omni:vllm serve fishaudio/drama-3 --omni --port 8091。
- 调用 /v1/tts:references 里传参考音频和逐字稿来克隆声音;文本里用 <|speaker:0|> 到 <|speaker:15|> 分配角色,在要出声的位置插入 [sighs]、[laughs] 等标签。改词重录时把旧文本放进 previous_takes,可以连着改好几次。
- 并发多的时候,官方建议把声码器放到第二张 GPU 上:256 路并发时吞吐约高 72%,首包延迟中位数低 37%。
风险
- 换权重没有写更新说明,也没有新旧版对比,改了什么、好在哪里官方都没说;本栏目没有听过新旧版样例。
- 模型卡开头仍然链接到不存在的 LICENSE.md,条款要看仓库里的 LICENSE;托管 / API 服务,以及年收入超过 50 万美元的商用,都要另签协议。
- 主权重约 39.6 GB(专家层是 FP8),官方测速都在 H200 上,消费级显卡能不能跑没给;暂时没有 ComfyUI 支持。