dia
开源对话式TTS模型,1.6B参数生成极具真实感的多角色语音,支持情感标签和笑声等非语言音效
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
开源对话式TTS模型,1.6B参数生成极具真实感的多角色语音,支持情感标签和笑声等非语言音效
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
你有没有想过,如果 AI 不仅能读文字,还能像配音演员一样自然地读出来,那会是什么感觉?Nari Labs 给出的答案是——Dia。这家仅有 1 名全职 + 1 名兼职研究工程师的小团队,用 1.6B 参数的模型,打破了传统 TTS(Text-to-Speech,文本转语音)系统只能逐句朗读的局限,实现了一步到位的对话式语音生成。
传统的 TTS 系统,比如大家熟悉的 Siri、Alexa,本质上是一个「朗读机器」——输入一段文字,它忠实地把它念出来。语气平、节奏呆、没有情感起伏,长时间听会让人昏昏欲睡。
近年来,以 ElevenLabs、Sesame CSM-1B 为代表的商业产品开始引入情感控制和对话生成,但它们要么闭源收费,要么对普通开发者设置了较高的使用门槛。Nari Labs 的目标正是填补这个空白:提供一个完全开源、有对话情感、可定制语音的 TTS 系统,让每个开发者都能用上接近商用水平的语音合成。
Nari Labs 团队的核心成员背景与 Google TPU Research Cloud 有合作关系,团队名「Nari」在韩语中意为「百合花」,象征纯净与生长。项目于 2024 年中发布,随后在 2024 年 11 月推出 Dia2 代。目前团队规模极小,但社区活跃度很高。

图1:Dia 项目 Banner,展示对话式语音生成的核心能力
Dia 的最大特点,是它不只是在读文字——它在演绎一段对话。这种能力体现在三个维度:
1. 角色对话标签(Speaker Tagging)
Dia 引入了一种独特的标记语法:使用 [S1] 和 [S2] 来区分不同说话者。例如输入:
[S1] 你听说了吗?Dia 开源了![S2] 真的吗?那我得去试试![S1] 对,它还能生成笑声和咳嗽声。(laughs)
模型会自动为不同角色分配不同的音色、音调和说话节奏,让对话听起来真实自然。这比传统 TTS 的「统一音色」前进了一大步。
2. 非语言音效生成
Dia 支持在语音中嵌入非语言音效标签,如:(laughs) 笑声、(clears throat) 清嗓子、(sighs) 叹息、(coughs) 咳嗽、(singing) 哼唱等二十多种。这些音效不是简单叠加音频片段,而是由模型端到端生成的,天然融入语音语境,不会出现传统拼接音效那种「跳戏」的感觉。
3. 声音克隆(Voice Cloning)
通过提供一段 5~10 秒的参考音频及对应文字转录,Dia 可以学习并复现该声音的音色,实现个性化语音定制。这个功能在角色配音、有声书制作、游戏 NPC 等场景中有巨大潜力。
Dia 的技术基础融合了多个前沿研究:
从代码结构看,Dia 包含以下核心模块:
| 模块 | 功能 |
|---|---|
model.py | 核心模型定义(1.6B 参数的 Transformer Decoder) |
config.py | 模型配置管理 |
audio.py | 音频编解码(基于 DAC) |
state.py | 生成状态管理 |
layers.py | 自定义神经网络层 |
模型权重托管在 Hugging Face(nari-labs/Dia-1.6B-0626),支持直接通过 transformers 库加载使用,降低了使用门槛。
Nari Labs 提供了在 RTX 4090 上的基准测试数据:
| 精度 | 实时倍率(开启 compile) | 实时倍率(关闭 compile) | 显存占用 |
|---|---|---|---|
| bfloat16 | x2.1(比实时快2.1倍) | x1.5 | ~4.4GB |
| float16 | x2.2 | x1.3 | ~4.4GB |
| float32 | x1.0 | x0.9 | ~7.9GB |
推荐使用 bfloat16 精度,在 RTX 4090 上可以实现 2.1 倍实时生成速度,生成 10 秒音频只需约 5 秒。RTX 4090 Ti 或更高型号表现会更好。
方式一:Gradio Web UI(最适合普通用户)
运行 python app.py 即可启动一个本地 Gradio 界面,上传文本、设置参数、试听效果,全流程可视化,无需任何命令行操作。
方式二:Hugging Face Spaces 在线体验
Nari Labs 申请了 Hugging Face 的 ZeroGPU Grant,在 HF Space 上提供了一个免费在线 Demo,地址:huggingface.co/spaces/nari-labs/Dia-1.6B。不想本地部署的用户可以直接去体验。
方式三:pip 一键安装 + Python 脚本
pip install git+https://github.com/nari-labs/dia.git
python hf.py # 使用 HuggingFace transformers 调用
对于有开发能力的用户,第三种方式最灵活,可以集成到自己的应用中。
使用 Dia 时有几个重要的「雷区」需要避开:
图2:Dia 项目 Star 增长曲线
从 Star 增长曲线看,Dia 自发布以来保持了稳定的上升趋势,当前已获得 19,000+ stars,在开源 TTS 领域属于顶级热门项目。其「对话式语音生成」的概念正在引领一个新方向:TTS 不再只是「读文字」,而是「演对话」。
更重要的是,Dia 作为完全开源项目(Apache 2.0 许可证),为语音合成研究提供了一个可复现、可修改、可扩展的基准。这对于推动多模态 AI 系统(LLM + TTS + 视觉)的发展具有重要意义——想象一下,一个能对话、能配音、能配表情的 AI Agent,Dia 就是其语音层的开源选择。
总结一句话:Dia 是目前开源社区最接近商用水平的对话式 TTS 模型,1.6B 参数即可生成极具真实感的对话语音,支持情感标签和非语言音效,适合 AI Agent、游戏 NPC、有声内容创作等场景。