Skip to content
 文档中心

音色克隆API

音色状态说明

音色在训练过程中会经历以下状态:

  • Init: 初始状态,刚创建的音色栏位
  • Training: 训练中,正在处理音频文件
  • Success: 训练成功,音色可以正常使用
  • Failed: 训练失败,需要重新训练

1. 创建音色栏位

创建音色栏位

创建一个新的音色栏位,为后续的音色训练做准备。创建成功后会返回音色ID和默认名称。

POSThttps://xrobo.qiniu.com/v1/voice-clones
点击展开

基本信息

Host:https://xrobo.qiniu.com
Base Path:
Method:POST
返回类型:application/json

请求参数

参数名类型必填位置说明
model_idstring-音色模型ID,固定值为 "QN_ACV"

请求头

Header名类型必填说明
AuthorizationstringBearer token认证
Content-Typestring请求内容类型

请求示例

{
  "model_id": "QN_ACV"
}

响应示例

{
  "code": 0,
  "msg": "",
  "reqid": "req_12345678",
  "data": {
    "id": "voice_clone_abc123",
    "name": "复刻音色-A1B2C",
    "language": "",
    "demo_url": "",
    "state": "Init"
  }
}

状态码

0创建成功
400请求参数错误
401未授权访问
500服务器内部错误

2. 训练音色

训练音色

使用音频文件训练指定的音色,或仅更新音色名称。 如果提供音频URL,系统将根据音频进行训练;如果仅提供名称,则只更新音色名称。

PUThttps://xrobo.qiniu.com/v1/voice-clones/{id}
点击展开

基本信息

Host:https://xrobo.qiniu.com
Base Path:
Method:PUT
返回类型:application/json

请求参数

参数名类型必填位置说明
idstring-音色唯一标识符,由创建音色栏位接口返回
keystring-音频文件URL。为空时仅修改名称,不为空时根据音频文件进行训练
namestring-音色名称,限制20字符以内(汉字/字母/数字都算一个字符)

请求头

Header名类型必填说明
AuthorizationstringBearer token认证
Content-Typestring请求内容类型

请求示例

{
  "key": "https://example.com/voice-sample.wav",
  "name": "我的专属音色"
}

响应示例

{
  "code": 0,
  "msg": "",
  "reqid": "req_12345678",
  "data": {
    "id": "voice_clone_abc123",
    "name": "我的专属音色",
    "language": "zh",
    "demo_url": "https://example.com/demo.wav",
    "state": "Training"
  }
}

状态码

0训练请求提交成功
400请求参数错误
401未授权访问
404音色不存在
500服务器内部错误

INFO

  1. 音色名称限制: 音色名称最多20个字符,汉字、字母、数字都算作一个字符
  2. 音频文件要求: 训练音频建议时长在10-60秒之间,音质清晰,无背景噪音
  3. 训练时间: 音色训练通常需要几分钟到十几分钟,请耐心等待

3. 获取音色信息

获取音色信息

根据音色ID获取指定音色的详细信息,包括名称、语言、试听链接和当前状态。

GEThttps://xrobo.qiniu.com/v1/voice-clones/{id}
点击展开

基本信息

Host:https://xrobo.qiniu.com
Base Path:
Method:GET
返回类型:application/json

请求参数

参数名类型必填位置说明
idstring-音色唯一标识符

请求头

Header名类型必填说明
AuthorizationstringBearer token认证

响应示例

{
  "code": 0,
  "msg": "",
  "reqid": "req_12345678",
  "data": {
    "id": "voice_clone_abc123",
    "name": "我的专属音色",
    "language": "zh",
    "demo_url": "https://example.com/demo.wav",
    "state": "Success"
  }
}

状态码

0获取成功
401未授权访问
404音色不存在
500服务器内部错误

INFO

状态检查: 只有状态为"Success"的音色才能正常使用

4. 获取音色列表

获取音色列表

获取当前用户账户下所有的音色克隆列表,包括各种状态的音色。

GEThttps://xrobo.qiniu.com/v1/voice-clones
点击展开

基本信息

Host:https://xrobo.qiniu.com
Base Path:
Method:GET
返回类型:application/json

请求头

Header名类型必填说明
AuthorizationstringBearer token认证

响应示例

{
  "code": 0,
  "msg": "",
  "reqid": "req_12345678",
  "data": {
    "voices": [
      {
        "id": "voice_clone_abc123",
        "name": "我的专属音色",
        "language": "zh",
        "demo_url": "https://example.com/demo1.wav",
        "state": "Success"
      },
      {
        "id": "voice_clone_def456",
        "name": "复刻音色-X9Y8Z",
        "language": "",
        "demo_url": "",
        "state": "Training"
      }
    ]
  }
}

状态码

0获取成功
401未授权访问
500服务器内部错误

5. 删除音色

删除音色

删除指定的音色克隆。删除后该音色将无法恢复,请谨慎操作。

DELETEhttps://xrobo.qiniu.com/v1/voice-clones/{id}
点击展开

基本信息

Host:https://xrobo.qiniu.com
Base Path:
Method:DELETE
返回类型:application/json

请求参数

参数名类型必填位置说明
idstring-待删除的音色唯一标识符

请求头

Header名类型必填说明
AuthorizationstringBearer token认证

响应示例

{
  "code": 0,
  "msg": "",
  "reqid": "req_12345678",
  "data": {}
}

状态码

0删除成功
401未授权访问
404音色不存在
500服务器内部错误

WARNING

删除音色后无法恢复,请谨慎操作