語音合成 API 參考
OpenAI 相容的文字轉語音介面:一次請求合成整段音訊,回應直接返回音訊二進位。適配 OpenAI TTS、百煉 Qwen-Audio-TTS、MiniMax、火山引擎等語音合成模型。
注意: 回應不是 JSON,而是音訊二進位,Content-Type 由 response_format 決定:mp3 → audio/mpeg、wav → audio/wav、pcm → audio/pcm、opus → audio/ogg。voice 取值隨模型而變:百煉 Qwen-Audio-TTS 使用 longanhuan_v3.6 等音色,OpenAI TTS 使用 alloy / nova 等,請查閱對應模型的音色清單。模型特有的上游參數可放在 metadata 中透傳。
示例模型
下文均以 qwen-audio-3.0-tts-plus(Qwen Audio TTS Plus)為例;更換其他模型時,請替換 model 參數,並參考控制台模型說明調整 size、quality 等欄位。
建立語音合成
POST
https://token.easyapi.com/v1/audio/speech把 input 文字合成為音訊,直接返回音訊位元組。目前不支援串流返回:即使傳入 stream_format=sse,也會按單次完整音訊返回。
請求參數
| 名稱 | 位置 | 類型 | 必選 | 說明 |
|---|---|---|---|---|
Authorization | header | string | 是 | EasyAPI API Key。格式:Bearer `API_KEY` |
Content-Type | header | string | 是 | 固定 application/json |
請求體
| 名稱 | 類型 | 必選 | 說明 |
|---|---|---|---|
model | string | 是 | 語音合成模型 ID,例如 qwen-audio-3.0-tts-plus、gpt-4o-mini-tts、tts-1 |
input | string | 是 | 待合成文字,支援 SSML / LaTeX(需模型支援) |
voice | string | 是 | 音色,取值隨模型不同;百煉預設 longanhuan_v3.6 |
response_format | string | 否 | 音訊編碼格式:mp3(預設)、wav、pcm、opus |
speed | number | 否 | 語速倍率,百煉映射為 rate(0.5–2.0),超出範圍按邊界鉗制 |
instructions | string | 否 | 合成指令,用於控制方言、情感或角色等效果(百煉映射為 instruction) |
metadata | object | 否 | 上游原生參數透傳:volume(0-100)、pitch(0.5-2.0)、bit_rate(6-510,僅 opus)、sample_rate、enable_ssml、word_timestamp_enabled、seed、language_hints、hot_fix、enable_aigc_tag;與標準欄位同名的鍵優先級最高 |
示例
{
"model": "qwen-audio-3.0-tts-plus",
"input": "你好,欢迎使用 EasyAPI 语音合成。",
"voice": "longanhuan_v3.6",
"response_format": "mp3",
"speed": 1.0,
"instructions": "用轻松自然的语气朗读"
}返回示例
HTTP/1.1 200 OK
Content-Type: audio/mpeg
Content-Length: 258048
<二进制音频数据>返回結果
| 狀態碼 | 狀態碼含義 | 說明 | 資料模型 |
|---|---|---|---|
200 | 成功 | 返回音訊二進位,Content-Type 取決於 response_format | audio/* |
400 | 請求錯誤 | 參數不合法或上游拒絕,如音色不存在、文字為空 | ErrorResponse |
401 | 未認證 | 權杖缺失或無效 | ErrorResponse |
402 | 額度不足 | 帳戶餘額不足以支付本次合成 | ErrorResponse |
429 | 限流 | 請求過於頻繁,請稍後重試 | ErrorResponse |
500 | 服務端錯誤 | 上游或閘道異常,可重試 | ErrorResponse |
響應: 音訊時長與用量由服務端解析:按輸入字元數與輸出音訊時長計費,無法解析時長時按音訊體積估算。