前言说明
CosyVoice 声音复刻服务依托生成式语音大模型,仅需 10–20 秒音频样本,即可生成高度相似、自然流畅的定制音色,无需传统训练流程。声音设计支持通过文本描述生成专属音色,可自定义多语言及多维度音色特征,适用于广告配音、角色塑造、有声内容创作等场景。声音复刻 / 设计与语音合成为前后衔接的两个环节,本文档重点说明声音复刻 / 设计相关参数及语音合成接口详情。
接口概览
| 接口 | 路由 | 说明 |
|---|---|---|
| 声音克隆/设计 | POST https://www.yuntts.com/api/v1/cosyvoice-create-voice | 创建自定义音色(支持声音克隆和声音设计两种模式) |
| 更新音色 | POST https://www.yuntts.com/api/v1//cosyvoice-update-voice | 更新声音复刻音色(仅限复刻) |
| 语音合成 | POST https://www.yuntts.com/api/v1/cosyvoice-synthesize | 使用指定模型和音色进行语音合成 |
| 删除音色 | POST https://www.yuntts.com/api/v1/cosyvoice-delete-voice | 删除已创建的自定义音色 |
模型说明
支持的模型列表
| 模型名称 | 说明 | 支持声音克隆 | 支持声音设计 | 语音合成 |
|---|---|---|---|---|
cosyvoice-v3.5-plus |
v3.5 增强版(推荐) | ✅ | ✅ | ✅ |
cosyvoice-v3.5-flash |
v3.5 极速版 | ✅ | ✅ | ✅ |
cosyvoice-v3-plus |
v3 增强版 | ✅ | ✅ | ✅ |
cosyvoice-v3-flash |
v3 极速版 | ✅ | ✅ | ✅ |
cosyvoice-v2 |
v2 经典版 | ✅ | ❌ | ✅ |
cosyvoice-v1 |
v1 基础版 | ✅ | ❌ | ✅ |
注意事项
- 创建的音色只能在指定的目标模型中使用
接口认证
所有接口都需要在请求头中携带 API Key:
Authorization: Bearer YOUR_API_KEY
API Key 可在:个人中心→我的密钥获取
声音克隆接口
通过上传音频文件或提供音频 URL 来创建自定义音色。
接口地址
POST https://www.yuntts.com/api/v1/cosyvoice-create-voice
请求头
| 字段名 | 类型 | 必填 | 描述 | 说明 |
|---|---|---|---|---|
| Authorization | string | 是 | Bearer Token | Token为密钥 |
| Content-Type | string | 是 | application/json | 传递url使用 |
| Content-Type | string | 是 | multipart/form-data | 传递file使用 |
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| name | string | 是 | 音色名称(最多20字符) |
| target_model | string | 是 | 目标模型,如:cosyvoice-v3-flash |
| url | string | 否 | 音频URL(与file二选一) |
| file | file | 否 | 音频文件(与url二选一) |
| prefix | string | 否 | 音色ID前缀,默认:yuntts |
| language_hints | string | 否 | 语言提示(告诉模型你上传的音色是什么语音 |
| enable_preprocess | boolean | 否 | 是否启用预处理 |
| max_prompt_audio_length | float | 否 | 最大音频长度(秒) |
language_hints 参数说明
该参数用于辅助模型识别样本音频(原始参考音频)的语种,从而更准确地提取音色特征,提升复刻效果。若设置的语言提示与实际音频语言不符(例如为中文音频设置 en),系统将忽略此提示,并依据音频内容自动检测语言。
取值范围(因模型而异):
| 模型 | 取值 | 说明 |
|---|---|---|
| cosyvoice-v3-plus | zh | 中文(默认值) |
| en | 英文 | |
| fr | 法语 | |
| de | 德语 | |
| ja | 日语 | |
| ko | 韩语 | |
| ru | 俄语 | |
| cosyvoice-v3.5-plus cosyvoice-v3.5-flash cosyvoice-v3-flash |
zh | 中文(默认值) |
| en | 英文 | |
| fr | 法语 | |
| de | 德语 | |
| ja | 日语 | |
| ko | 韩语 | |
| ru | 俄语 | |
| pt | 葡萄牙语 | |
| th | 泰语 | |
| id | 印尼语 | |
| vi | 越南语 |
对于中文方言(例如东北话、粤语等),建议仍将 language_hints 设置为 zh,方言风格应在后续语音合成调用中通过文本内容或 instruct 等参数进行控制,可查看《CosyVoice语音合成指令控制教程说明》。
音频文件要求
- 支持格式:MP3、WAV、M4A
- 文件大小:最大 10MB
- 音频时长:建议 10-30 秒
- 音频质量:建议 16kHz 以上采样率
响应示例
{
"code": 200,
"message": "创建成功",
"data": {
"voice_id": "yuntts_xxxxxx",
"model": "cosyvoice-v3.5-plus",
"name": "我的音色",
"created_at": "2024-01-01 12:00:00"
}
}
错误响应
{
"code": 400,
"message": "错误信息"
}
声音设计接口
通过文字描述来设计自定义音色。
接口地址
POST https://www.yuntts.com/api/v1/cosyvoice-create-voice
请求头
| 字段名 | 类型 | 必填 | 描述 |
|---|---|---|---|
| Authorization | string | 是 | Bearer Token |
| Content-Type | string | 是 | application/json |
请求参数
克隆和设计是用一个接口,当提供 voice_prompt 和 preview_text 时,自动切换为声音设计模式。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
name |
string | 是 | 音色名称,最多 20 字符 |
target_model |
string | 是 | 目标模型,支持 v3 和 v3.5 系列,具体见模型说明 |
voice_prompt |
string | 是 | 声音描述,如:温柔的女声、专业的主持人 |
preview_text |
string | 是 | 预览文本,至少 15 个字符 |
description |
string | 否 | 音色描述 |
language_hints |
string | 否 | 语言提示(告诉模型你上传的音色是什么语音) |
prefix |
string | 否 | 音色前缀,默认 yuntts |
sample_rate |
int | 否 | 采样率:16000/22050/24000/44100 |
声音描述示例
- "温柔的女声,像主持人一样专业"
- "低沉有磁性的男声,适合讲故事"
- "活泼开朗的童声"
- "成熟稳重的中年男声"
响应示例
{
"code": 200,
"message": "创建成功",
"data": {
"voice_id": "yuntts_xxxxxx",
"model": "cosyvoice-v3.5-plus",
"name": "我的音色",
"created_at": "2024-01-01 12:00:00"
}
}
语音合成接口
使用指定的模型和音色进行语音合成。
接口地址
POST https://www.yuntts.com/api/v1/cosyvoice-synthesize
请求头
| 字段名 | 类型 | 必填 | 描述 |
|---|---|---|---|
| Authorization | string | 是 | Bearer Token |
| Content-Type | string | 是 | application/json |
请求参数
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| model | string | 是 | - | 模型名称,如:cosyvoice-v3-flash |
| voice | string | 是 | - | 音色ID,系统音色或自定义音色 |
| text | string | 是 | - | 待合成文本(支持SSML) |
| format | string | 否 | mp3 | 音频格式:mp3/wav/pcm/ogg |
| sample_rate | int | 否 | 22050 | 采样率:8000/16000/22050/24000/44100/48000 |
| volume | int | 否 | 50 | 音量:0-100 |
| rate | float | 否 | 1.0 | 语速:0.5-2.0 |
| pitch | float | 否 | 1.0 | 音调:0.5-2.0 |
| seed | int | 否 | 0 | 随机种子:0-65535,0表示随机 |
| instruction | string | 否 | - | 指令控制(最多100字符),查看[指令控制教程] |
| enable_ssml | boolean | 否 | false | 是否启用SSML |
| stream | boolean | 否 | false | 是否启用流式输出 |
响应示例(非流式)
{
"code": 200,
"message": "语音合成成功",
"data": {
"audio": {
"url": "https://example.com/audio.mp3",
"sample_rate": 22050,
"format": "mp3"
}
},
"char_count": 100,
"cost": 0.01
}
响应字段说明
| 字段 | 类型 | 说明 |
|---|---|---|
data.audio.url |
string | 音频文件 URL |
char_count |
int | 实际消耗的字符数 |
cost |
float | 实际扣费金额(元) |
删除音色接口
删除已创建的自定义音色。
接口地址
POST https://www.yuntts.com/api/v1/cosyvoice-delete-voice
请求头
| 字段名 | 类型 | 必填 | 描述 |
|---|---|---|---|
| Authorization | string | 是 | Bearer Token |
| Content-Type | string | 是 | application/json |
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| voice_id | string | 是 | 要删除的音色ID |
权限说明
- 只有音色创建者和管理员可以删除
- 删除前会验证权限
请求示例
POST https://www.yuntts.com/api/v1/cosyvoice-delete-voice
Content-Type: application/json
Authorization: Bearer YOUR_API_KEY
{
"voice_id": "yuntts-xxx"
}
响应示例
{
"code": 200,
"message": "删除成功"
}
更新音色
⚠️ 注意: 仅限声音复刻音色,声音设计音色不支持更新。
接口信息
POST https://www.yuntts.com/api/v1/cosyvoice-delete-voice
请求头
| 字段名 | 类型 | 必填 | 描述 |
|---|---|---|---|
| Authorization | string | 是 | Bearer Token |
| Content-Type | string | 是 | application/json |
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| voice_id | string | 是 | 要更新的音色ID |
| url | string | 否 | 新音频URL(与file二选一) |
| file | file | 否 | 新音频文件(与url二选一) |
请求示例
POST https://www.yuntts.com/api/v1/cosyvoice-update-voice
Content-Type: multipart/form-data
Authorization: Bearer YOUR_API_KEY
{
"voice_id": "yuntts-xxx",
"file": [二进制音频文件]
}
系统音色
系统音色请查看《CosyVoice 系统音色列表》
计费说明
字符计费规则
- 汉字按 2 个字符计算
- 其他字符(英文、数字、符号等)按 1 个字符计算
模型价格(元/万字符)
| 模型 | 价格 |
|---|---|
cosyvoice-v3.5-plus |
2.5 |
cosyvoice-v3.5-flash |
1.8 |
cosyvoice-v3-plus |
2 |
cosyvoice-v3-flash |
3 |
cosyvoice-v2 |
3 |
cosyvoice-v1 |
2 |
错误码说明
| HTTP 状态码 | 错误码 | 说明 |
|---|---|---|
| 400 | model_required |
模型参数不能为空 |
| 400 | voice_required |
音色参数不能为空 |
| 400 | text_required |
文本参数不能为空 |
| 400 | insufficient_balance |
余额不足 |
| 400 | instruction_too_long |
指令长度超过限制 |
| 401 | - | 未授权或 API Key 无效 |
| 403 | permission_denied |
没有权限删除该音色 |
| 404 | voice_not_found |
音色不存在 |
| 500 | api_request_failed |
API 请求失败 |
| 500 | balance_deduction_failed |
余额扣除失败 |
| 500 | order_creation_failed |
订单创建失败 |
| 500 | synthesis_failed |
语音合成失败 |
常见问题
Q: 声音克隆和声音设计有什么区别?
A: 声音克隆需要上传音频文件,声音设计只需要文字描述。声音设计仅支持 v3.5 系列模型。
Q: 创建的音色可以在其他模型中使用吗?
A: 不可以,创建音色时指定的目标模型决定了该音色只能在哪个模型中使用。
Q: 合成失败会扣费吗?
A: 不会,合成失败会自动退款。
Q: 免费额度是每月重置吗?
A: 是的,免费额度每月初自动重置。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。


评论(0)