EchoraEchora
返回模型

Dia TTS:不只是朗读句子,而是生成真实对话的开源模型

2026年8月17日
阅读约 8 分钟

把文字和录音,做成能听的作品

配音、分轨、翻唱和音效,都在浏览器里完成。

  • 文字转语音,也能克隆音色
  • 分离音轨,或直接生成翻唱
  • 注册就能试听,先听再决定
免费开始创作

大多数文本转语音引擎的目标是把一句话读出来。Dia TTS 要解决的难度更高:只用一份普通对话脚本,就能在一次生成中完成整段对话——两个说话人、交织的情绪,以及恰到好处的笑声。如果你正在制作播客、有声书或游戏角色,或者需要一个听起来像真人交流、而不是朗读稿件的 AI Agent,这正是为此而设计的模型。

什么是 Dia TTS(Dia 1.6B)?

Dia 也称为 Dia-1.6BDia 1.6B,是由 Nari Labs 开发的 16 亿参数文本转语音模型。Nari Labs 是一家来自韩国的小型团队,由两名本科生开发者创立。Dia 以 Apache 2.0 许可证发布,完全开放权重:模型检查点托管在 Hugging Face 上,推理代码也公开在 GitHub。

Dia 与传统 TTS 架构的差别并不只在参数量,更在于训练目标。它不是为了优化干净、独立的句子朗读,而是端到端地针对对话合成设计:支持多个说话人、自然的轮流发言,以及真实对话中不可或缺的非语言声音质感。社区早期的对比将它视为 ElevenLabs、Sesame CSM-1B 等闭源商业系统的有力开源替代,尤其适用于对话密集的场景——在这些场景里,后两者的声音仍容易让人感觉是在“读”而不是在“说”。

Dia 仍是少数围绕对话本身构建的开放权重系统之一,而不是从单说话人朗读模型改造而来。

Dia 是如何工作的?

Dia 会读取纯文本转录稿,并直接将其转换成完整的音频波形:无需单独的声音克隆流程,也不需要为每个说话人手动拼接片段。它的输出主要由三个机制驱动:

说话人标签。 在对话行前加上 [S1][S2] 标签,就能告诉模型每一行由哪个声音来讲。Dia 会在整份脚本中保持每个标签对应说话人的音色一致,因此来回对话不会像拼接的单说话人片段那样出现声音身份漂移。

非语言声音生成。 这是 Dia 最具辨识度的能力。像 (laughs) 这样的行内提示会被渲染成真正的笑声、咳嗽或清嗓声,而不是在生成后再拼上一段合成的“哈哈”音效。正是这些细节,让生成的对话听起来像两个人在交流,而不是两份稿子被分别读出来。

音频条件控制。 在文本旁提供一小段参考音频,可以引导输出的情绪、节奏和表达方式,也可以克隆特定声音,让它在整个项目中保持一致。没有参考音频时,Dia 每次运行都会随机生成不同的声音;锁定随机种子或提供音频提示,则能得到可重复、稳定的说话人声音。

如何使用 Dia TTS?

根据你是想先评估这种能力,还是要用模型进行开发,可以按以下三个步骤操作:

  1. 先在线体验类似的对话功能。 Text to Dialogue 可以让你先测试在同一场景中使用多个声音的整体思路,再决定是否进行 Dia 的本地部署。它是功能相近的替代工具,并不是 Dia 本身,也不会运行 Dia 专属的 [S1]/[S2] 语法。
  2. 在本地运行 Dia 用于生产。 从 GitHub 克隆 nari-labs/dia 仓库,创建 Python 虚拟环境并安装列出的依赖。首次运行时,模型权重会自动从 Hugging Face 下载;也可以通过 Hugging Face Transformers 直接加载 Dia。
  3. 先确认硬件配置。 Dia 在一块约有 8–10 GB 显存的 GPU 上即可顺畅运行推理;消费级显卡或 Colab T4 这样的云端实例都足够,无需额外的量化技巧。

获得更好效果的技巧

  • 保持说话人标签一致。 在整份脚本中统一使用 [S1]/[S2] 标签;中途混用不同约定会让说话人分配变得混乱。
  • 把非语言提示放在自然的位置。 (laughs) 放在笑点之后和放在句子中间,生成效果完全不同。把这些标签当作导演提示,而不是装饰。
  • 锁定随机种子以复现声音。 如果需要同一个角色在多次生成中保持相同声音(例如反复出现的游戏 NPC),请固定随机种子或重复使用同一段音频提示,不要每次都从头随机生成。
  • 注意目前仅支持英语。 目前 Dia 只支持生成英语语音。规划多语言项目时应提前考虑这一限制,而不是生成失败后才处理。
  • 克隆时使用短而干净的参考音频。 参考样本是否清晰、是否没有背景噪声,会直接影响音频条件控制的质量。

Dia 与其他 TTS 模型对比

Dia 1.6BElevenLabsSesame CSM-1B
许可证开放权重(Apache 2.0)闭源商业 API开放权重
一次生成多说话人对话支持,原生能力每行需要单独分配声音有限支持
非语言声音(笑声、咳嗽)根据文本标签原生生成通常需要手动编辑音频不是核心功能
声音克隆支持,通过音频条件控制支持支持
自托管支持,可完整本地部署不支持支持
语言支持仅英语多语言以英语为主

Dia 的优势集中在对话最关键的地方:轮流发言和非语言声音的真实感。如果你的场景是多语言的单说话人旁白,商业多语言 API 可能仍然更合适;但对于英语多角色音频,以对话为核心的 Dia 开源方案在这一参数规模下很难被超越。

常见问题

Dia TTS 可以免费使用吗?

可以。Dia 以 Apache 2.0 许可证发布,模型权重和代码都可以免费使用、修改和自行部署,也包括商业项目,但仍需遵守许可证条款。

Dia 1.6B 支持英语之外的语言吗?

目前不支持。Dia 只能生成英语语音,官方不支持非英语脚本。

在本地运行 Dia 1.6B 需要什么硬件?

约 8–10 GB 显存的 GPU 就足以完成推理。单块消费级 GPU 或云端 T4 实例都可以运行,无需额外优化。

在哪里可以找到 Dia 1.6B 的 GitHub 仓库?

官方代码和部署说明维护在 GitHub 的 nari-labs/dia 仓库中,模型权重则单独托管在 Hugging Face。

Dia 可以克隆特定声音吗?

可以。将参考音频作为音频条件提示输入,Dia 就能匹配目标声音和情绪表达;当然也可以使用它默认的随机声音生成方式。

体验类似的对话功能

如果你想直接在浏览器中听到多说话人音频,可以试试 Text to Dialogue 这一功能相近的替代方案。它不是 Dia TTS,但能让你在本地部署 Dia 之前先制作和验证双人对话场景。

探索 Text to Dialogue →