语音生成与转写
调用 TTS 和转写模型,获取音频或 OSS 签名链接,并了解字符、分钟和 Token 计费。
语音专项包含文字转语音(TTS)和语音转文字(STT)。 使用本站统一接口和 ZCloudAPI Key,不需要填写供应商地址或供应商密钥。
模型与计费
在控制台创建「语音专项」分组的 Key,也可以使用包含语音专项的 AUTO Key。模型白名单和自定义 AUTO 顺序仍然有效。
| 模型名称 | 功能 | 语音专项 1.0× 价格 |
|---|---|---|
openai/gpt-4o-mini-tts |
文字转语音 | ¥8.55 / 百万输入字符 |
openai/gpt-transcribe |
语音转文字 | ¥0.052 / 音频分钟 |
openai/gpt-4o-mini-transcribe |
语音转文字 | 输入 ¥14.45、输出 ¥57.77 / 百万 Token |
以上为 2026-10-23 配置,实际价格以模型广场及调用分组为准。平台额度按人民币 1:1 展示,不是美元充值汇率。
- TTS 按输入 Unicode 字符计数,包含空格和标点;字符与 Token 不是一回事。
- GPT Transcribe 按音频时长计费,向上取整到秒,再按每分钟价格折算,不是每次至少收一分钟。
- Mini Transcribe 按实际输入、输出 Token 计费,不按录音分钟统一收费。
文字转语音
先设置环境变量,密钥只放在本机环境或服务端 Secret 中:
export ZCLOUD_API_KEY="sk-你的-ZCloudAPI-Key"
export ZCLOUD_BASE_URL="https://api.zcloudapi.com/v1"
默认直接返回 MP3 音频:
curl --fail-with-body "$ZCLOUD_BASE_URL/audio/speech" \
-H "Authorization: Bearer $ZCLOUD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-4o-mini-tts",
"input": "欢迎使用语音服务,明天上午九点开会。",
"voice": "alloy",
"response_format": "mp3"
}' \
--output speech.mp3
如果需要下载链接,增加本站参数 output_format: "url":
curl --fail-with-body "$ZCLOUD_BASE_URL/audio/speech" \
-H "Authorization: Bearer $ZCLOUD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-4o-mini-tts",
"input": "欢迎使用语音服务。",
"voice": "alloy",
"response_format": "mp3",
"output_format": "url"
}'
返回:
{
"url": "https://<OSS域名>/<对象路径>?<签名参数>",
"expires_at": 1790000000,
"format": "mp3"
}
示例时间仅说明字段类型。expires_at 是实际到期 Unix 秒时间戳,当前签名链接有效期为 1 小时。文件私有、长期保存;链接到期不代表文件删除。下载签名 URL 时不要发送 ZCloudAPI Key。本轮没有提供自助刷新签名接口,请及时下载需要的文件。
response_format 表示音频编码,output_format 表示交付方式,两者不要混淆。默认文件模式也会先转存,并在响应头提供 X-Audio-URL、X-Audio-URL-Expires-At。
当前 AIMLAPI TTS 接入为非流式;不要传 stream_format: "sse"。MP3 已完成真实验收,其他音色、编码请先小规模测试。转存失败会返回错误,不会再次自动生成音频,也不会把上游临时 URL 当作 OSS 链接返回。
语音转文字
上传音频文件,返回 JSON 文字:
curl --fail-with-body "$ZCLOUD_BASE_URL/audio/transcriptions" \
-H "Authorization: Bearer $ZCLOUD_API_KEY" \
-F model=openai/gpt-transcribe \
-F file=@speech.mp3 \
-F language=zh \
-F response_format=json
另一款只需改为 model=openai/gpt-4o-mini-transcribe。示例响应:
{
"text": "欢迎使用语音服务。",
"usage": {
"seconds": 3,
"cost": 0.000225
}
}
不同模型的 Usage 字段不同。供应商返回的 usage.cost 不代表本站钱包实际扣费,本站以配置价格、分组倍率及实际计量结算,最终查看使用日志。
上传 MP3/WAV 等供应商支持格式,建议不超过 25 MB;长录音先分段。此接口不是实时语音通话,不保证流式转写能力。转写上传的原始录音没有因本次功能而新增永久 OSS 保存策略。
错误处理
- 400:检查模型名称、文件格式、参数和流式设置。
- 401/403:检查 Key、分组权限、模型白名单和额度。
- 429:降低并发,等待后再试。
- 502/超时:保留请求 ID,检查供应商或转存链路;不要无节制重复生成。
公开使用前,单轮 20 个混合短音频请求已测试通过;这不是持续压测或长音频 SLA。