curl --request POST \
--url https://api.evolink.ai/v1/audios/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "qwen-audio-3.1-tts-flash",
"prompt": "我家的后面有一个很大的花园。"
}
'{
"created": 1790000000,
"id": "task-unified-1790000000-abcd1234",
"model": "qwen-audio-3.1-tts-flash",
"object": "audio.generation.task",
"progress": 0,
"status": "pending",
"task_info": {
"can_cancel": false,
"estimated_time": 3,
"audio_type": "tts"
},
"type": "audio",
"usage": {
"credits_reserved": 0.0144
}
}Qwen Audio 3.1 TTS Flash 语音合成
- 将文本转换为语音音频,单次最多
5000字符 - 提供 68 个系统音色,完整列表见 音色列表;也可以使用你自己用 Voice Enrollment 创建的音色(复刻或设计)
- 自定义音色默认有效期为
6 小时,从创建任务完成时起算;到期后合成返回404(voice_expired),需重新调用 Voice Enrollment 创建音色 - 支持自然语言指令(
instruction)、文本内情感与富语言标签、SSML、自定义发音(hot_fix) - 只接受下方列出的参数,传入其他参数返回
400(unsupported_parameter) - 异步处理模式,使用返回的任务ID 进行查询
- 任务提交后不支持取消
- 生成的音频链接有效期为24小时,请尽快保存
计费说明:
- 按实际 token 用量计费:输入 token(与文本长度相关)和输出 token(与生成音频的时长相关)分别计价
- 提交时按文本长度预扣积分(
usage.credits_reserved),任务完成后按实际用量结算,多退少补;任务失败全额退还 - 数字、字母、符号会被逐个念出来,生成的音频比同样长度的正文长得多,输出 token 也相应更多,实际消耗可能高于预扣
- 同一段文本,放慢语速的指令或标签(如
[very slowly])会让输出 token 明显增加;speech_rate调节和 SSML 插入的停顿不增加输出 token
任务结果(status 为 completed 时):
| 字段 | 说明 |
|---|---|
results[0] | 音频链接 |
result_data[0].audio_url | 音频链接,与 results[0] 相同 |
result_data[0].format | 音频格式 |
result_data[0].sample_rate | 采样率(Hz) |
usage.input_tokens / usage.output_tokens / usage.total_tokens | 本次合成的 token 用量 |
usage.credits_used | 实际消耗积分 |
curl --request POST \
--url https://api.evolink.ai/v1/audios/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "qwen-audio-3.1-tts-flash",
"prompt": "我家的后面有一个很大的花园。"
}
'{
"created": 1790000000,
"id": "task-unified-1790000000-abcd1234",
"model": "qwen-audio-3.1-tts-flash",
"object": "audio.generation.task",
"progress": 0,
"status": "pending",
"task_info": {
"can_cancel": false,
"estimated_time": 3,
"audio_type": "tts"
},
"type": "audio",
"usage": {
"credits_reserved": 0.0144
}
}授权
##所有接口均需要使用Bearer Token进行认证##
获取 API Key:
访问 API Key 管理页面 获取您的 API Key
使用时在请求头中添加:
Authorization: Bearer YOUR_API_KEY
请求体
- Option 1
- Option 2
prompt 和 input 至少提供一个非空文本;同时提供时内容必须一致。response_format 和 format 同时提供时取值必须一致。
待合成的文本
约束:
- 最多
5000字符 - 长文本请保留标点:没有句读的连续长段会被上游截断到约
1500个输出 token(约 120 秒音频),任务仍报成功并按实际生成的 token 计费,网关无法检测这种截断 - 也可用
input传入,至少提供一个非空文本;建议只传一个,同时传入且内容不同时返回400(parameter_conflict) - 文本须在所选音色支持的语言范围内,否则可能出现发音错误
情感与富语言标签: 可直接在文本中嵌入标签,无需额外参数;标签文字计入计费字符
- 控制类标签:设定其后文本的情感或风格,直到遇到下一个控制类标签。
[sad]悲伤、[amazed]惊叹、[deep and loud shouting]深沉大声呐喊、[trembling]颤抖、[angry]愤怒、[excited]兴奋、[sarcastic]讽刺、[curious]好奇、[like dracula]低沉阴森、[bored]无聊、[tired]疲惫、[scornful]轻蔑、[shouting]大喊、[asmr]ASMR 轻柔耳语、[panicked]恐慌、[mischievously]调皮、[empathetic]共情、[whispers]耳语、[reluctantly]不情愿、[crying]哭泣、[serious]严肃、[very slowly]非常缓慢、[very fast]非常快速 - 富语言类标签:在当前位置插入一段拟声效果,不影响前后文本的情感。
[gasp]倒吸一口气、[sighing]叹息、[clears throat]清嗓、[giggles]咯咯笑、[laughing]大笑、[cough]咳嗽、[snorts]哼声
示例: [excited]今天的天气真不错![laughing]我们一起出去玩吧!
enable_ssml 为 true 时,本字段按 SSML 解析
5000\S"我家的后面有一个很大的花园。"
模型名称
qwen-audio-3.1-tts-flash "qwen-audio-3.1-tts-flash"
prompt 的别名,文本长度和使用规则与 prompt 相同
prompt和input至少提供一个非空文本- 同时提供时内容必须一致,否则返回
400(parameter_conflict)
5000"我家的后面有一个很大的花园。"
音色名称,区分大小写
- 共 68 个系统音色,名称、性别、适用场景见 音色列表
- 不传时默认使用
longanhuan_v3.1 - 也可以传你自己用 Voice Enrollment 创建的音色:复刻的形如
qwen-audio-3.1-tts-flash-{前缀}-{32 位标识},设计的形如qwen-audio-3.1-tts-flash-vd-{前缀}-{32 位标识}。只有创建它的账号能用;别的模型创建的音色(如qwen-voice-design的qwen-tts-vd-…)不能用,返回400(invalid_voice);不存在或不属于你的音色返回404(voice_not_found) - 自定义音色默认有效期为
6 小时,从创建任务完成时起算;到期后合成返回404(voice_expired),需重新调用 Voice Enrollment 创建音色
"longanhuan_v3.1"
输出音频格式,支持 mp3、wav、opus,默认 mp3
opus为 Ogg Opus 封装- 也可用
format传入;建议只传一个,同时传入且取值不同时返回400(parameter_conflict)
mp3, wav, opus "mp3"
response_format 的别名,支持 mp3、wav、opus
- 两个字段都未提供时默认使用
mp3 - 同时提供时取值必须一致,否则返回
400(parameter_conflict)
mp3, wav, opus "mp3"
输出采样率(Hz)
response_format为opus时不支持22050和44100- 不传或传
null时使用默认值;传0或列表以外的值返回400
8000, 12000, 16000, 22050, 24000, 44100, 48000, null 24000
音量,取值范围 0 ~ 100
0 <= x <= 10050
语速倍数
1.0:正常语速(默认)2.0:两倍速;0.5:半速
取值范围 0.5 ~ 2.0。调节语速不改变输出 token 数
0.5 <= x <= 21
音调倍数
1.0:默认音调- 大于
1.0声音更高,小于1.0声音更低
取值范围 0.5 ~ 2.0
注意:调节音调会同时改变语速和音频时长
- 音调越高语速越快、时长越短,音调越低语速越慢、时长越长,时长大约按音调值的平方反比变化
- 以一句
1.0时约 2.8 秒的话为例:0.8约 4.3 秒,1.2约 2.1 秒,0.5约 10.9 秒,2.0约 0.7 秒 - 建议在
0.8~1.2之间微调;接近0.5或2.0时语音会明显过慢或过快 - 同时传了不等于
1.0的speech_rate时,pitch不生效;两者不能叠加使用 - 调节音调不改变输出 token 数
0.5 <= x <= 21
自然语言指令,用于控制情感、语气、角色、方言等表达方式
约束:
- 不超过
100计费字符:汉字(包括日文汉字、韩文汉字)按 2 计,其他字符按 1 计(假名、韩文字母均按 1 计;约 50 个汉字或 100 个英文字符),超出返回400
示例:
用欢快、热情的语气说请用上海话表达(多语种与方言音色)Speak slowly in a calm and gentle tone
指令本身不计入输入 token,但会影响生成音频的时长,从而影响输出 token
参数名为
instruction(单数),传instructions会返回400
"用欢快、热情的语气说"
目标语种提示,用于改善数字、缩写、符号的读法和小语种的合成效果
例如英文句子 hello, this is 110 传 zh 时,110 读作「幺幺零」
| 值 | 语种 | 值 | 语种 |
|---|---|---|---|
zh | 中文 | th | 泰语 |
en | 英语 | id | 印尼语 |
fr | 法语 | vi | 越南语 |
de | 德语 | es | 西班牙语 |
ja | 日语 | it | 意大利语 |
ko | 韩语 | ms | 马来语 |
ru | 俄语 | fil | 菲律宾语 |
pt | 葡萄牙语 | ar | 阿拉伯语 |
不传时由模型自动判断;本参数不会翻译文本
zh, en, fr, de, ja, ko, ru, pt, th, id, vi, es, it, ms, fil, ar "zh"
是否按 SSML 解析 prompt
开启后可使用 SSML 标签,例如用 <break time="1s"/> 插入停顿:
<speak>欢迎收听今天的节目。<break time="1s"/>我们马上开始。</speak>
SSML 插入的停顿不计入输出 token
false
自定义发音与文本替换,用于纠正多音字、专有名词等读音
pronunciation:为指定词语标注拼音(音节间用空格分隔,声调用数字标注,如tian1 qi4),纠正默认读音replace:合成前把指定词语替换为目标文本,按替换后的文本合成和计费;替换后的文本同样不能超过5000字符,超出返回400(prompt_too_long)
两类词条合计最多 200 条(按对象中的键值对计数),超过返回 400(invalid_parameter)
两项至少传一项,每项为非空数组,数组元素为 {"词语": "值"} 形式的对象
示例:
{
"pronunciation": [{"天气": "tian1 qi4"}],
"replace": [{"今天": "金天"}]
}
Show child attributes
Show child attributes
是否在生成的音频中嵌入 AIGC 隐性标识(wav / mp3 / opus 格式生效)
false
任务完成后的HTTPS回调地址
回调时机:
- 任务完成(completed)或失败(failed)时触发;本模型不支持取消
- 在计费确认完成后发送
安全限制:
- 仅支持HTTPS协议
- 禁止回调到内网IP地址(127.0.0.1、10.x.x.x、172.16-31.x.x、192.168.x.x等)
- URL长度不超过
2048字符
回调机制:
- 超时时间:
10秒 - 失败后最多重试
3次(会分别在失败的1秒/2秒/4秒后进行重试) - 回调响应体格式与任务查询接口返回的格式一致
- 回调地址若返回2xx状态码视为成功,其他状态码会触发重试
"https://your-domain.com/webhooks/tts-completed"
响应
语音合成任务创建成功
任务创建时间戳
1790000000
任务ID
"task-unified-1790000000-abcd1234"
实际使用的模型名称
"qwen-audio-3.1-tts-flash"
任务的具体类型
audio.generation.task 任务进度百分比 (0-100)
0 <= x <= 1000
任务状态
pending, processing, completed, failed "pending"
音频任务详细信息
Show child attributes
Show child attributes
任务的输出类型
audio "audio"
使用量和计费信息
Show child attributes
Show child attributes