Gemini 语音合成 TTS 接口

POST https://api.apizt.com/v1beta/models/gemini-2.5-pro-preview-tts:generateContent 在线调试 →

本页保留 gemini-2.5-pro-preview-tts 专用语音型号。Gemini 3.8 Flash 是文本输出型号;原生 AUDIO 与 speechConfig 不能据此套用。 查看聊天型号与协议。

▼ Authorization

在 Header 添加参数 Authorization,其值为 Bearer 之后拼接 Token

示例: Authorization: Bearer ********************

官方文档:https://ai.google.dev/gemini-api/docs/text-generation?hl=zh-cn#multi-turn-conversations

请求参数

Header 参数
Authorizationstring必需
Bearer Token;从环境变量 tokenba_API_KEY 读取。
Content-Typestring必需
示例:application/json
Body 参数application/json
contentsarray必需
结构见完整 JSON 示例。
generationConfigobject可选
结构见完整 JSON 示例。

完整 JSON 请求体

{
  "contents": [
    {
      "parts": [
        {
          "text": "Say cheerfully: Have a wonderful day!"
        }
      ]
    }
  ],
  "generationConfig": {
    "responseModalities": [
      "AUDIO"
    ],
    "speechConfig": {
      "voiceConfig": {
        "prebuiltVoiceConfig": {
          "voiceName": "Kore"
        }
      }
    }
  }
}

请求示例代码

curl --fail-with-body --request POST 'https://api.apizt.com/v1beta/models/gemini-2.5-pro-preview-tts:generateContent' \
  --header "Authorization: Bearer ${tokenba_API_KEY}" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "contents": [
    {
      "parts": [
        {
          "text": "Say cheerfully: Have a wonderful day!"
        }
      ]
    }
  ],
  "generationConfig": {
    "responseModalities": [
      "AUDIO"
    ],
    "speechConfig": {
      "voiceConfig": {
        "prebuiltVoiceConfig": {
          "voiceName": "Kore"
        }
      }
    }
  }
}'
async function main() {
  const headers = {
  "Authorization": "Bearer " + process.env.tokenba_API_KEY,
  "Content-Type": "application/json"
};
  const body = JSON.stringify({
  "contents": [
    {
      "parts": [
        {
          "text": "Say cheerfully: Have a wonderful day!"
        }
      ]
    }
  ],
  "generationConfig": {
    "responseModalities": [
      "AUDIO"
    ],
    "speechConfig": {
      "voiceConfig": {
        "prebuiltVoiceConfig": {
          "voiceName": "Kore"
        }
      }
    }
  }
});
  const response = await fetch("https://api.apizt.com/v1beta/models/gemini-2.5-pro-preview-tts:generateContent", { method: "POST", headers, body });
  if (!response.ok) throw new Error("HTTP " + response.status + ": " + await response.text());
  console.log(await response.text());
}
main().catch(console.error);
import os
import requests

headers = {"Authorization": "Bearer " + os.environ["tokenba_API_KEY"]}
payload = {'contents': [{'parts': [{'text': 'Say cheerfully: Have a wonderful day!'}]}],
 'generationConfig': {'responseModalities': ['AUDIO'],
                      'speechConfig': {'voiceConfig': {'prebuiltVoiceConfig': {'voiceName': 'Kore'}}}}}
response = requests.post('https://api.apizt.com/v1beta/models/gemini-2.5-pro-preview-tts:generateContent', headers=headers, json=payload, timeout=120)
response.raise_for_status()
print(response.text)

返回响应

语音数据位于 candidates[].content.parts[].inlineData。读取 mimeType 并 Base64 解码 data,再按编码保存;不要把 PCM 字节直接命名为 MP3。原生 TTS 返回音频内容,不能按文本生成的结果处理。

文本位于 candidates[].content.parts[].text。按 Part 类型解析;工具调用为 functionCall,图片或音频为 inlineData,思考摘要可带 thought。工具循环需保留 thoughtSignature。

以下为结构示例,不代表实际调用结果。

{
  "candidates": [
    {
      "content": {
        "role": "model",
        "parts": [
          {
            "inlineData": {"mimeType": "audio/L16;codec=pcm;rate=24000", "data": "BASE64_AUDIO_BYTES"}
          }
        ]
      },
      "finishReason": "STOP"
    }
  ],
  "usageMetadata": {
    "promptTokenCount": 10,
    "candidatesTokenCount": 8,
    "totalTokenCount": 18
  }
}

当前模型与版本

依据 apizt 价格页,同步于 。以下型号按目录声明的协议与本页用途筛选;不代表所有参数和功能通用。切换前请核对型号说明、令牌分组与参数差异。Gemini 原生接口需同时替换 URL 中的模型 ID。

模型 ID能力标签支持分组
gemini-2.5-flash-preview-tts音频
分组(3)

Aistudio-Gemini-3、Aistudio-Gemini-4、Vertex-Gemini-3

gemini-3.1-flash-tts-preview音频
分组(6)

Aistudio-Gemini-2、Aistudio-Gemini-3、Aistudio-Gemini-4、Vertex-Gemini-1、Vertex-Gemini-2、Vertex-Gemini-3

gemini-2.5-pro-preview-tts音频
分组(3)

Aistudio-Gemini-3、Aistudio-Gemini-4、Vertex-Gemini-3

共列入 3 个候选型号。查看完整模型、版本与接口目录。