帮助与文档 > 产品文档 > 智能语音服务 > API文档 > 大模型语音合成模型定制
大模型语音合成模型定制

个性化音色定制

说明

Hi,您好,欢迎使用有道智云个性化大模型语音定制接口服务。

本文档主要针对需要集成HTTP API的技术开发工程师,详细描述个性化语音定制相关的技术内容。

如果您有与我们商务合作的需求,可以通过以下方式联系我们:

商务邮箱: AIcloud_Business@corp.youdao.com

如果您对文档内容有任何疑问,可以通过以下几种方式联系我们:

客服QQ:1906538062

智云翻译技术交流QQ 1群: 652880659

智云翻译技术交流QQ 2群: 669384425

智云翻译技术交流QQ 3群: 807539209

智云翻译技术交流QQ 4群: 936752411

联系邮箱: zhiyun@corp.youdao.com

温馨提示:

  • 本文档主要针对开发人员,接入测试前需要获取应用ID和应用密钥;如果您还没有,请按照 新手指南 获取。
  • 平台向每个账户赠送50元的体验金,供用户集成前测试所用。

接口说明

个性化大模型语音定制服务,基于网易有道的大模型语音识别技术,通过上传少量录音,训练语音引擎定制自己声音模型,赋予产品声音形象,可在读小说、播音主持、讲故事、客服服务等场景应用。 服务主要分模型定制和模型调用两部分。

协议须知

调用方在集成个性化语音定制服务API时,请遵循以下规则。

规则 描述
传输方式 HTTPS
请求方式 GET或POST
字符编码 统一使用UTF-8 编码
请求格式 表单
响应格式 JSON

接口调用参数

个性化大模型语音定制调用地址:

https://openapi.youdao.com

音频格式

格式支持:wav, mp3等格式

模型定制阶段

创建语音包接口

  • 接口uri:/ttsLlm/packet/create

  • 请求方式:POST

  • 接口说明:

    创建语音包接口,通过语音包收集录音,定制个性化音色模型

    接口参数:

参数名称 类型 含义 是否必填 示例
appKey String 应用ID True 可在 应用管理 查看
curtime String 时间戳(秒) True 1666600000
salt String 随机字符串 True
sign String 签名信息:sha256(appKey + salt + curtime +密钥) True
signType String 签名类型 True v4
name String 语音包名称 (不超过50字符) True 语音包
gender String 性别 True male或female
description String 语音包描述 (不超过250字符) False 这是语音包描述
  • 响应结果

{
"errorCode":"0",//错误码
"msg":"success",//信息说明
"result":{
    "packetId":"P_24A59791123C49A9B498DCD1972803B3"//返回的语音包ID
  }
}

录音上传接口

  • 接口uri:/ttsLlm/packet/upload

  • 请求方式:POST

  • 接口说明:

    上传语音,指定语种,把语音上传到语音包,为训练作准备 注:上传音频文件需要有扩展名,例如xxx.mp3, xxx.wav等, 且录音中必须只有一种音色,30s~5min

  • 接口参数:

参数名称 类型 含义 是否必填 示例
appKey String 应用ID True 可在 应用管理 查看
curtime String 时间戳(秒) True 1666600000
salt String 随机字符串 True
sign String 签名信息:sha256(appKey + salt + curtime +密钥) True
signType String 签名类型 True v4
file MultipartFile 录制评测音频 True MultipartFile,音频格式:wav, mp3等格式,30s ~ 5min
packetId String 语音包id True P_24A59791123C49A9B498DCD1972803B3
lan String 语言类型 True en

支持语言

英文名 中文名 代码
English (US) 英语 en
Mandarin (China) 普通话(中国) zh-CHS
  • 响应结果
{
"errorCode":"0",//错误码
"msg":"success",//信息说明
}

清空录音接口

  • 接口uri:/customVoice/packet/deleteVoice

  • 请求方式:POST

  • 接口说明:

    清空语音包内的语音,重新上传语音 注:不要直接覆盖原音频

  • 接口参数:

参数名称 类型 含义 是否必填 示例
appKey String 应用ID True 可在 应用管理 查看
curtime String 时间戳(秒) True 1666600000
salt String 随机字符串 True
sign String 签名信息:sha256(appKey + salt + curtime +密钥) True
signType String 签名类型 True v4
packetId String 语音包id True P_24A59791123C49A9B498DCD1972803B3
  • 响应结果
{
"errorCode":"0",//错误码
"msg":"success",//信息说明
}

启动训练接口

  • 接口uri:/ttsLlm/model/launch

  • 请求方式:POST

  • 接口说明:

    启动训练, 前置条件是必须上传了音频,待模型训练完成后可以调用合成接口

  • 接口参数:

参数名称 类型 含义 是否必填 示例
appKey String 应用ID True 可在 应用管理 查看
curtime String 时间戳(秒) True 1666600000
salt String 随机字符串 True UUID(唯一识别通用码)
sign String 签名信息:sha256(appKey + salt + curtime +密钥) True sha256(appKey + salt + curtime +密钥)
signType String 签名类型 True v4
packetId String 语音包id True P_24A59791123C49A9B498DCD1972803B3
gender String 性别 False 非必填,若填必需和创建语音包一致
  • 响应结果
{
"errorCode":"0",//错误码
"msg":"success",//信息说明
"result": {	
    "estimateSeconds":10 //剩余时间 秒
        "modelList":[
          {
            "modelId":"M_A0852354A2ED4BB19DE759F1B80C6E37", //模型id 启动成功返回
            "createTime":"2023-04-23 13:59:43", // 创建时间 启动成功返回
            "taskId":"T_6381E68890C843488FD9569217EFA36A", // 训练任务id 启动成功返回
            "modelType":"vc", //模型类型
            "modelStatus":"started", //模型状态("started":训练启动,"failed":启动失败)
            "failedReason":"" // 失败原因 启动失败返回
          }
        ]
    }
}

查询训练状态接口

  • 接口uri:/ttsLlm/model/checkStatus

  • 请求方式:GET

  • 接口说明: 查询当前训练任务状态

  • 接口参数:

参数名称 类型 含义 是否必填 示例
appKey String 应用ID True 可在 应用管理 查看
curtime String 时间戳(秒) True 1666600000
salt String 随机字符串 True
sign String 签名信息:sha256(appKey + salt + curtime +密钥) True
signType String 签名类型 True v4
packetId String 语音包id True P_24A59791123C49A9B498DCD1972803B3
taskId String 训练任务id True T_D2560E2DCF6E435EA7BEDD88AC88B9CC
  • 响应结果
{
"errorCode":"0",//错误码
"msg":"success",//信息说明
"result": {
    "taskId":"T_D2560E2DCF6E435EA7BEDD88AC88B9CC", // 训练任务id	
    "estimateSeconds":"10", //剩余时间 秒
    "packetId":"P_24A59791123C49A9B498DCD1972803B3",//语音包id
    "modelId":"M_A0852354A2ED4BB19DE759F1B80C6E37",//模型id
    "status":"1" //训练状态 0:开始,1:完成,2:终止,3:失败,4:语音包创建
    }
}

删除语音包接口

  • 接口uri:/ttsLlm/packet/delete

  • 请求方式:POST

  • 接口说明: 删除指定语音包,同时会删除包含录音及训练模型

  • 接口参数:

参数名称 类型 含义 是否必填 示例
appKey String 应用ID True 可在 应用管理 查看
curtime String 时间戳(秒) True 1666600000
salt String 随机字符串 True
sign String 签名信息:sha256(appKey + salt + curtime +密钥) True
signType String 签名类型 True v4
packetId String 语音包id True P_24A59791123C49A9B498DCD1972803B3
  • 响应结果
{
"errorCode":"0",//错误码
"msg":"success",//信息说明
}

训练任务状态码

状态ID 状态描述
0 训练任务启动
1 训练任务结束
2 训练任务已终止
3 训练任务失败
4 语音包创建阶段,训练任务未启动

训练错误代码

错误码 含义
101 缺少必填的参数,首先确保必填参数齐全,然后,确认参数书写是否正确。
102 不支持的语言类型
103 翻译文本过长
104 不支持的API类型
105 不支持的签名类型
106 不支持的响应类型
107 不支持的传输加密类型
108 应用ID无效,注册账号,登录后台创建应用和实例并完成绑定,可获得应用ID和应用密钥等信息
109 batchLog格式不正确
110 无相关服务的有效实例,应用没有绑定服务。注:某些服务的结果发音需要tts,需要在控制台创建语音合成绑定应用后方能使用。
111 开发者账号无效
112 请求服务无效
113 q不能为空
114 不支持的图片传输方式
115 语音包异常:不存在或者已删除或者不属于当前devId
116 referenceSynthesisId已存在
201 解密失败,可能为DES,BASE64,URLDecode的错误
202 签名检验失败
203 访问IP地址不在可访问IP列表
205 请求的接口与应用的平台类型不一致,确保接入方式(Android SDK、IOS SDK、API)与创建的应用平台类型一致。
206 因为时间戳无效导致签名校验失败
207 重放请求
303 服务端的其它异常
401 账户已经欠费停
402 offlinesdk不可用
403 无权限
404 资源不存在
405 auth服务不可用
411 访问频率受限,请稍后访问
412 超过最大翻译字符数
VC001 不支持训练类型
VC002 不支持性别类型
VC003 无有效ticket
VC004 语音包创建失败
VC005 语音包id不存在
VC006 环境音检测失败
VC007 语音包重训练次数耗尽
VC008 当前存在训练中的任务
VC009 启动训练失败
VC010 训练任务id不存在
VC011 删除语音包失败
VC012 获取语音包列表失败
VC013 获取训练状态失败
VC014 语音评测失败
VC015 开发者id为空
VC016 userId命名空间为空
VC022 回调地址错误
VC023 未知合成任务
VC024 合成URL错误
VC025 获取合成结果失败
VC026 文件大小超限
VC027 description超出限制
VC028 name字段超出限制
VC029 order字段取值错误
VC030 text字段超限
VC031 当日创建语音包到达上限
VC032 音频时长错误
VC033 userId和packetId不匹配
VC034 语音包录制文本重复
VC036 获取语音包详情失败
VC041 音量过高
VC042 音频格式错误
VC043 音频次序错误
VC044 音频质量过低
VC045 创建任务数超出限制(每天最多创建1000个训练任务)
VC046 音频数量错误
VC047 不支持的启动类型
VC048 处理音频错误
VC049 调用Asr服务错误
VC049 上传音频错误
VC051 文件大小超限
VC052 文件时长不合法