文本转语音 (TTS)
AcceleAI 提供文本转语音服务,支持 OpenAI 和 Gemini 系列语音模型,可用于生成自然流畅的语音内容,支持多种音色、多语言及多说话人场景。
可用模型
OpenAI 系列
| 模型 | 特点 |
|---|---|
tts-1 | 标准模型,响应快、性能均衡 |
tts-1-hd | 高保真音频,音质更佳 |
gpt-4o-audio-preview | 对话式语音生成 |
gpt-4o-mini-tts | 支持通过 prompt 精细控制语音风格 |
Gemini 系列
| 模型 | 特点 |
|---|---|
gemini-2.5-flash-preview-tts | 快速生成,支持单/多说话人 |
gemini-2.5-pro-preview-tts | 专业级音质,支持单/多说话人 |
API 端点
POST https://api.acceleai.cn/v1/audio/speech请求头:
Authorization: Bearer <ACCELE_AI_API_KEY>
Content-Type: application/json请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
model | string | 是 | 模型标识符 |
input | string | 是 | 待转换文本,最长 4096 字符 |
voice | string | 是 | 音色标识符 |
response_format | string | 否 | 输出格式:mp3、opus、aac、flac、wav、pcm(Gemini 仅支持 wav/pcm) |
speed | number | 否 | 语速倍率 0.25-4.0(Gemini 和 gpt-4o-mini-tts 不支持) |
instructions | string | 否 | 语音风格指令(仅 Gemini 和 gpt-4o-mini-tts 支持) |
音色列表
OpenAI 音色
alloy、ash、ballad、coral、echo、fable、onyx、nova、sage、shimmer、verse、marin、cedar
Gemini 音色
Gemini 提供 30 种预设音色,每种具有独特的声线风格:
| 音色 | 风格 | 音色 | 风格 |
|---|---|---|---|
| Zephyr | 明亮 | Puck | 活泼 |
| Kore | 稳重 | Charon | 低沉 |
| Fenrir | 激昂 | Leda | 温柔 |
| Orus | 坚定 | Aoede | 柔和 |
提示: 使用 OpenAI 音色名称调用 Gemini 模型时,系统会自动映射到对应的 Gemini 音色。
使用示例
标准 TTS(OpenAI)
from openai import OpenAI
from pathlib import Path
client = OpenAI(
api_key="<ACCELE_AI_API_KEY>",
base_url="https://api.acceleai.cn/v1"
)
response = client.audio.speech.create(
model="tts-1-hd",
voice="nova",
input="欢迎使用 AcceleAI 文本转语音服务,这是一段演示音频。"
)
speech_file = Path("output.mp3")
response.stream_to_file(speech_file)
print("音频已保存")带风格控制的 TTS(gpt-4o-mini-tts)
response = client.audio.speech.create(
model="gpt-4o-mini-tts",
voice="coral",
input="今天的天气非常好,适合出门散步。",
instructions="用温暖友好的语气朗读,语速适中,像一位亲切的邻居在聊天。"
)
response.stream_to_file("styled_output.mp3")Gemini 多说话人
Gemini 模型支持在单次请求中生成多个说话人的对话音频,只需在文本中标注说话人名称:
import requests
headers = {
"Authorization": "Bearer <ACCELE_AI_API_KEY>",
"Content-Type": "application/json"
}
payload = {
"model": "gemini-2.5-flash-preview-tts",
"input": "小明:你好,今天的项目进展怎么样?\n小红:挺顺利的,核心功能已经开发完成了。\n小明:太好了,我们下午开个评审会吧。",
"voice": "Kore",
"instructions": "小明的语气专业自信,小红的语气活泼轻快",
"response_format": "wav"
}
response = requests.post(
"https://api.acceleai.cn/v1/audio/speech",
headers=headers,
json=payload
)
with open("dialogue.wav", "wb") as f:
f.write(response.content)cURL 示例
curl -X POST https://api.acceleai.cn/v1/audio/speech \
-H "Authorization: Bearer <ACCELE_AI_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"model": "tts-1",
"voice": "alloy",
"input": "AcceleAI 让 AI 开发更简单。"
}' \
--output speech.mp3支持的语言
支持 24 种语言,包括中文(普通话)、英语(美式/印度)、日语、韩语、法语、德语、西班牙语、阿拉伯语、葡萄牙语、俄语等,语言代码遵循 BCP-47 标准。
计费说明
- 按输入文本的字符数计费
- 单次请求最大输入 4096 字符
- Gemini 模型上下文窗口为 32k tokens