OpenAI TTS-1
简洁描述:使用 OpenAI TTS-1 系列模型将文本转换为语音。
概览
- 请求方法:
POST - 路径:
/v1/audio/speech - 内容类型:
application/json
认证方式
- Header:
Authorization: Bearer <token> - 支持 bearer token 认证
请求示例
请求体参数
| 参数 | 类型 | 必填 | 描述 |
|---|---|---|---|
| model | string | 是 | 模型名称,可选 tts-1 或 tts-1-hd |
| input | string | 是 | 需要生成语音的文本,最大长度 4096 字符 |
| voice | string | 是 | 音色风格,可选:alloy、echo、fable、onyx、nova、shimmer |
| response_format | string | 否 | 音频格式,默认 mp3。支持:mp3、opus、aac、flac、wav、pcm |
| speed | string | 否 | 播放速度,默认 1,可选范围 0.25~4.0 |
| stream_format | string | 否 | 输出模式,audio 返回音频流,sse 返回服务器发送事件。默认 audio |
curl 示例
bash
curl -X POST "https://api.gpt.ge/v1/audio/speech" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-xxxx" \
-d '{
"model": "tts-1",
"input": "您好,这是一段文本转语音的测试。",
"voice": "alloy",
"response_format": "mp3",
"speed": "1"
}'JavaScript (fetch) 示例
javascript
fetch('https://api.gpt.ge/v1/audio/speech', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer sk-xxxx'
},
body: JSON.stringify({
model: 'tts-1',
input: '您好,这是一段文本转语音的测试。',
voice: 'alloy',
response_format: 'mp3',
speed: '1'
})
}).then(r => r.blob()).then(console.log)Python 示例(requests)
python
import requests
response = requests.post(
'https://api.gpt.ge/v1/audio/speech',
headers={
'Content-Type': 'application/json',
'Authorization': 'Bearer sk-xxxx'
},
json={
'model': 'tts-1',
'input': '您好,这是一段文本转语音的测试。',
'voice': 'alloy',
'response_format': 'mp3',
'speed': '1'
}
)
print(response.status_code)
print(response.content[:20])返回示例(200)
text
<返回二进制音频数据,例如 MP3 文件内容>注意:响应通常直接返回所选
response_format的音频文件内容。