Viet Tts
VietTTS是一个开源工具包,提供强大的越南语TTS模型,支持自然语音合成和语音克隆。
下载量 285
发布时间 : 10/23/2024
模型简介
VietTTS是一个专为越南语设计的文本转语音系统,能够实现高质量的语音合成和稳健的语音克隆。它支持高效实验,适用于越南语语音技术的研究和应用。
模型特点
文本转语音
通过提示音频生成任意语音的文本转语音
兼容OpenAI API
兼容OpenAI的文本转语音API格式
语音克隆
支持从本地音频文件克隆语音
模型能力
越南语语音合成
语音克隆
多语音支持
使用案例
语音技术
语音助手
为越南语语音助手提供自然语音输出
有声读物
将越南语文本转换为自然语音的有声读物
🚀 VietTTS:开源越南语文本转语音工具
VietTTS 是一个开源工具包,为社区提供了强大的越南语文本转语音(TTS)模型,能够实现自然语音合成和强大的语音克隆功能。它专为高效实验而设计,支持越南语语音技术的研究和应用。
🚀 快速开始
VietTTS 可通过 Python 安装程序(仅支持 Linux,即将支持 Windows 和 macOS)或 Docker 进行安装。
📦 安装指南
Python 安装程序(Python >= 3.10)
git clone https://github.com/dangvansam/viet-tts.git
cd viet-tts
# (可选)使用 conda 创建 Python 环境,你也可以使用 virtualenv
conda create --name viettts python=3.10
conda activate viettts
# 安装
pip install -e . && pip cache purge
Docker
- 安装 Docker、NVIDIA 驱动、NVIDIA 容器工具包 和 CUDA。
- 运行以下命令:
git clone https://github.com/dangvansam/viet-tts.git
cd viet-tts
# 构建 Docker 镜像
docker compose build
# 使用 docker-compose 运行 - 将在 http://localhost:8298 创建服务器
docker compose up -d
# 或者使用 docker run 运行 - 将在 http://localhost:8298 创建服务器
docker run -itd --gpu=alls -p 8298:8298 -v ./pretrained-models:/app/pretrained-models -n viet-tts-service viet-tts:latest viettts server --host 0.0.0.0 --port 8298
✨ 主要特性
- TTS:通过提示音频实现任意语音的文本转语音生成。
- 兼容 OpenAI API:与 OpenAI 的文本转语音 API 格式兼容。
💻 使用示例
内置语音 🤠
你可以使用以下可用语音进行语音合成:
展开查看
ID | 语音 | 性别 | 播放音频 |
---|---|---|---|
1 | nsnd-le-chuc | 👨 | |
2 | speechify_10 | 👩 | |
3 | atuan | 👨 | |
4 | speechify_11 | 👩 | |
5 | cdteam | 👨 | |
6 | speechify_12 | 👩 | |
7 | cross_lingual_prompt | 👩 | |
8 | speechify_2 | 👩 | |
9 | diep-chi | 👨 | |
10 | speechify_3 | 👩 | |
11 | doremon | 👨 | |
12 | speechify_4 | 👩 | |
13 | jack-sparrow | 👨 | |
14 | speechify_5 | 👩 | |
15 | nguyen-ngoc-ngan | 👩 | |
16 | speechify_6 | 👩 | |
17 | nu-nhe-nhang | 👩 | |
18 | speechify_7 | 👩 | |
19 | quynh | 👩 | |
20 | speechify_8 | 👩 | |
21 | speechify_9 | 👩 | |
22 | son-tung-mtp | 👨 | |
23 | zero_shot_prompt | 👩 | |
24 | speechify_1 | 👩 |
命令行界面(CLI)
VietTTS 命令行界面(CLI)允许你直接从终端快速生成语音。以下是使用方法:
# 使用说明
viettts --help
# 启动 API 服务器
viettts server --host 0.0.0.0 --port 8298
# 列出所有内置语音
viettts show-voices
# 使用内置语音从文本合成语音
viettts synthesis --text "Xin chào" --voice 0 --output test.wav
# 从本地音频文件克隆语音
viettts synthesis --text "Xin chào" --voice Download/voice.wav --output cloned.wav
API 客户端
Python(OpenAI 客户端)
你需要为 OpenAI 客户端设置环境变量:
# 将 base_url 和 API 密钥设置为环境变量
export OPENAI_BASE_URL=http://localhost:8298
export OPENAI_API_KEY=viet-tts # 当前版本未使用
要从输入文本创建语音:
from pathlib import Path
from openai import OpenAI
client = OpenAI()
output_file_path = Path(__file__).parent / "speech.wav"
with client.audio.speech.with_streaming_response.create(
model='tts-1',
voice='cdteam',
input='Xin chào Việt Nam.',
speed=1.0,
response_format='wav'
) as response:
response.stream_to_file('a.wav')
CURL
# 获取所有内置语音
curl --location http://0.0.0.0:8298/v1/voices
# OpenAI 格式(内置语音)
curl http://localhost:8298/v1/audio/speech \
-H "Authorization: Bearer viet-tts" \
-H "Content-Type: application/json" \
-d '{
"model": "tts-1",
"input": "Xin chào Việt Nam.",
"voice": "son-tung-mtp"
}' \
--output speech.wav
# 带有本地文件语音的 API
curl --location http://0.0.0.0:8298/v1/tts \
--form 'text="xin chào"' \
--form 'audio_file=@"/home/viettts/Downloads/voice.mp4"' \
--output speech.wav
Node
import fs from "fs";
import path from "path";
import OpenAI from "openai";
const openai = new OpenAI();
const speechFile = path.resolve("./speech.wav");
async function main() {
const mp3 = await openai.audio.speech.create({
model: "tts-1",
voice: "1",
input: "Xin chào Việt Nam.",
});
console.log(speechFile);
const buffer = Buffer.from(await mp3.arrayBuffer());
await fs.promises.writeFile(speechFile, buffer);
}
main();
🙏 致谢
- 💡 借鉴了 Cosyvoice 的代码。
- 🎙️ 使用了 silero-vad 的 VAD 模型。
- 📝 采用 Vinorm 进行文本归一化。
📄 许可证
VietTTS 源代码遵循 Apache 2.0 许可证 发布。预训练模型和音频样本基于野外数据集,遵循 CC BY - NC 许可证。对于可能造成的不便,我们深表歉意。
⚠️ 免责声明
上述内容仅用于学术目的,旨在展示技术能力。部分示例源自互联网。若任何内容侵犯了你的权益,请联系我们要求删除。
💬 联系我们
- Facebook: https://fb.com/sam.rngd
- GitHub: https://github.com/dangvansam
- Email: dangvansam98@gmail.com
Kokoro 82M
Apache-2.0
Kokoro是一款拥有8200万参数的开源文本转语音(TTS)模型,以其轻量级架构和高音质著称,同时具备快速和成本效益高的特点。
语音合成 英语
K
hexgrad
2.0M
4,155
XTTS V2
其他
ⓍTTS是一款革命性的语音生成模型,仅需6秒音频片段即可实现跨语言音色克隆,支持17种语言。
语音合成
X
coqui
1.7M
2,630
F5 TTS
F5-TTS 是一个基于流匹配的语音合成模型,专注于流畅且忠实的语音合成,特别适用于童话讲述等场景。
语音合成
F
SWivid
851.49k
1,000
Bigvgan V2 22khz 80band 256x
MIT
BigVGAN是基于大规模训练的通用神经声码器,能够从梅尔频谱生成高质量音频波形。
语音合成
B
nvidia
503.23k
16
Speecht5 Tts
MIT
基于LibriTTS数据集微调的SpeechT5语音合成(文本转语音)模型,支持高质量的文本转语音转换。
语音合成
Transformers

S
microsoft
113.83k
760
Dia 1.6B
Apache-2.0
Dia是由Nari实验室开发的16亿参数文本转语音模型,能够直接从文本生成高度逼真的对话,支持情感和语调控制,并能生成非语言交流内容。
语音合成
Safetensors 英语
D
nari-labs
80.28k
1,380
Csm 1b
Apache-2.0
CSM是Sesame开发的10亿参数规模语音生成模型,可根据文本和音频输入生成RVQ音频编码
语音合成
Safetensors 英语
C
sesame
65.03k
1,950
Kokoro 82M V1.1 Zh
Apache-2.0
Kokoro 是一个开放权重的小型但功能强大的文本转语音(TTS)模型系列,新增了来自专业数据集的100名中文说话人数据。
语音合成
K
hexgrad
51.56k
112
Indic Parler Tts
Apache-2.0
Indic Parler-TTS 是 Parler-TTS Mini 的多语言印度语言扩展版本,支持21种语言,包括多种印度语言和英语。
语音合成
Transformers 支持多种语言

I
ai4bharat
43.59k
124
Bark
MIT
Bark是由Suno创建的基于Transformer的文本转音频模型,能生成高度逼真的多语言语音、音乐、背景噪音和简单音效。
语音合成
Transformers 支持多种语言

B
suno
35.72k
1,326
精选推荐AI模型
Llama 3 Typhoon V1.5x 8b Instruct
专为泰语设计的80亿参数指令模型,性能媲美GPT-3.5-turbo,优化了应用场景、检索增强生成、受限生成和推理任务
大型语言模型
Transformers 支持多种语言

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-Tiny是一个基于SODA数据集训练的超小型对话模型,专为边缘设备推理设计,体积仅为Cosmo-3B模型的2%左右。
对话系统
Transformers 英语

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
基于RoBERTa架构的中文抽取式问答模型,适用于从给定文本中提取答案的任务。
问答系统 中文
R
uer
2,694
98