外观
语音与向量
语音与向量走 OpenAI 兼容路径,路径都在 /v1 下。
语音合成
bash
curl -sS -X POST "$BASE_URL/audio/speech" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-3.8-flash-tts",
"input": "今天天气不错,适合出门散步。",
"voice": "Kore",
"response_format": "mp3"
}' \
-o speech.mp3| 参数 | 必填 | 说明 |
|---|---|---|
model | 是 | 语音合成模型,见下表 |
input | 是 | 要朗读的文本 |
voice | 否 | 音色名,取值以模型支持为准 |
response_format | 否 | mp3、wav、opus 等 |
speed | 否 | 语速倍数,模型不支持时会被忽略 |
语音合成按字符或按次计费,具体以控制台模型广场为准。
语音转写
bash
curl -sS -X POST "$BASE_URL/audio/transcriptions" \
-H "Authorization: Bearer $API_KEY" \
-F "file=@./meeting.mp3" \
-F "model=gemini-3.5-transcribe"响应是标准的 {"text": "..."}。POST /v1/audio/translations 也是转写,语义上是翻译成英文,模型是否支持以实际返回为准。
file 用 multipart 上传,单文件大小限制由服务端决定,过大的文件先切分。
向量
bash
curl -sS -X POST "$BASE_URL/embeddings" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-embedding-001",
"input": ["第一段文本", "第二段文本"]
}'input 可以是字符串或字符串数组,返回的 data[i].embedding 与输入顺序一致。dimensions 只在模型支持自定义维度时有效。
也可以用 Gemini 原生路径:
bash
curl -sS -X POST "$BASE_URL/engines/gemini-embedding-001/embeddings" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{"content": {"parts": [{"text": "第一段文本"}]}}'可选模型
| 模型 | 能力 |
|---|---|
gemini-3.8-flash-tts / gemini-3.8-flash-lite-tts | 语音合成 |
gemini-3.1-flash-tts-preview | 语音合成 |
gemini-2.5-flash-preview-tts / gemini-2.5-pro-preview-tts | 语音合成 |
gemini-3.5-transcribe | 语音转写 |
gemini-embedding-001 / gemini-embedding-2 / gemini-embedding-2-preview | 文本向量 |
全部需要令牌具备以下之一:
语音合成 TTS0.3x语音转文字 ASR1xGemini 向量模型1x