关键要点
WSYue-TTS 是西北工业大学 ASLP Lab 联合香港科技大学、中国电信 AI Lab 发布的粤语专用 TTS 模型,基于 CosyVoice2 架构,使用 21,800 小时粤语语料(WenetSpeech-Yue)训练,是目前最大的开源粤语 TTS 专用模型。
- 模型:
ASLP-lab/Cosyvoice2-Yue(base)+ASLP-lab/Cosyvoice2-Yue-ZoengJyutGaai(精调)- 底层架构:CosyVoice2(Apache 2.0)
- 训练数据:WenetSpeech-Yue 21,800 小时粤语(CC BY-NC 4.0,非商用)
- 商用风险:训练数据许可证为非商用,模型权重商用存在法律灰区
- HuggingFace:ASLP-lab/WSYue-TTS
- GitHub:ASLP-lab/WenetSpeech-Yue
| 项目 | 内容 |
|---|---|
| 发布方 | 西北工业大学 ASLP Lab + 香港科技大学 + 中国电信 AI Lab + AISHELL |
| 论文 | WenetSpeech-Yue (AAAI 2026),arXiv:2509.03959 |
| 发布时间 | 2025/09 |
| 基座模型 | CosyVoice2(阿里通义 FunAudioLLM) |
| 训练数据 | WenetSpeech-Yue 21,800 小时粤语语音 |
| 模型数量 | 2 个(base + ZoengJyutGaai 精调版) |
| 推理 API | CosyVoice2.inference_instruct2(text, instruct, prompt_wav) |
| 模型 | HuggingFace ID | 说明 |
|---|---|---|
| Base 版 | ASLP-lab/Cosyvoice2-Yue |
基础粤语 TTS,直接用 WenetSpeech-Yue 训练 |
| 精调版 | ASLP-lab/Cosyvoice2-Yue-ZoengJyutGaai |
"ZoengJyutGaai"(粤语界)精调版,更自然的粤语发音 |
精调版名字取自"粤语界"的粤拼(zoeng jyut gaai),表明团队对粤语质量的自信。
| 维度 | CosyVoice3 (Fun-CosyVoice3-0.5B) | WSYue-TTS (Cosyvoice2-Yue) |
|---|---|---|
| 开发方 | 阿里通义实验室 | 西工大 + 港科大 + 电信 AI |
| 架构 | CosyVoice3(更新一代) | CosyVoice2(前一代) |
| 训练数据 | 多语言混合(普通话为主) | 21,800 小时纯粤语 |
| 粤语能力 | 靠 instruct 指令"引导" | 专门用粤语数据微调 |
| 文本处理 | 直接输入 | 内置 OpenCC 简→繁转换 |
| 参考音频 | 通用示例 | 自带粤语参考音频 |
| 实测粤语效果 | "能听到但不地道" | 预期显著更地道(待验证) |
| 代码许可证 | Apache 2.0 | MIT(代码) |
| 模型许可证 | Apache 2.0 | 受训练数据 CC BY-NC 4.0 约束 |
| 商用友好度 | ✅ 完全可商用 | ⚠️ 存在法律灰区 |
| 层级 | 组件 | 许可证 | 商用 |
|---|---|---|---|
| 1 | CosyVoice2 基座代码 | Apache 2.0 | ✅ |
| 2 | CosyVoice2 模型权重 | Apache 2.0 | ✅ |
| 3 | WenetSpeech-Yue 训练数据 | CC BY-NC 4.0 | ❌ |
| 4 | WenetSpeech-Yue 代码 | MIT | ✅ |
| 5 | WSYue-TTS 微调模型权重 | 未明确声明,但受训练数据约束 | ⚠️ |
代码层面:✅ 无风险 - CosyVoice2 代码为 Apache 2.0,WSYue-TTS 推理代码仓库为 MIT,均可商用。
训练数据层面:❌ 非商用 - WenetSpeech-Yue 数据集采用 CC BY-NC 4.0(署名-非商业性使用),明确禁止商用。 - 来源:第三方引用确认(如 xjyutping-py 项目标注 "WenetSpeech-Yue (CC BY-NC 4.0)")。
模型权重层面:⚠️ 法律灰区 - WSYue-TTS 模型权重用 CC BY-NC 4.0 数据训练而来,HuggingFace 模型卡未明确标注权重许可证。 - 按一般法律理解:用非商用数据训练的模型,其权重可能继承非商用限制,但这在法律上尚无明确判例。 - CosyVoice2 基座本身是 Apache 2.0,但微调后的权重已不再是原始 Apache 2.0 权重。
| 场景 | 是否可行 |
|---|---|
| 学术研究、个人体验 | ✅ 完全可行 |
| 内部工具、非商业项目 | ✅ 可行 |
| 商业产品集成 | ⚠️ 不建议,存在许可证风险 |
| 商业产品中使用 CosyVoice3 原版(非粤语微调版) | ✅ 可行(Apache 2.0) |
WSYue-TTS 的部署与 CosyVoice3 几乎相同(同仓库结构、同 API),已有 conda 环境可直接复用:
# 下载模型(约 2-3 分钟)
from huggingface_hub import snapshot_download
snapshot_download('ASLP-lab/WSYue-TTS', local_dir='pretrained_models/WSYue-TTS')
# 推理代码
import sys
sys.path.append('third_party/Matcha-TTS')
from cosyvoice.cli.cosyvoice import CosyVoice2
from cosyvoice.utils.file_utils import load_wav
import torchaudio, opencc
converter = opencc.OpenCC('s2t.json')
cosyvoice = CosyVoice2('ASLP-lab/Cosyvoice2-Yue',
load_jit=False, load_trt=False, load_vllm=False, fp16=False)
prompt_speech = load_wav('./asset/sg_017_090.wav', 16000)
text = converter.convert('收到朋友从远方寄嚟嘅生日礼物,嗰份意外嘅惊喜令我心入面充满咗快乐。')
for i, j in enumerate(cosyvoice.inference_instruct2(text, '用粤语说这句话', prompt_speech, stream=False)):
torchaudio.save(f'yue_{i}.wav', j['tts_speech'], cosyvoice.sample_rate)
注意:WSYue-TTS 仓库自带参考音频
asset/sg_017_090.wav,与 CosyVoice3 仓库的音频不同。
| 方案 | 效果 | 商用 | 部署成本 |
|---|---|---|---|
| Edge-TTS (zh-HK) | 较好(hiu-map返粤语音系) | ✅ 需联网 | 极低(pip install) |
| CosyVoice3 instruct | 一般(不地道) | ✅ Apache 2.0 | 高(~12GB) |
| WSYue-TTS | 预期最好(粤语专用) | ⚠️ 非商用数据训练 | 高(~12GB) |
| 资源 | 链接 |
|---|---|
| 论文 | arXiv:2509.03959 |
| 模型下载 | HuggingFace ASLP-lab/WSYue-TTS |
| 数据集 | HuggingFace WenetSpeech-Yue |
| GitHub 仓库 | ASLP-lab/WenetSpeech-Yue |
| 在线 Demo | HuggingFace Space |
| 联系团队 | lhli@mail.nwpu.edu.cn / gzhao@mail.nwpu.edu.cn |