🚀 俄耳甫斯土耳其語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許可證。