资料摘要:SwanVoice
ByteDance 与浙江大学提出的 1–4 说话人长篇 zero-shot TTS 系统:它把整段对话作为一次非自回归生成任务,以 25 Hz 波形 VAE、raw-text tokenizer、speaker-turn 条件和 2B flow-matching DiT 联合建模,再用音素准确率与说话人相似度奖励做 DiffusionNFT 后训练。优势集中在长篇表现力与段落层次,内容准确率和相近音色下的轮次稳定性仍是主要短板。
🔒 SwanVoice 原始论文
官方项目页与音频 Demo · arXiv · Hugging Face Paper
- 整段生成而非逐轮拼接:SwanVoice 同时看到完整文本、speaker-turn 序列和参考语音,在一个 flow ODE 中生成整段 1–4 人对话,目标是保持房间响应、背景、音量、停顿和情绪连续性。
- 数据标注决定轮次与韵律上限:SwanData-Speech 从 259 万小时原始中英语音出发,依次做人声分离、diarization、ASR、声学停顿驱动的标点校正、质量过滤和表现力过滤;另用 RobustMegaTTS3 合成稀有发音、多音字和中英 code-switching 难例。
- 低帧率连续声学空间:24 kHz 波形由 VAE 压缩到 25 Hz 连续 latent;下游 DiT 不生成离散 codec token,而是在连续潜空间预测 flow velocity。
- raw text + 显式轮次条件:CosyVoice BPE tokenizer 直接吃原文,增加
<|sp|>、1,549 个拼音音节和<S{id}>…</S{id}>轮次标签;文本 token 与同长度 speaker-turn ID 一起对齐到声学 latent。 - 三阶段 curriculum:约 200 万小时独白预训练 → 独白与人工拼接的 2–4 人对话混合训练 → 独白与真实影视/播客对话 SFT;每阶段都保留独白数据,避免对话能力覆盖独白能力。
- DiffusionNFT 后训练:对同一 prompt 采多个候选,用 phone-level WER 奖励与说话人 embedding 余弦相似度构造组内优势;只需最终干净样本与黑盒求解器,不必保存完整采样轨迹。
- 表现力领先但非全面领先:作者体系内的 SwanBench-Speech 上,SwanVoice 的独白/对话 Richness 为 3.81/3.62、Hierarchy 为 3.62/3.71,均高于表中开源基线;但独白 Content Error 为 0.172,差于开源平均 0.120。
- 当前仅论文与 Demo:截至 2026-08-15,官方项目页可试听;Hugging Face 未关联 model、dataset 或 Space,论文页也未登记 GitHub repo,不能称为已开源或可复现训练。
1. 问题定义:长篇对话是一个场景,不是若干独白片段
Section titled “1. 问题定义:长篇对话是一个场景,不是若干独白片段”常见方案按 speaker turn 分别调用独白 TTS,再把波形拼起来。这会把每轮都当成独立录音:相邻片段可能在混响、背景、说话强度、停顿节奏和情绪走向上突变。SwanVoice 因而把完整对话作为一次 full-context generation,并要求模型同时解决:
- 相同说话人跨轮次保持音色;
- 相近声音仍能按标签正确切换;
- 整段共享声学环境与情绪上下文;
- 加入多说话人数据后不牺牲独白质量;
- 长文本中减少跳词、重复和发音漂移。
论文选择非自回归 flow-DiT,而不是 language-model-style AR。理由是完整文本与轮次条件可一次进入模型,减少逐 token/逐 codec frame 解码延迟,也避开长序列 AR 的 exposure bias;代价是时长与对齐必须由数据标注、显式条件和早期 flow 步共同建立。
2. SwanData-Speech:从野生长录音到可训练的独白/对话子集
Section titled “2. SwanData-Speech:从野生长录音到可训练的独白/对话子集”原始集合约 259 万小时,其中中文约 224 万小时、英文约 35 万小时,主要来自内部资源并混入部分开源数据。处理链如下:
- Ultimate Vocal Remover 分离人声;
- 3D-Speaker 的 FSMN VAD、CAM++ embedding 与谱聚类完成 diarization;
- 同说话人相邻片段在静音不超过 2 秒时合并,单段最长 60 秒;
- 对话窗口最多 120 秒、含 2–4 人,任一静音不超过 2 秒;
- SenseVoice-Small 做中英 ASR 和语言识别,关闭 ITN;
- Swan Forced Aligner 按真实声学停顿重写标点;
- DNSMOS、SQUIM-PESQ/STOI 过滤质量,emotion2vec+ 挑选高置信非中性表达。
停顿标注是最具体、也最可复用的工程细节:
| 相邻字符间隔 | 文本标记 | ||
|---|---|---|---|
< 0.08 s |
忽略 | ||
0.08–0.18 s |
`< | sp | >` |
0.18–0.45 s |
逗号 | ||
> 0.45 s |
句号、感叹号或问号;默认句号 |
若文本有标点但音频无停顿,则删除;音频有停顿而文本无标点,则插入。这里的标点不是“语义写作规范”,而是声学 pause control 的监督信号。
3. RobustMegaTTS3:给 raw-text 模型补发音长尾
Section titled “3. RobustMegaTTS3:给 raw-text 模型补发音长尾”直接使用 raw text 保留语义和可编辑性,但稀有字、多音字、英文异读与中英混读在爬取语料中很稀疏。作者收集 GCIDE 词表与《通用规范汉字表》一级/二级字,调用 Qwen3-235B-A22B-Instruct-2507 为每项生成 5 个例句;另生成 2 万条中文难例、2 万条英文难例和 10 万条覆盖 13 类场景/角色的中英 code-switching 文本。
这些文本由基于音素发音的 MegaTTS 3 合成,形成 RobustMegaTTS3。它不是 SwanVoice 的真实对话数据,而是向独白预训练阶段注入字典级发音知识,降低 raw-text 路线的长尾稀疏性。
4. Swan Forced Aligner:把“词—空白—词”结构显式建模
Section titled “4. Swan Forced Aligner:把“词—空白—词”结构显式建模”附录给出了一个约 400M 参数的 transcript-conditioned word-level aligner。文本侧在每个 lexical word 后插入 <|wbd|>,把一个词可能对应的多个 BPE piece 汇聚成 word anchor;对齐状态采用交错拓扑:
其中内部 blank 不共享一个固定向量,而由相邻词状态预测 gap-specific residual。路径只允许 stay、前进一步和跨过中间 blank 进入下一词三类单调转移;训练同时使用 frame-level CE、CRF path loss、word/blank duration loss 与 monotonicity regularization,推理默认 Viterbi,也支持 posterior-based decoding。
独立 8 万小时对齐训练集上,Swan Forced Aligner 的 AAS 为中文 45.19 ms、LibriSpeech-Clean 27.67 ms、LibriSpeech-Others 29.92 ms。作者称前两项是已公开 checkpoint 中最好结果;但训练语料和 SwanVoice 主数据都主要为内部资源,外部复现仍受限。
5. SwanVoice:25 Hz VAE + speaker-turn flow-DiT
Section titled “5. SwanVoice:25 Hz VAE + speaker-turn flow-DiT”VAE 编码器把波形压到 25 latent frames/s,HiFi-GAN 系解码器配合 MPD、MSD、MRD 对抗判别器重建波形:
文本侧使用 CosyVoice BPE tokenizer。中文基本保持一字一 token,并加入 1,549 个拼音组合;训练时随机把部分汉字替换成拼音,推理时可用拼音 hint 指定多音字或方言读法。每个文本 token 还有同长度 speaker-turn ID,来自 <S{id}>…</S{id}> 包围的轮次区间。
训练样本的完整 VAE latent 被随机切成连续的 reference 与 target;对话样本要求 reference 至少含每位说话人的短片段。参考 latent 保持干净,目标 latent 加高斯噪声。文本和轮次序列先经轻量 Transformer,再与声学表示交互;主干使用 self-attention、RMSNorm 和 AdaLN 全局适配器预测直线 flow 的 velocity:
6. 三阶段监督训练:逐步增加对话真实性
Section titled “6. 三阶段监督训练:逐步增加对话真实性”| 阶段 | 数据与算力 | 目标 |
|---|---|---|
| 独白预训练 | 约 200 万小时中英语音;64×A100,500k steps | 先建立音质、发音和文本—语音对齐 |
| 混合对话训练 | 独白 + 拼接的 2–4 人对话;32×A100,600k steps | 在低噪声轮次结构中学 speaker switching |
| 真实对话 SFT | 独白 + 影视/电视剧/播客真实对话;32×A100,300k steps | 学共享环境、真实停顿与情绪连续性 |
这个 curriculum 的关键不是简单“先易后难”,而是把 diarization error 与对话高阶一致性拆开:先用拼接数据教清楚轮次归属,再让真实对话补声学场景和情绪;独白数据始终留在 mixture 中作能力保护。
7. DiffusionNFT:终点奖励驱动的 flow 后训练
Section titled “7. DiffusionNFT:终点奖励驱动的 flow 后训练”SFT 后仍会错读难词或丢失参考音色。作者收集 3,000 条真人对话,按同一条件采样多个候选,奖励由两部分等权组成:
phone reward 在去掉标点/静音后把音素与声调合成 token,针对中文多音字与声调错误;speaker reward 使用冻结 speaker encoder。组内均值构成 baseline,裁剪 advantage 再映射成正/隐式负分支的软权重,最终对生成区域做 masked denoising loss,并用冻结 reference policy 的速度预测作 L2 正则限制漂移。
论文明确说明:奖励只直接优化发音和 speaker similarity,没有直接优化表现力、混响或录音环境一致性;后两者的改善只是定性观察,不能作为已建立的奖励因果结论。详见 DiffusionNFT(前向过程在线扩散强化学习)。
8. 推理:内容与参考声学信息分层 CFG
Section titled “8. 推理:内容与参考声学信息分层 CFG”参考语音先由 SenseVoice-Small 转写成 speaker-specific reference text;每位说话人的目标时长由参考语速启发式估计。采样使用 sway schedule,把更多计算放在早期,先确定粗粒度轮廓和文本对齐。
Staircase CFG 同时计算空条件、text-only 与 full condition 三个 velocity:
第一层主要强化内容与轮次,第二层再强化参考音色和风格,因此可在不改文本 guidance 的前提下调高 reference influence。
- 题名:SwanVoice: Expressive Long-Form Zero-Shot Speech Synthesis for Both Monologue and Dialogue
- 作者:Ruiqi Li, Yu Zhang, Changhao Pan, Ke Lei, Xiang Yin, Cheng Yang(ByteDance;Zhejiang University)
- 版本:arXiv:2605.30993v1,2026-05-29,22 页,Technical Report
- PDF SHA-256:
e7150f87f67ec637daf34de3094e98693e5b69709d1a2a262c2881431a18309a - 内容清单:Figure 1–3、Table 1–3、编号公式(1)–(14)、Appendix A–C 与 66 条参考文献
关键实验结果
Section titled “关键实验结果”| 任务 | SwanVoice 结果 | 证据边界 |
|---|---|---|
| Zero-shot 独白 | Timbre 0.93;Content Error 0.172;Prosody 3.56;Richness 3.81;Hierarchy 3.62 | 表现力两项第一,但内容错误率差于开源平均 0.120,也差于多款基线 |
| Zero-shot 对话 | Timbre 0.92;Content Error 0.145;Prosody 3.70;Richness 3.62;Hierarchy 3.71 | 表现力两项第一;内容错误率优于平均 0.180,但不及 SoulX-Podcast 0.101 等最佳基线 |
| Swan Forced Aligner | AAS 45.19 / 27.67 / 29.92 ms | 中文、LibriSpeech-Clean、LibriSpeech-Others;最后一项略差于 Qwen3 Forced Aligner 29.74 ms |
局限性与批判性判断
Section titled “局限性与批判性判断”- 没有消融证据拆开各组件贡献:主表只比较系统级结果,没有分别量化 pause correction、RobustMegaTTS3、三阶段 curriculum、staircase CFG 与 DiffusionNFT 对最终指标的独立增益。
- 表现力评估依赖同生态基准与自动 judge:SwanBench-Speech 来自相近作者团队;Richness/Hierarchy 使用 Gemini-3-Pro 按固定 rubric 打分,虽然做了系统匿名和随机顺序,但不能替代跨团队公开基准与大规模人类听测。
- 内部数据主导,复现性有限:259 万小时原始集合、约 200 万小时独白训练集和真实影视/播客对话都以内部资源为主;论文没有公开训练样本、过滤阈值全集或可运行数据管线。
- 内容准确率与轮次鲁棒性仍弱:作者明确承认难词发音仍落后于最佳基线;相近音色或很短 prompt 下仍可能 speaker switching 失败。
- 后训练奖励覆盖不完整:只对 phone WER 与音色相似度给直接奖励,表现力、环境一致性和停顿结构没有进入 reward,当前不能确认 RL 是否真正改善这些维度。
开放性状态(2026-08-15 实时核查)
Section titled “开放性状态(2026-08-15 实时核查)”- SwanAIGC 项目页提供论文入口与 1–4 说话人音频 Demo。
- Hugging Face paper API 未登记 GitHub repo;按 arXiv ID 查询为 0 个关联 model、0 个 dataset、0 个 Space。
- 当前准确口径是 论文与 Demo 已公开,代码、checkpoint、SwanData-Speech 和训练脚本未公开。
- 音频生成 — 零样本与长篇对话 TTS 路线定位
- DiT(Diffusion Transformer) · 条件流匹配(CFM) — 非自回归连续声学生成骨干
- VAE(变分自编码器) — 25 Hz 波形连续 latent 前端
- CFG(无分类器引导) — text/reference 两级 staircase guidance
- DiffusionNFT(前向过程在线扩散强化学习) — 终点奖励与隐式正负分支的在线后训练
- 资料摘要:SwanTale — 同团队后续统一 instruct/zero-shot 语音与音频生成系统
- 资料摘要:DiTAR — LM + 局部 DiT 的 continuous patch AR 路线
- 资料摘要:LongCat-AudioDiT — 纯 NAR waveform-latent DiT 对照
- 资料摘要:CosyVoice 3 — raw-text/tokenizer、DiT/CFM 与语音后训练的相邻路线
- 资料摘要:MOSS-TTS — 离散 token + AR 的多说话人长篇生成对照
- Wiki 目录