🚀 Parler-TTS Mini v1 ft. ParaSpeechCaps
該項目微調了Parler-TTS Mini v1模型,基於ParaSpeechCaps數據集創建了一個文本轉語音(TTS)模型,可通過文本風格提示控制語音的豐富風格,如音調、節奏、清晰度、情感等。
🚀 快速開始
本項目微調了 parler-tts/parler-tts-mini-v1 模型,在 ParaSpeechCaps 數據集上進行訓練,創建了一個文本轉語音(TTS)模型。該模型可以通過文本風格提示(例如“一位男性說話者的語音特點是發音含糊,在清晰的環境中以沉穩的節奏說話”)來控制生成語音的豐富風格(音調、節奏、清晰度、情感等)。
ParaSpeechCaps (PSC) 是一個大規模數據集,為語音話語提供了豐富的風格註釋,支持59種風格標籤,涵蓋說話者層面的內在風格標籤和話語層面的情境風格標籤。它由人工註釋的子集 ParaSpeechCaps-Base 和自動註釋的大型子集 ParaSpeechCaps-Scaled 組成。該項目的新型管道結合了現成的文本和語音嵌入器、分類器和音頻語言模型,首次實現了為如此廣泛的風格標籤自動擴展豐富的標籤註釋。
更多信息請查看 論文、代碼庫 和 演示網站。
✨ 主要特性
- 基於微調的Parler-TTS Mini v1模型,可通過文本風格提示控制語音風格。
- 使用ParaSpeechCaps數據集,支持59種風格標籤。
- 新型管道實現了豐富風格標籤的自動擴展。
📦 安裝指南
本倉庫已在Python 3.11環境下測試(conda create -n paraspeechcaps python=3.11
),其他版本大概率也能正常工作。
git clone https://github.com/ajd12342/paraspeechcaps.git
cd paraspeechcaps/model/parler-tts
pip install -e .[train]
💻 使用示例
基礎用法
import torch
from parler_tts import ParlerTTSForConditionalGeneration
from transformers import AutoTokenizer
import soundfile as sf
device = "cuda:0" if torch.cuda.is_available() else "cpu"
model_name = "ajd12342/parler-tts-mini-v1-paraspeechcaps"
guidance_scale = 1.5
model = ParlerTTSForConditionalGeneration.from_pretrained(model_name).to(device)
description_tokenizer = AutoTokenizer.from_pretrained(model_name)
transcription_tokenizer = AutoTokenizer.from_pretrained(model_name, padding_side="left")
input_description = "In a clear environment, a male voice speaks with a sad tone.".replace('\n', ' ').rstrip()
input_transcription = "Was that your landlord?".replace('\n', ' ').rstrip()
input_description_tokenized = description_tokenizer(input_description, return_tensors="pt").to(model.device)
input_transcription_tokenized = transcription_tokenizer(input_transcription, return_tensors="pt").to(model.device)
generation = model.generate(input_ids=input_description_tokenized.input_ids, prompt_input_ids=input_transcription_tokenized.input_ids, guidance_scale=guidance_scale)
audio_arr = generation.cpu().numpy().squeeze()
sf.write("output.wav", audio_arr, model.config.sampling_rate)
對於包含基於自動語音識別(ASR)的重複採樣選擇的完整推理腳本和其他腳本,請參考 代碼庫。
📚 詳細文檔
模型信息
屬性 |
詳情 |
基礎模型 |
parler-tts/parler-tts-mini-v1 |
訓練數據集 |
amphion/Emilia-Dataset、ParaSpeechCaps |
語言 |
英語 |
庫名稱 |
transformers |
許可證 |
CC BY-NC SA 4.0 |
任務類型 |
文本轉語音 |
引用說明
如果使用該模型、數據集或倉庫,請按以下格式引用:
@misc{diwan2025scalingrichstylepromptedtexttospeech,
title={Scaling Rich Style-Prompted Text-to-Speech Datasets},
author={Anuj Diwan and Zhisheng Zheng and David Harwath and Eunsol Choi},
year={2025},
eprint={2503.04713},
archivePrefix={arXiv},
primaryClass={eess.AS},
url={https://arxiv.org/abs/2503.04713},
}
📄 許可證
本項目採用 CC BY-NC SA 4.0 許可證。