Spaces:
Configuration error
Configuration error
import gradio as gr | |
from transformers import AutoProcessor, AutoModelForSpeechT5 | |
import torch | |
import scipy.io.wavfile | |
import tempfile | |
# 加载模型和处理器 | |
processor = AutoProcessor.from_pretrained("FunAudioLLM/CosyVoice2-0.5B") | |
model = AutoModelForSpeechT5.from_pretrained("FunAudioLLM/CosyVoice2-0.5B") | |
device = "cuda" if torch.cuda.is_available() else "cpu" | |
model = model.to(device) | |
# 合成语音的函数 | |
def tts_fn(text): | |
inputs = processor(text, return_tensors="pt").to(device) | |
with torch.no_grad(): | |
speech = model.generate(**inputs) | |
speech = speech.cpu().numpy() | |
# 保存为临时 wav 文件 | |
with tempfile.NamedTemporaryFile(suffix=".wav", delete=False) as f: | |
scipy.io.wavfile.write(f.name, rate=16000, data=speech) | |
return f.name | |
# Gradio 界面 | |
demo = gr.Interface( | |
fn=tts_fn, | |
inputs=gr.Textbox(label="请输入中文文本", placeholder="例如:你好,这是 CosyVoice2 的语音演示"), | |
outputs=gr.Audio(label="合成语音"), | |
title="CosyVoice2 中文语音合成演示" | |
) | |
demo.launch() |