关于Http直接请求方式调用CosyVoice2-API(非代码)

1. 前情提要

  1. 系统版本:Windows下WSL安装的Ubuntu22.4
  2. 版本:CosyVoice2-2024/12
  3. python环境:miniconda3 > python3.10

注:

  1. CosyVoice2的本地安装部署文档参考
  2. 所有的接口请求前缀以实际部署请求接口为准,本示例参考官方文档端口用50000

2. API调用详解

注意注意注意: 每个接口都是分成两次请求,第一次POST请求,得到$event_id后带入同地址的第二次GET请求可得音频下载地址

1. 音频合成接口

请求地址
  1. 第一次:/call/generate_audio/
  2. 第二次:/call/generate_audio/$event_id
请求方式
  1. 第一次:POST
  2. 第二次:GET
参数说明

POST请求参数说明:

​ 不同的推理模式有不同推理操作步骤以及对应的推理模型。根据你所选的推理模式查看对应操作步骤,再去传对应的参数。

参数类型必填示例备注
Headers头部参数
content-typeStringapplication/json内容格式
PayLoad
dataArray数组存放10个参数
— [0]String我是生成式语音大模型待转写文本内容
— [1]String预训练音色推理模式
预训练音色
3s极速复刻
跨语种复刻
自然语言控制
— [2]String中文女预训练音色
— [3]String根据对应操作步骤确定是否必填prompt文本
— [4]String根据对应操作步骤确定是否必填{“path”:“http://xxx/test.wav”}prompt 上传音频,path指向在线访问地址即可
— [5]String根据对应操作步骤确定是否必填格式同[4]prompt录音音频
— [6]String根据对应操作步骤确定是否必填instruct文本
— [7]number0推理种子
— [8]Stringfalse是否流式推送
— [9]number1速度调节(仅支持非流式推理模式下的设置)
参数示例

POST请求参数示例

{
    "data": [
        "我是通义实验室语音团队全新推出的生成式语音大模型,提供舒适自然的语音合成能力。", 
        "预训练音色",
        "中文女",
        "",	
        null,
        null,
        "",
        0,
        "false",
        1
    ]
}
结果说明

POST结果:

参数类型示例说明
event_idString828f4c88b5a743c08980a1e38fa63cd5事件ID

GET结果:

参数类型示例说明
dataArray数组
— pathString${event_id)/140706251637808/21文件请求相对路径
— urlStringhttp://ip:port/stream/${path}文件请求全路径
— sizeString
— orig_nameStringaudio.wav合成音频文件名称
— mime_typeString协议类型
— is_streamBooleantrue是否流式推送
— metaObject{“_type”: “gradio.FileData”}元数据
结果示例
event: generating
data: [{"path": "828f4c88b5a743c08980a1e38fa63cd5/140706251637808/21", "url": "http://ip:port/call/gen/stream/828f4c88b5a743c08980a1e38fa63cd5/140706251637808/21", "size": null, "orig_name": "audio.wav", "mime_type": null, "is_stream": true, "meta": {"_type": "gradio.FileData"}}]

event: complete
data: [{"path": "828f4c88b5a743c08980a1e38fa63cd5/140706251637808/21", "url": "http://127.0.0.1:50000/call/gen/stream/828f4c88b5a743c08980a1e38fa63cd5/140706251637808/21", "size": null, "orig_name": "audio.wav", "mime_type": null, "is_stream": true, "meta": {"_type": "gradio.FileData"}}]

**注意一下:**结果示例中返回的url实际上是错误的,真正的url格式请参考【结果说明】中的url说明

2. 获取操作步骤

请求地址
  1. 第一次:/call/change_instruction/
  2. 第二次:/call/change_instruction/$event_id
请求方式
  1. 第一次:POST
  2. 第二次:GET
参数说明

POST请求参数说明:

参数类型必填示例备注
Headers头部参数
content-typeStringapplication/json内容格式
PayLoad
dataArray[]传推理模式
——[0]String“预训练音色”
参数示例

POST请求参数示例

{
    "data": [
       "预训练音色"
    ]
}
结果说明

POST结果:

参数类型示例说明
event_idString828f4c88b5a743c08980a1e38fa63cd5事件ID

GET结果:

参数类型示例说明
dataArray数组,字符串,Unicode编码
结果示例
event: complete
data: ["1. \u9009\u62e9\u9884\u8bad\u7ec3\u97f3\u8272\n2. \u70b9\u51fb\u751f\u6210\u97f3\u9891\u6309\u94ae"]

3. 获取推理种子

请求地址
  1. 第一次:/call/generate_seed/
  2. 第二次:/call/generate_seed/$event_id
请求方式
  1. 第一次:POST
  2. 第二次:GET
参数说明

POST请求参数说明:

参数类型必填示例备注
Headers头部参数
content-typeStringapplication/json内容格式
PayLoad
dataArray[]传空数组即可
参数示例

POST请求参数示例

{
    "data": []
}
结果说明

POST结果:

参数类型示例说明
event_idString828f4c88b5a743c08980a1e38fa63cd5事件ID

GET结果:

参数类型示例说明
dataArray数组
— valuenumber54349340推理种子
typeString“update”含义暂未可知
结果示例
event: complete
data: [{"value": 54349340, "__type__": "update"}]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值