Show HN: Dia,一个用于生成逼真对话的开放权重 TTS 模型
Dia 是由 Nari Labs 创建的 16 亿参数的文本到语音模型 (text to speech model)。
Dia 直接从文本生成高度逼真的对话。 您可以根据音频调节输出,从而实现情感和语调控制。 该模型还可以生成非语言交流,例如笑声、咳嗽、清嗓子等。
为了加速研究,我们提供对预训练模型检查点和推理代码的访问。 模型权重托管在 Hugging Face 上。
我们还提供了一个 演示页面,将我们的模型与 ElevenLabs Studio 和 Sesame CSM-1B 进行了比较。
- 加入我们的 Discord 服务器 以获得社区支持并访问新功能。
- 体验更大版本的 Dia:生成有趣的对话、混音内容并与朋友分享。 🔮 加入 候补名单 以尽早访问。
⚡️ 快速开始
这将打开一个您可以使用的 Gradio UI。
git clone https://github.com/nari-labs/dia.git
cd dia && uv run app.py
或者,如果您没有预先安装 uv
:
git clone https://github.com/nari-labs/dia.git
cd dia
python -m venv .venv
source .venv/bin/activate
pip install uv
uv run app.py
⚙️ 用法
作为 Python Library
import soundfile as sf
from dia.model import Dia
model = Dia.from_pretrained("nari-labs/Dia-1.6B")
text = "[S1] Dia is an open weights text to dialogue model. [S2] You get full control over scripts and voices. [S1] Wow. Amazing. (laughs) [S2] Try it now on Git hub or Hugging Face."
output = model.generate(text)
sf.write("simple.mp3", output, 44100)
一个 pypi 包和一个可用的 CLI 工具即将推出。
💻 硬件和推理速度
Dia 仅在 GPU 上进行了测试 (pytorch 2.0+, CUDA 12.6)。 CPU 支持即将添加。 初始运行将花费更长的时间,因为还需要下载 Descript Audio Codec。
在企业级 GPU 上,Dia 可以实时生成音频。 在较旧的 GPU 上,推理时间会较慢。 作为参考,在 A4000 GPU 上,Dia 大致生成 40 个 tokens/s(86 个 tokens 等于 1 秒音频)。 torch.compile
将提高支持的 GPU 的速度。
完整版本的 Dia 需要大约 10GB 的 VRAM 才能运行。 我们将在未来添加量化版本。
如果您没有可用的硬件,或者想体验更大版本的模型,请在此处加入候补名单here。
🪪 许可
本项目采用 Apache License 2.0 许可 - 有关详细信息,请参阅 LICENSE 文件。
⚠️ 免责声明
本项目提供了一个高保真语音生成模型,仅用于研究和教育用途。 严禁以下用途:
- 身份滥用:未经许可,请勿生成类似于真实个人的音频。
- 欺骗性内容:请勿使用此模型生成误导性内容(例如,虚假新闻)。
- 非法或恶意使用:请勿将此模型用于非法或意图造成伤害的活动。
使用此模型,即表示您同意遵守相关的法律标准和道德责任。 我们不对任何滥用行为负责,并坚决反对任何不道德的技术使用。
🔭 TODO / 未来工作
- Docker 支持。
- 优化推理速度。
- 添加量化以提高内存效率。
🤝 贡献
我们是一个由 1 名全职和 1 名兼职研究工程师组成的小团队。 我们非常欢迎任何贡献! 加入我们的 Discord 服务器 进行讨论。
🤗 致谢
- 感谢 Google TPU Research Cloud program 提供计算资源。
- 我们的工作深受 SoundStorm、Parakeet 和 Descript Audio Codec 的启发。
- "Nari" 是韩语中百合花的意思。
- 感谢 Jason Y. 在数据过滤方面提供的帮助。