Logo

GPT-SoVITS API调用指南:实现高效、灵活的语音合成

gptsovits-api

GPT-SoVITS简介

GPT-SoVITS是一个优秀的零样本(或少样本)中文语音克隆项目。它结合了GPT和SoVITS技术,能够实现高质量的语音合成。为了更好地支持API调用,项目维护者对原有的api.py进行了改进,推出了功能更强大的api2.py。本文将详细介绍api2.py的使用方法,帮助开发者快速上手并实现灵活的语音合成功能。

api2.py的优势

相比原版api.py,api2.py具有以下优点:

  1. 支持中英混合文本
  2. 能够按标点符号自动切分句子
  3. 提供更多自定义选项
  4. 使用更加灵活方便

这些改进大大提高了API的实用性和易用性,使得开发者能够更加得心应手地进行语音合成任务。

安装和配置

要使用api2.py,首先需要下载并将其放置在GPT-SoVITS软件目录下。执行命令与原版api.py相同,只需将文件名由api.py改为api2.py即可。默认情况下,api2.py会监听127.0.0.1:9880。

启动选项

api2.py提供了多种启动选项,以适应不同的使用场景:

1. 使用默认模型并指定参考音频

.
untimeinary api2.py -dr "123.wav" -dt "一二三四五六七。" -dl "zh"

这个命令会使用默认模型,并将123.wav作为参考音频,其文本内容为"一二三四五六七。",语言为中文。

启动命令示例

2. 指定IP地址和端口

.
untimeinary api2.py -a "127.0.0.1" -p 9001

这个命令将API服务绑定到127.0.0.1:9001。

3. 使用自定义训练模型

.
untimeinary api2.py -s "SoVITS_weights/你的模型名" -g "GPT_weights/你的模型名" -dr "参考音频路径" -dt "参考音频文字内容" -dl zh

这个命令允许使用自己训练的模型进行语音合成。需要注意的是,使用自定义模型时必须同时指定参考音频。

4. 强制使用CPU推理

.
untimeinary api2.py -d cpu

默认情况下,api2.py会优先使用CUDA或MPS(Mac)进行推理。如果需要强制使用CPU,可以添加-d cpu参数。

API调用示例

api2.py支持GET和POST两种请求方式。以下是一些调用示例:

GET请求示例

http://127.0.0.1:9880?text=亲爱的朋友你好啊,希望你的每一天都充满快乐。&text_language=zh

这个请求将合成指定的中文文本。

POST请求示例

{
    "text": "先帝创业未半而中道崩殂,今天下三分,益州疲弊,此诚危急存亡之秋也。",
    "text_language": "zh"
}

通过POST请求,可以发送更复杂的参数,如上例中的较长文本。

指定参考音频的调用示例

http://127.0.0.1:9880?refer_wav_path=wavs/5.wav&prompt_text=为什么御弟哥哥,甘愿守孤灯。&prompt_language=zh&text=亲爱的朋友你好啊,希望你的每一天都充满快乐。&text_language=zh

这个例子展示了如何在请求中指定参考音频、参考文本以及要合成的目标文本。

返回结果

API调用成功时,将直接返回WAV格式的音频流,可以直接播放或保存为文件。HTTP状态码为200。

如果调用失败,将返回包含错误信息的JSON,HTTP状态码为400。例如:

{"code": 400, "message": "未指定参考音频且接口无预设"}

常见问题与解决方案

Q: 如何切换不同的模型?

A: api2.py不支持动态切换模型。推荐的做法是为每个模型启动一个独立的API服务,绑定不同的端口。例如:

  • 默认模型(9880端口):
    .
    

untimeinary api2.py -dr "5.wav" -dt "今天好开心" -dl zh


- 自定义模型(9881端口):
```bash
.
untimeinary api2.py -p 9881 -s "SoVITS_weights/mymode-e200.pth" -g "GPT_weights/mymode-e200.ckpt" -dr "wavs/10.wav" -dt "御弟哥哥,为什么甘愿守孤灯" -dl zh

这种方式可以同时运行多个模型,通过不同的端口进行访问。

结语

GPT-SoVITS的api2.py为开发者提供了一个强大而灵活的语音合成API接口。通过本文的详细介绍,相信大家已经对api2.py的使用有了全面的了解。无论是用于个人项目还是商业应用,api2.py都能满足多样化的语音合成需求。

在实际应用中,开发者可以根据具体需求选择合适的启动参数和调用方式。同时,也要注意合理使用计算资源,选择适当的推理设备。对于需要同时使用多个模型的场景,可以通过启动多个API服务来实现。

随着语音合成技术的不断发展,GPT-SoVITS项目也在持续更新和改进。建议开发者关注项目的GitHub页面,及时了解最新的功能和优化。通过灵活运用api2.py,相信大家都能够在各自的项目中实现高质量的语音合成功能。

GPT-SoVITS项目示例

最后,希望本文能够帮助更多的开发者了解和使用GPT-SoVITS项目,共同推动语音合成技术的发展与应用。如果在使用过程中遇到任何问题,欢迎在项目的GitHub页面提出issue或讨论,让我们一起完善这个优秀的开源项目!

最新项目

Project Cover
豆包MarsCode
豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。
Project Cover
AI写歌
Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。
Project Cover
商汤小浣熊
小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。
Project Cover
有言AI
有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。
Project Cover
Kimi
Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。
Project Cover
吐司
探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。
Project Cover
SubCat字幕猫
SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。
Project Cover
AIWritePaper论文写作
AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。
Project Cover
稿定AI
稿定设计 是一个多功能的在线设计和创意平台,提供广泛的设计工具和资源,以满足不同用户的需求。从专业的图形设计师到普通用户,无论是进行图片处理、智能抠图、H5页面制作还是视频剪辑,稿定设计都能提供简单、高效的解决方案。该平台以其用户友好的界面和强大的功能集合,帮助用户轻松实现创意设计。
投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号