跳到主要内容

生成语音

POST 

https://api.knoxstudio.ai/v1/text-to-speech/:voice_id

使用来自 音色 的 ElevenLabs voice_id 合成完整 text。公开音色如 21m00Tcm4TlvDq8ikWAM 也可使用。默认模型 eleven_multilingual_v2。按字符计费($0.15 或 $0.10 / 千字符)。指南:文本转语音。

请求​

路径参数​

名称类型必填描述
voice_idString是ElevenLabs 音色 ID。

查询参数​

名称类型必填描述
enable_loggingBoolean否默认 true。false 请求零保留模式。
optimize_streaming_latencyInteger否已弃用。0–4 延迟/质量权衡。
output_formatString否默认 mp3_44100_128。格式为 codec_sample_rate_bitrate。

允许的 output_format 包含 WAV:alaw_8000, mp3_22050_32, mp3_24000_48, mp3_44100_128, mp3_44100_192, mp3_44100_32, mp3_44100_64, mp3_44100_96, opus_48000_128, opus_48000_192, opus_48000_32, opus_48000_64, opus_48000_96, pcm_16000, pcm_22050, pcm_24000, pcm_32000, pcm_44100, pcm_48000, pcm_8000, ulaw_8000, wav_16000, wav_22050, wav_24000, wav_32000, wav_44100, wav_48000, wav_8000。

请求头​

名称类型必填描述
AuthorizationString是Bearer <token> Knox API key。也接受 xi-api-key。
Content-TypeString是application/json。

请求体​

名称类型必填描述
textString是要朗读的文本。最大字符数取决于 model_id(5,000–40,000)。
model_idString否默认 eleven_multilingual_v2。见 GET /v1/text-to-speech/models。
language_codeString否ISO 639-1。对 eleven_multilingual_v2 会被忽略。
voice_settingsObject否单次覆盖:stability(0.5)、similarity_boost(0.75)、style(0)、speed(1.0)、use_speaker_boost(true)。
pronunciation_dictionary_locatorsList of Objects否最多 3 个定位器,含 pronunciation_dictionary_id 和可选 version_id。
seedInteger否0–4294967295。尽力保证确定性。
previous_textString否前文,用于连贯性。
next_textString否后文,用于连贯性。
previous_request_idsList of Strings否最多 3 个先前 request_id。若同时发送则覆盖 previous_text。
next_request_idsList of Strings否最多 3 个后续 request_id。若同时发送则覆盖 next_text。
apply_text_normalizationString否auto(默认)、on 或 off。
apply_language_text_normalizationBoolean否额外语言规范化(日语)。会增加延迟。默认 false。

cURL 示例​

curl -X POST "https://api.knoxstudio.ai/v1/text-to-speech/21m00Tcm4TlvDq8ikWAM?output_format=mp3_44100_128" \
-H "Authorization: Bearer $KNOXCHAT_API_KEY" \
-H "Content-Type: application/json" \
-o speech.mp3 \
-d '{
"text": "Hello from Knox. This is text to speech.",
"model_id": "eleven_multilingual_v2"
}'

响应​

成功响应 (200)​

生成的音频文件。Content-Type 随 output_format。

错误响应​

校验失败返回 HTTP 422:

{
"detail": [
{
"loc": ["body", "field"],
"msg": "…",
"type": "value_error"
}
]
}

其他错误使用 { "detail": "message" }。

状态何时
400未携带 Upgrade: websocket 访问 WebSocket 路径。
401缺少或无效的 API key。
402余额不足。
403Token 无权使用该模型。
404资源不存在。
422校验错误。
429超出速率限制。
500服务器内部错误。