LuxTTS 基于ZipVoice架构的高质量、高速度语音克隆模型
LuxTTS 基于ZipVoice架构的高质量、高速度语音克隆模型,能以超过150倍实时速度生成48kHz音频。
本教程将涵盖从环境配置到运行推理,以及部署Web UI和应对其他场景的完整流程。
📥 第一步:环境准备与安装
建议创建一个干净的Python环境,以避免依赖冲突。
克隆仓库:
1
2git clone https://github.com/ysharma3501/LuxTTS.git
cd LuxTTS安装依赖:
项目根目录下的requirements.txt包含了核心依赖。推荐使用pip安装:1
pip install -r requirements.txt
注意:根据社区实践,LuxTTS可能还需要额外安装
LinaCodec和piper-phonemize等依赖。如果后续运行报错,可以尝试单独安装:1
2pip install git+https://github.com/ysharma3501/LinaCodec.git
pip install piper-phonemize --find-links https://k2-fsa.github.io/icefall/piper_phonemize.html
🚀 第二步:基础使用与推理
安装完成后,你可以通过简单的Python脚本快速体验语音克隆。
加载模型:
1
2
3
4
5from zipvoice.luxvoice import LuxTTS
# 根据你的硬件选择设备: 'cuda' (NVIDIA GPU), 'cpu', 或 'mps' (Apple Silicon)
# 模型会从 Hugging Face (YatharthS/LuxTTS) 自动下载
lux_tts = LuxTTS('YatharthS/LuxTTS', device='cuda')准备参考音频:
准备一段你想克隆的声音样本(至少3秒长,支持wav/mp3格式),将其放在项目目录下,例如audio_file.wav。执行语音克隆:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18import soundfile as sf
from IPython.display import Audio
text = "Hey, what's up? I'm feeling really great if you ask me honestly!"
prompt_audio = 'audio_file.wav'
# 编码参考音频 (首次运行因加载librosa会稍慢)
encoded_prompt = lux_tts.encode_prompt(prompt_audio, rms=0.01)
# 生成语音
final_wav = lux_tts.generate_speech(text, encoded_prompt, num_steps=4)
# 保存音频 (48kHz)
final_wav = final_wav.numpy().squeeze()
sf.write('output.wav', final_wav, 48000)
# 在Jupyter环境中播放
display(Audio(final_wav, rate=48000))
⚙️ 第三步:调整参数以获得更好效果
LuxTTS提供了一些可调参数,你可以根据输出效果进行微调:
num_steps: 采样步数,推荐3-4步以平衡效率与质量。t_shift: 采样参数,较高值可能音质更好但会增加发音错误。rms: 控制参考音频音量,推荐0.01左右。return_smooth: 如果听到金属音,可以尝试设为True。ref_duration: 参考音频使用时长(秒),设短可加速编码。若发现音频伪影,可尝试设为1000。
🖥️ 可选:部署Gradio Web UI (Pinokio)
如果你想通过图形界面使用LuxTTS,可以部署社区提供的Gradio应用。
使用Pinokio:社区提供了Pinokio启动器 [PierrunoYT/LuxTTS-Pinokio]。在Pinokio中打开该项目,点击 Install,完成后点击 Start,即可通过显示的
http://127.0.0.1:7860地址使用Web界面。直接运行:如果项目中有
app.py类似的Gradio入口文件,你也可以直接运行:1
python app.py
🌐 其他部署方式与场景
- 云端API部署:LuxTTS也在Fal.ai平台上提供了API服务。你可以通过HTTP API调用,无需本地部署,适合希望快速集成的场景。
- Apple设备优化:社区提供了专为Apple芯片优化的CoreML版本 [FluidInference/luxtts-coreml],可在iPhone和Mac上获得更好的性能。
- 日语模型:社区还提供了针对日语微调的模型 [ayutaz/LuxTTS],可通过加载特定权重使用。
💡 关键要点与提示
- 性能优势:LuxTTS的核心优势在于高速(150倍实时)、高质量(48kHz)和低显存占用(<1GB VRAM)。
- 硬件要求:在GPU上运行可获得最佳速度,但CPU上也能达到实时以上速度。建议使用至少3秒的参考音频以获得良好克隆效果。
- 故障排除:
- 如遇到
librosa相关错误,请确保其已正确安装。 - 如果生成的音频有金属音,尝试设置
return_smooth=True。 - 确认参考音频路径正确,且文件未损坏。
- 如遇到
如果在部署中遇到具体问题,可以查阅其GitHub仓库的Issues或社区讨论。希望这份指南能帮你顺利运行LuxTTS。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 极客的赛博空间 | 专注 AI 与技术分享!
评论










