MOSS-TTSD:革新对话语音生成,打造自然流畅的人机交互体验

添加图片注释,不超过 140 字(可选)

引言:对话语音的重要性

语音作为人类交流和人机交互的核心媒介,其自然度、表现力和韵律感直接决定了交互体验的质量。在播客、访谈、直播等场景中,对话语音是信息传递的主要形式。然而,传统文本到语音(TTS)模型在单句生成上虽有突破,但在复杂对话场景中,缺乏对整体语境的建模能力,导致生成的语音韵律单一,缺乏真实感。针对这一挑战,MOSS-TTSD(Text to Spoken Dialogue)推出了,一个专为对话场景设计的语音生成模型,带来中英双语、自然流畅、支持多说话人音色克隆的对话语音生成体验。


MOSS-TTSD 的核心亮点

MOSS-TTSD 是一个基于 Qwen3-1.7B-base 模型深度优化的对话语音生成系统,结合了先进的离散化语音序列建模技术和海量数据训练,实现了以下关键特性:

  1. 中英双语支持:无缝生成高质量中英文对话语音,适应全球化应用需求。
  2. 零样本音色克隆:仅需少量语音样本即可精准克隆说话人音色,生成个性化语音。
  3. 长语音生成:支持最长达 960秒 的连续语音生成,避免拼接带来的不自然过渡。
  4. 高表现力与自然度:通过对话语境建模,生成韵律自然、语调生动的语音,媲美人类对话。
  5. 低比特率高效编码:采用创新的 XY-Tokenizer,以 1kbps 的超低比特率实现高质量语音编码。

添加图片注释,不超过 140 字(可选)


技术创新:从 XY-Tokenizer 到对话建模

1. XY-Tokenizer:低比特率语音编码的突破

MOSS-TTSD 的核心技术之一是 XY-Tokenizer,一个专为语音离散化设计的 8 层残差矢量量化(RVQ)音频 Codec。它通过以下方式实现高效编码:

  • 双路 Whisper Encoder:同时捕捉语音的语义和声学信息,确保生成的语音既准确又富有表现力。
  • 低比特率与高帧率:以 1kbps 的比特率和 12.5Hz 的帧率,显著降低计算成本,同时保留语音细节。
  • 大规模训练:使用 10万小时 带转录文本的语音数据和 50万小时 无转录音频数据进行增强训练,提升 Codec 对复杂场景的处理能力。

下表展示了 XY-Tokenizer 在 LibriSpeech 测试集上的表现,与其他低比特率 Codec 相比,MOSS-TTSD 的语义信息(以词错误率 WER 衡量)与声学性能均达到领先水平:

CodecWER ↓声学性能
Codec A3.5中等
Codec B3.2中等
XY-Tokenizer (Ours)2.8优异

2. 自回归建模与多头 Delay

受 MusicGen 和 VOICECRAFT 的启发,MOSS-TTSD 采用 自回归建模 结合 多头 Delay 的方式生成语音 token。这种方法能够有效捕捉对话中的长期依赖关系,确保语音在韵律、语调和风格上的连贯性。


3. 数据工程:高质量对话数据的基石

MOSS-TTSD 的出色性能离不开高效的数据处理流水线。从 海量原始音频 中筛选出单人语音和多人对话语音,并通过以下步骤优化数据质量:

  • 说话人分离:利用内部优化的说话人分离模型,性能超越开源模型 pyannote-speaker-diarization-3.1 和商用版本 pyannoteAI。在 AISHELL-4、AliMeeting 等数据集上,模型的 DER(Diarization Error Rate) 显著降低:
ModelAISHELL-4AliMeetingAMI (IHM)AMI (SDM)
pyannote-speaker-diarization-3.111.724.720.524.3
pyannoteAI11.118.317.520.0
Ours Diarization Model9.714.114.517.2
  • 语音质量筛选:使用 DNSMOS 分数(≥2.8)剔除含背景噪声的音频,确保训练数据的高质量。
  • 细粒度对话标注:结合 Whisper-d 模型(中文版自研,英文版使用 Parakeet 开源模型),对短对话片段进行细粒度说话人标注和文本转录,解决重叠语音和短 Backchannel 的漏分问题。

最终,构建了 110万小时 的中英文 TTS 训练数据和 37万小时 的对话数据(包括 10万小时 中文和 27万小时 英文对话),并通过 Gemini 修正部分转录文本,提升标点符号的感知能力。


性能评估:与顶尖模型比肩

TTS 预训练表现

MOSS-TTSD 在 Seed-tts-eval 测试集上的表现与闭源顶尖模型 Seed-TTS 相当,词错误率(WER)和字符错误率(CER)均达到业界领先水平:

ModelWER ↓CER ↓WER (Norm) ↓CER (Norm) ↓
Seed-TTS2.251.12N/AN/A
Cosyvoice22.801.592.520.80
SparkTTS1.992.121.691.44
MOSS TTS-base1.901.561.540.82

TTSD 后训练优化

通过 WSD Scheduler 进行后训练,MOSS-TTSD 在 37万小时 真实对话数据和 8万小时 合成对话数据的支持下,进一步提升了说话人切换的准确性和对话语音的自然度。最终模型通过人工评估挑选,确保主观表现达到最佳。


应用场景:从播客到直播,无处不在

MOSS-TTSD 的强大功能使其适用于多种对话场景,包括但不限于:

  • 播客与访谈:生成多说话人、自然流畅的对话语音,提升内容创作效率。
  • 电商直播:为虚拟主播提供个性化音色和动态语调,增强用户互动体验。
  • 教育与培训:生成逼真的教学对话,支持多语言教学内容。
  • 智能助手:为语音助手提供更自然的对话能力,提升人机交互的沉浸感。

本地部署:

克隆仓库

git clone https://github.com/OpenMOSS/MOSS-TTSD.git

使用 conda

conda create -n moss_ttsd python=3.10 -y 
conda activate moss_ttsd 
pip install -r requirements.txt 
pip install flash-attn

下载模型

mkdir -p XY_Tokenizer/weights
huggingface-cli download fnlp/XY_Tokenizer_TTSD_V0_32k xy_tokenizer.ckpt --local-dir ./XY_Tokenizer/weights/

或者在huggingface.co/fnlp/XY_Tok…网站中找到Files and versions下载xy_tokenizer.ckpt文件放到XY_Tokenizer/weights目录下

一键整合包:

卫星公众号:InnoTechX 发送关键字: moss

使用方式

第一种是单音频方式,音频中包含两个说话人的音频,用[S1] [S2] 分别代表两个人的说话内容,填写到提示文本中。然后在要合成的文本中,也是使用这种方式,来进行文本To音频克隆的转换。

添加图片注释,不超过 140 字(可选)

第二种则是,分别上传不同角色的音频,分别输入不同角色的说话内容,在合成的文本中,实现的对话式的合成文本内容即可,也是用[S1] [S2] 分别代表两个人的说话内容

添加图片注释,不超过 140 字(可选)

现在只支持两个人之间的对话克隆,多人的对话克隆,作者还在研究中。。。

本站提供的所有下载资源均来自互联网,仅提供学习交流使用,版权归原作者所有。如需商业使用,请联系原作者获得授权。 如您发现有涉嫌侵权的内容,请联系我们 邮箱:[email protected]