当前位置: 首页 > news >正文

基于 GPT-SoVITS 实现个性化语音复刻的API服务调用:让小说朗读拥有专属声线

一、前言

在数字阅读时代,个性化语音朗读需求日益增长。本文将演示如何通过 GPT-SoVITS 语音复刻模型 与开源小说阅读软件 “阅读” 的结合,实现自定义语音朗读小说的功能。利用整合包内置的 API 接口,无需复杂开发即可快速搭建专属朗读引擎,让小说角色拥有你熟悉的声音!

二、准备工作

1. 工具与资源清单

  • GPT-SoVITS 整合包(含 API 服务):
    下载地址:Hugging Face Windows 整合包
    (注:需提前安装 7-Zip 解压,ffmpeg 工具已包含在整合包中,无需额外下载)

  • 开源小说阅读软件 “阅读”
    GitHub 项目地址:阅读 - 项目仓库
    (支持 Android/iOS/PC 多平台,本文以 Windows 版为例)

  • Python 环境:整合包已内置 Python 3.9,无需额外安装

2. 环境配置

  1. 解压整合包到任意目录(如D:\GPT-SoVITS
  2. 进入目录,双击go-webui.bat启动服务(首次启动会自动安装依赖,等待约 2 分钟)
  3. 服务启动后,浏览器会自动打开 Web 界面,同时 API 服务运行在本地 http://127.0.0.1:9874

三、核心步骤:API 对接与软件配置

1. 启动 GPT-SoVITS API 服务

整合包已内置api.pygo-webui.bat会同时启动 Web 界面和 API 服务。

可自定义文件api.bat,内容如下:

runtime\python.exe api.py
pause
  • 关键端口:9880(API 服务端口,确保未被占用)
  • 服务状态:命令行窗口显示Uvicorn running on http://0.0.0.0:9880即表示启动成功

 

之后打开"..GPT-SoVITS-beta0706\config.py" 指定要调用的GPT模型和SoVITS模型

2. 在 “阅读” 软件中配置朗读引擎

步骤 1:打开小说并进入朗读设置
  1. 打开 “阅读” 软件,任意打开一本小说
  2. 点击屏幕左下角 “朗读” 按钮(耳机图标)
  3. 在弹出的朗读控制栏中,点击 “设置” 齿轮图标
步骤 2:添加自定义朗读 API 接口
  1. 在朗读设置中,找到 “朗读引擎” 选项
  2. 点击 “+” 号 新建引擎,在url里输入API链接
  3. API 链接模板:http://内网IP:9880/?refer_wav_path=参考音频路径&prompt_text=参考音频的文本&prompt_language=中文&text={{speakText}}&text_language=中文(本地服务默认地址)
  4. 填写引擎名称,点击 “保存”

 

步骤 3:全局应用自定义引擎
  1. 返回朗读设置主界面,在 “当前引擎” 中选择刚创建的 API 引擎
  2. 点击 “全局” ,确保所有小说朗读使用该引擎

 

3. 测试朗读效果

  • 返回小说页面,点击播放按钮,即可听到基于 GPT-SoVITS 模型生成的语音朗读
  • 支持实时调节语速、音量(在朗读控制栏滑动调节)

四、API 接口详解(api.py核心功能)

整合包提供的 API 遵循简单的 JSON 交互格式,支持文本转语音(TTS)功能:

1. 接口地址

http://127.0.0.1:9880/docs

 

2. 参数说明

 

参数类型必须说明
refer_wav_pathstring参考音频
prompt_textstring参考音频文本
prompt_languagestring语言(中文)
textstring合成的文本语言
text_languagestring语言(中文)
cut_puncstring控制文本分段

五、常见问题与解决方案

1. API 连接失败

  • 检查go-webui.bat是否正常运行,命令行是否有报错
  • 确认 API 链接格式正确
  • 关闭防火墙或添加端口白名单

2. 朗读无声音

  • 确保ffmpeg.exeffprobe.exe位于整合包根目录(整合包已内置,勿删除)
  • 检查模型文件是否存在(训练好的模型需放在SoVITS_weights目录)

3. 文本分段错误

  • 建议在文本中手动添加。!?等标点,帮助 API 正确断句生成音频

六、进阶玩法:训练专属语音模型

如果你希望使用自己或他人的声音朗读:

  1. 准备 3-10 条纯净人声录音(每条 3-10 秒,格式为wav,采样率 44100Hz)
  2. 在整合包 Web 界面中进入 “训练” 模块,上传音频并输入对应文本
  3. 启动训练(约需 1-2 小时,依赖显卡性能),生成的模型会自动保存到SoVITS_weights目录
  4. 在 API 调用时在config.py文件中指定新模型名称,具体操作与前文一致,即可使用专属声线

七、总结

通过 GPT-SoVITS 与 “阅读” 软件的结合,我们实现了低成本、高效率的个性化语音朗读方案。这种方案不仅适用于小说阅读,还可扩展到有声书制作、教育音频生成等场景。后续可探索多语言支持、情感化朗读(如添加语气词)等功能,进一步提升用户体验。

项目地址

  • GPT-SoVITS:GitHub 仓库
  • 阅读软件:GitHub 仓库

本文技术方案仅供学习交流,商业使用需注意语音版权问题。

觉得内容有帮助?点赞收藏关注,获取更多 Python 进阶干货~

相关文章:

  • 静态成员相关知识
  • AOSP的Doze模式-LightIdle初识
  • 测试基础笔记第六天
  • 『Linux_网络』 第二章 UDP_Socket编程
  • 从《周游记3》演绎歌剧版《菊花台》,周杰伦婚礼曲目意大利文版惊喜亮相
  • docker 搭建nacos 2.2.1版本单机版
  • 下一代互联网
  • java怎么完善注册,如果邮箱中途更换,能否判断
  • 2025/4/19 数据库的流程控制函数
  • Redis客户端下载使用
  • 【操作系统原理01】操作系统引论
  • Mysql从入门到上手(二)-全面了解增删改查(CRUD).
  • 《目标检测双雄:YOLO与Faster R-CNN,谁主沉浮?》
  • 文本生成与采样策略 (Text Generation Sampling)
  • c# 字典存储的委托失效?
  • 结合建筑业务讲述TOGAF标准处理哪种架构
  • 毕业论文超清pdf带标签导出
  • goc命令大全
  • spring boot应用部署IIS
  • 【软件测试】
  • 对话地铁读书人|来自法学副教授的科普:读书日也是版权日
  • 亚洲大厦和一个被音乐剧改变的街区
  • 世界最大直径高铁盾构机掘进至长江江心,安全穿越刀鲚保护区
  • 在这些书里,每一种人生都值得认真过
  • 习近平抵达柬埔寨金边国际机场发表书面讲话(全文)
  • 女子称收养女婴10年仍是“黑户”,河北武安:待查明弃婴来源后按程序办理