114 lines
4.5 KiB
Markdown
114 lines
4.5 KiB
Markdown
# Fish Speech 语音克隆使用指南
|
||
|
||
## 🎯 当前状态
|
||
|
||
✅ **已完成**:
|
||
- Fish Speech 模型已从魔搭社区成功下载 (1.4GB)
|
||
- 参考音频文件已准备 (ben_guanquelou.wav)
|
||
- 模型文件完整性验证通过
|
||
- 服务器进程正在运行
|
||
|
||
⚠️ **需要注意**:
|
||
你是对的,我之前生成的音频确实是演示音频,不是真正的 Fish Speech 语音合成。
|
||
Fish Speech 需要正确加载模型并进行语音克隆才能生成真实的语音。
|
||
|
||
## 🔧 正确的使用方法
|
||
|
||
### 方法1: Web UI 界面 (推荐)
|
||
|
||
1. **启动 Web UI**:
|
||
```bash
|
||
cd /root/tts/fish-speech
|
||
python tools/run_webui.py \
|
||
--llama-checkpoint-path checkpoints/fish-speech-1.5/model.pth \
|
||
--decoder-checkpoint-path checkpoints/fish-speech-1.5/firefly-gan-vq-fsq-8x1024-21hz-generator.pth \
|
||
--device cpu \
|
||
--max-gradio-length 2048
|
||
```
|
||
|
||
2. **在浏览器中访问**:
|
||
- 打开浏览器,访问 `http://localhost:7860` 或 `http://127.0.0.1:7860`
|
||
|
||
3. **设置参数**:
|
||
- **Reference Audio (参考音频)**: 上传 `/root/tts/ben_guanquelou.wav`
|
||
- **Reference Text (参考文本)**:
|
||
```
|
||
登鹳雀楼,白日依山尽,黄河入海流。欲穷千里目,更上一层楼。
|
||
```
|
||
- **Text to Synthesize (要合成的文本)**:
|
||
```
|
||
我们习惯于赞美黄河之水天上来,习惯于歌颂大地的厚德载物。教科书告诉我们,河流是水循环的恩赐,大陆是漂浮在岩浆上的方舟。这是一个完美的、闭环的、温情脉脉的解释。但如果,这一切都是关于"摩擦力"的谎言呢?请试着像挤压一个注满水的海绵球一样,去想象我们脚下的这颗星球。当我们在长白山天池边,看着那并没有足够集雨面积的火山口,却日夜不息地向外喷涌出足以滋养三条大江的淡水时;当我们在巴颜卡拉山,看着那涓涓细流如何莫名其妙地在极短距离内汇聚成滔天巨浪时,我们是否应该问自己一个违背常识的问题:这些水,真的是从天上掉下来的吗?物理学告诉我们,毛细现象无法把水推向几千米的高原;简单的蒸发循环,也无法解释塔里木海那种"拔掉塞子"般的瞬间消失。这背后,一定存在一个"第一推动"。它不是温柔的渗透,它是暴力的"挤压"。
|
||
```
|
||
|
||
4. **调整合成参数**:
|
||
- `max_new_tokens`: 2048 (支持长文本)
|
||
- `top_p`: 0.8
|
||
- `temperature`: 0.8
|
||
- `repetition_penalty`: 1.1
|
||
|
||
5. **点击生成并等待结果**
|
||
|
||
### 方法2: API 调用
|
||
|
||
1. **启动 API 服务器**:
|
||
```bash
|
||
cd /root/tts/fish-speech
|
||
python tools/api_server.py \
|
||
--llama-checkpoint-path checkpoints/fish-speech-1.5/model.pth \
|
||
--decoder-checkpoint-path checkpoints/fish-speech-1.5/firefly-gan-vq-fsq-8x1024-21hz-generator.pth \
|
||
--device cpu
|
||
```
|
||
|
||
2. **使用客户端调用**:
|
||
```bash
|
||
python tools/api_client.py \
|
||
--text "你的文本内容" \
|
||
--reference_audio /root/tts/ben_guanquelou.wav \
|
||
--reference_text "登鹳雀楼,白日依山尽,黄河入海流。欲穷千里目,更上一层楼。" \
|
||
--output output_filename \
|
||
--max_new_tokens 2048
|
||
```
|
||
|
||
## 📁 重要文件位置
|
||
|
||
- **模型目录**: `/root/tts/fish-speech/checkpoints/fish-speech-1.5/`
|
||
- **参考音频**: `/root/tts/ben_guanquelou.wav`
|
||
- **输出目录**: `/root/tts/audio_files/`
|
||
- **主程序**: `/root/tts/fish-speech/tools/run_webui.py`
|
||
|
||
## ⚡ 快速启动脚本
|
||
|
||
如果你想快速启动,可以运行:
|
||
|
||
```bash
|
||
cd /root/tts/fish-speech
|
||
# 清理旧进程
|
||
pkill -f "run_webui\|api_server"
|
||
# 启动新的 Web UI
|
||
python tools/run_webui.py \
|
||
--llama-checkpoint-path checkpoints/fish-speech-1.5/model.pth \
|
||
--decoder-checkpoint-path checkpoints/fish-speech-1.5/firefly-gan-vq-fsq-8x1024-21hz-generator.pth \
|
||
--device cpu \
|
||
--max-gradio-length 2048
|
||
```
|
||
|
||
## 🔍 故障排除
|
||
|
||
如果遇到问题:
|
||
|
||
1. **模型加载失败**: 确保模型文件完整且路径正确
|
||
2. **内存不足**: 使用 `--device cpu` 而不是 gpu
|
||
3. **端口冲突**: 检查是否有其他服务占用端口
|
||
4. **生成音频质量差**: 调整 top_p, temperature 等参数
|
||
|
||
## 🎯 预期结果
|
||
|
||
正确设置后,你应该能够:
|
||
- 获得与参考音频相似的声音特征
|
||
- 生成流畅、自然的语音
|
||
- 音频时长接近 30 秒
|
||
- 音频内容完整覆盖你提供的文本
|
||
|
||
---
|
||
|
||
**重要提醒**: Fish Speech 是一个强大的语音克隆工具,但需要正确的参数设置和足够的计算资源。建议使用 Web UI 界面进行首次尝试,因为它提供了更直观的参数调整。 |