🚀 俄耳甫斯土耳其语TTS模型
俄耳甫斯土耳其语TTS预训练模型(第2000步)基于 "canopylabs/orpheus-3b-0.1-pretrained" 进行训练。该模型可将文本转换为自然流畅的土耳其语语音,在语音合成领域具有较高的应用价值。
🚀 快速开始
环境创建
在Windows系统下,可按以下步骤创建虚拟环境并运行推理脚本:
python -m venv venv
venv\Scripts\activate
python inference.py
安装必要库
请从 PyTorch官网 安装相应的torch版本,并安装其他必要的库:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
pip install snac pathlib torch transformers huggingface_hub librosa numpy scipy torchaudio Flask jsonify
✨ 主要特性
训练数据丰富
- 初始训练使用了超过60小时的合成语音数据。
- 训练过程中混入了额外的160多小时合成语音数据。
- 使用了400个表情符号(真实语音)数据以支持表情符号。
情感支持
模型支持文本中的以下情感表达:
<laugh> – 笑
<chuckle> – 轻声笑
<sigh> – 叹气
<cough> – 咳嗽
<sniffle> – 抽鼻子
<groan> – 呻吟
<yawn> – 打哈欠
<gasp> – 喘息 / 惊讶地吸气
API交互
通过Flask API可与模型进行交互,Flask配置为在端口5400上运行(可在脚本中更改)。
📦 安装指南
依赖安装
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
pip install snac pathlib torch transformers huggingface_hub librosa numpy scipy torchaudio Flask jsonify
💻 使用示例
基础用法
以下是 inference.py
脚本的部分代码示例,展示了如何进行零样本语音合成:
tokenizer = load_orpheus_tokenizer()
model = load_orpheus_auto_model()
snac_model = load_snac()
prompt_pairs = get_ref_audio_and_transcript("D:\\AI_APPS\\Orpheus-TTS\\data")
texts = ["Merhaba, orpheusTTS Turkce deneme"]
wav_forms = zero_shot_tts(prompt_pairs[0][0], prompt_pairs[0][1], texts, model, snac_model, tokenizer)
save_wav(wav_forms, 24000, ["output.wav"])
高级用法
通过API与模型进行交互,发送POST请求:
POST http://127.0.0.1:5400/generate HTTP/1.1
User-Agent: Fiddler
content-type: application/json
Host: 127.0.0.1:5400
Content-Length: 110
{
"text": "Merhaba, orpheusTTS Turkce deneme"
}
📚 详细文档
模型信息
属性 |
详情 |
模型类型 |
基于Transformer架构的文本转语音模型 |
训练数据 |
超过60小时的合成语音数据用于初始训练,额外混入160多小时合成语音数据,400个表情符号(真实语音)数据用于表情符号支持 |
训练
若要使用自己的数据进行训练,可查看 train.py
和 config.yaml
文件。
🔧 技术细节
模型架构
该模型基于 "canopylabs/orpheus-3b-0.1-pretrained" 进行训练,采用了Transformer架构,能够有效地处理文本序列并生成高质量的语音。
推理流程
- 输入准备:将输入文本进行分词处理,并与参考音频的特征进行拼接。
- 模型推理:使用训练好的模型生成语音对应的token序列。
- 语音转换:将生成的token序列转换为语音波形。
代码实现
inference.py
脚本实现了模型的推理功能,包括加载模型、准备输入、进行推理、转换token为语音等步骤。
📄 许可证
本项目采用MIT许可证。