wikiAudio发展10|CosyVoice:监督语义 token、流式生成与后训练
7 分钟
0 次观看

10|CosyVoice:监督语义 token、流式生成与后训练

CosyVoice 把文本到语义 token 的语言模型、条件流匹配声学模型与波形生成连接起来。与只追求音频重建的 codec 不同,它通过语音理解任务组织 token 表示,让 token 更适合文本条件生成。本文以 1→2→3 的变化解释各阶段职责,不把当前仓库所有功能倒填进首版。

CosyVoice 1 · CosyVoice 2 · CosyVoice 3 · 官方实现

前端 token、语言模型与声学解码器要一起满足流式约束,才能持续输出可播放音频。 图 1|CosyVoice 2 的监督 tokenizer、语言模型与分块流匹配

图 1|CosyVoice 2 的监督 tokenizer、语言模型与分块流匹配

来源:CosyVoice 2 图 1(截取)

深入学习路径

沿着语音表示、序列协议、分块声学模型和后训练目标阅读;服务流式指标作为独立前置。

子文章阅读目标
01|流式 TTS:分块、上下文缓存与延迟指标分块、上下文缓存与延迟指标
02|监督语义编码:ASR 瓶颈、FSQ 与离散编号ASR 瓶颈、FSQ 与离散编号
03|统一语言模型:混合序列、填充标记与流式推进混合序列、填充标记与流式推进
04|分块声学生成:前瞻、注意力遮罩与流匹配前瞻、注意力遮罩与流匹配
05|CosyVoice 3:多任务表示、可微奖励与发音控制多任务表示、可微奖励与发音控制

各篇包含独立机制解释、张量或状态约定、数值例与验证边界。代码集中入口见 深入机制实验附录。

1. 版本变化发生在什么位置

版本关键机制解决的问题
CosyVoice 1监督语义 token、LLM、CFM让内容生成与声学重建分工
CosyVoice 2FSQ、统一流式/非流式文本语音建模、分块因果 CFM提高 token 利用与在线合成能力
CosyVoice 3多任务监督 tokenizer、DiffRO、发音修补与指令训练在真实复杂文本、语言和风格中增强可控性

截至 2026-09-29,官方 README 给出的模型下载项包含 Fun-CosyVoice3-0.5B-2512。模型名称中的日期、论文发布日期与仓库最新提交属于不同时间字段,应分别记录。

2. FSQ 为何不用最近邻码本查找

Finite Scalar Quantization 把若干连续分量分别压缩、量化到有限整数格点,再组合成离散编号。它与 RVQ 的“逐层量化残差”不同。下式是便于理解的对称范围教学版本:

qj=round⁡(Ktanh⁡hj),V=(2K+1)D.\begin{aligned} q_j&=\operatorname{round}(K\tanh h_j),\\ V&=(2K+1)^D. \end{aligned}
公式符号与约定
符号含义、单位与约定
hjh_j量化前向量第 j 个分量。
jj分量索引,1 至 D。
tanh⁡\tanh把实数压到 −1 与 1 之间。
KK最大整数幅值,本例取 1;实际实现范围按配置决定。
qjq_j量化后的整数分量,本例为 −1、0 或 1。
DD参与组合的量化分量数,本例 2。
VV组合可表示的格点总数;本例 9。
round⁡\operatorname{round}四舍五入类量化操作,具体边界规则由实现决定。

若两维经压缩后为 (0.8,-0.2),取整得到 (1,0);两维各有三种值,共 9 个组合。训练时离散取整仍需要梯度近似,不能把 round 当作普通处处可导算子。

3. CosyVoice 3 的 DiffRO

图 2|DiffRO 在语义 token 上读取可微任务反馈

图 2|DiffRO 在语义 token 上读取可微任务反馈

组件职责与直接评价波形的区别
token-to-text 等任务模型检查 token 是否保留文字/属性信息不必每次完整运行声学生成链路
Gumbel-Softmax 近似让离散选择有可反传近似为梯度提供连续通道
KL 约束限制偏离参考模型的程度防止只追任务奖励而破坏已有能力

这类任务反馈不能等同于真人听感。内容奖励偏重正确读字,音质与身份还需其他任务和验证。CosyVoice 3 同时扩展原始文字与音素/拼音混合输入,让发音干预更明确;训练中出现的控制格式才有可预期含义。

发音修补把“读错之后只能换句子”转化为更明确的输入控制问题。

模型支持流式输出,不代表外层服务没有等待整句、缓存或首包阻塞。

4. 学习与实验路线

先测同一参考的零样本短句,再测数字、多音字、跨语言与长句,最后测输入文字逐步到达的情形。参数与硬件变化应与前后端改动分开记录。下一篇 流式合成与状态给出延迟定义、分块图和诊断方法。

专题导航:TTS 总目录

正在连接 GitHub 评论…