从安装到生成:Fish-Speech 1.5完整使用教程,手把手教你玩转TTS

张开发
2026/4/10 7:58:16 15 分钟阅读

分享文章

从安装到生成:Fish-Speech 1.5完整使用教程,手把手教你玩转TTS
从安装到生成Fish-Speech 1.5完整使用教程手把手教你玩转TTS1. 项目简介与环境准备Fish-Speech 1.5是一款创新的文本转语音(TTS)系统采用独特的DualAR架构设计。与传统的TTS系统不同它摒弃了对音素的依赖能够直接理解和处理文本大幅提升了泛化能力。1.1 系统架构特点双自回归Transformer设计主Transformer以21Hz运行次Transformer负责将潜在状态转换为声学特征计算效率优化相比传统级联方法计算效率和语音输出质量都有显著提升端到端处理无需繁杂的语音规则库直接处理原始文本1.2 硬件与软件要求组件最低要求推荐配置GPUNVIDIA GTX 1060 (6GB)RTX 3060及以上内存8GB16GB及以上存储10GB可用空间20GB SSD操作系统Ubuntu 18.04Ubuntu 20.04/22.04CUDA版本11.712.0及以上2. 快速安装与部署2.1 一键部署方法对于使用CSDN星图镜像的用户部署过程非常简单登录星图镜像平台搜索fish-speech - 1.5镜像点击一键部署按钮等待部署完成(通常需要2-5分钟)2.2 手动安装步骤如果需要手动安装可以按照以下步骤操作# 克隆仓库 git clone https://github.com/fishaudio/fish-speech.git cd fish-speech # 创建conda环境 conda create -n fish-speech python3.11 conda activate fish-speech # 安装依赖 pip install -r requirements.txt # 下载预训练模型 wget https://huggingface.co/fishaudio/fish-speech-1.5/resolve/main/model.tar.gz tar -xzf model.tar.gz -C checkpoints/2.3 服务启动启动WebUI服务python tools/run_webui.py --device cuda --half启动API服务python tools/api_server.py --listen 0.0.0.0:8080 --device cuda --half3. WebUI使用指南3.1 界面概览访问WebUI界面(默认地址http://服务器IP:7860)你会看到以下主要功能区文本输入区输入要转换为语音的文本参考音频上传区用于声音克隆功能参数调整区控制语音生成质量的各项参数生成控制区启动/停止生成过程音频播放区试听和下载生成的音频3.2 基础使用流程在文本输入框中输入要转换的文字(可选)上传参考音频用于声音克隆调整生成参数(或使用默认值)等待界面右下角显示已就绪点击生成按钮等待生成完成后试听或下载音频重要提示务必等待实时规范化文本同步完成(界面右下角显示已就绪)再点击生成按钮否则可能导致断句不准或漏字。3.3 声音克隆功能Fish-Speech 1.5支持通过参考音频克隆特定音色准备5-10秒的干净人声录音(WAV或MP3格式)点击上传参考音频按钮选择文件在参考文本框中准确输入录音中的文字内容系统将自动提取音色特征并应用于后续生成最佳实践使用安静的录音环境避免背景噪音和回声说话自然不要刻意改变音调确保参考文本与录音内容完全一致4. API接口使用4.1 API基础信息Fish-Speech 1.5提供了RESTful API接口方便集成到其他系统中基础URLhttp://服务器IP:8080/v1/tts支持格式JSON请求方法POST4.2 Python调用示例import requests import json url http://服务器IP:8080/v1/tts headers {Content-Type: application/json} data { text: 欢迎使用Fish-Speech 1.5文本转语音系统, temperature: 0.7, top_p: 0.7, repetition_penalty: 1.2, format: wav } response requests.post(url, headersheaders, jsondata) if response.status_code 200: with open(output.wav, wb) as f: f.write(response.content) print(音频生成成功) else: print(f请求失败状态码{response.status_code})4.3 cURL调用示例curl -X POST http://服务器IP:8080/v1/tts \ -H Content-Type: application/json \ -d { text: 这是一个通过API调用的测试语音, temperature: 0.7, top_p: 0.75, repetition_penalty: 1.3, format: mp3 } \ --output output.mp35. 参数详解与调优建议5.1 基础参数参数说明默认值推荐范围text要合成的文本无不超过500字format输出音频格式wavwav/mp3/flacmax_new_tokens每批次最大令牌数1024512-20485.2 高级参数调优5.2.1 温度(temperature)控制生成语音的随机性和多样性0.6-0.65非常稳定适合新闻播报、正式场合0.7-0.75(默认)平衡点适合大多数场景0.8-0.85更具表现力适合故事讲述、创意内容5.2.2 Top-P(核采样)影响词汇选择和语音流畅度0.6-0.65保守选择适合技术文档0.7-0.75(默认)平衡选择0.8-0.85更丰富的表达可能增加口语化特征5.2.3 重复惩罚(repetition_penalty)防止语音中出现重复内容1.0-1.1基本不抑制重复1.2-1.3(默认)适度抑制1.4-1.5强力抑制适合诗歌等易重复文本5.3 声音克隆参数参数说明推荐值reference_audio参考音频文件路径5-10秒干净音频reference_text参考音频对应的文本必须准确匹配use_memory_cache是否缓存音色特征true(推荐)6. 常见问题与解决方案6.1 服务无法启动症状访问7860或8080端口无响应解决方案检查服务状态supervisorctl status查看错误日志tail -100 /var/log/fish-speech-webui.err.log检查端口占用netstat -tlnp | grep 7860 netstat -tlnp | grep 80806.2 生成质量不佳症状语音不自然、断句错误、音质差解决方案确保文本规范化完成(界面显示已就绪)调整温度(0.6-0.75)和Top-P(0.65-0.8)检查参考音频质量(清晰、无噪音)对于长文本设置chunk_length1006.3 GPU内存不足症状CUDA out of memory错误解决方案减小max_new_tokens(建议512)设置chunk_length100关闭不必要的服务释放显存作为最后手段使用--device cpu参数(不推荐)7. 总结与最佳实践Fish-Speech 1.5通过创新的DualAR架构提供了高质量的文本转语音解决方案。以下是一些使用建议文本准备使用标准标点符号避免过长段落(建议300字以内)重要内容可分段生成参数调优从默认参数开始优先调整温度和Top-P遇到重复问题时增加repetition_penalty声音克隆准备高质量的参考音频确保参考文本准确同一音色可重复使用性能优化批量处理使用API接口长文本设置适当chunk_length定期清理outputs目录Fish-Speech 1.5平衡了质量与效率是各类语音合成应用的理想选择。无论是内容创作、教育辅助还是商业应用都能提供自然流畅的语音输出体验。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。

更多文章