Skip to main content

Documentation Index

Fetch the complete documentation index at: https://portkey-docs-feat-vertex-gemini-tts.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Usage

We follow the OpenAI signature where you can send the input text and the voice option as a part of the API request. All the output formats mp3, opus, aac, flac, and pcm are supported. Portkey also supports real time audio streaming for TTS models. Here’s an example:
import fs from "fs";
import path from "path";
import OpenAI from "openai";
import { PORTKEY_GATEWAY_URL } from 'portkey-ai'

const openai = new OpenAI({
  apiKey: "PORTKEY_API_KEY",
  baseURL: PORTKEY_GATEWAY_URL
});

const speechFile = path.resolve("./speech.mp3");

async function main() {
  const mp3 = await openai.audio.speech.create({
    model: "@openai/tts-1",
    voice: "alloy",
    input: "Today is a wonderful day to build something people love!",
  });
  const buffer = Buffer.from(await mp3.arrayBuffer());
  await fs.promises.writeFile(speechFile, buffer);
}

main();
On completion, the request will get logged in the logs UI and show the cost and latency incurred.

SSE Streaming

OpenAI and Azure OpenAI support Server-Sent Events (SSE) streaming for the speech endpoint. Set stream_format to "sse" to receive audio data as a stream of events:
from portkey_ai import Portkey

portkey = Portkey(
    api_key="PORTKEY_API_KEY",
    provider="@PROVIDER"
)

response = portkey.audio.speech.create(
    model="@openai/tts-1",
    voice="alloy",
    input="Today is a wonderful day to build something people love!",
    stream_format="sse"
)

Google Vertex AI TTS

Google Vertex AI offers Gemini TTS models with advanced features like multi-speaker synthesis and style control. Portkey supports two methods:
  1. Chat Completions with speech_config - Use Gemini TTS through the chat completions endpoint
  2. Audio Speech endpoint - OpenAI-compatible /audio/speech endpoint
curl https://api.portkey.ai/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "x-portkey-api-key: $PORTKEY_API_KEY" \
  -d '{
    "model": "@vertex-ai/gemini-2.5-flash-tts",
    "messages": [{"role": "user", "content": "Say cheerfully: Hello!"}],
    "speech_config": {
      "voice_config": {"prebuilt_voice_config": {"voice_name": "Kore"}},
      "language_code": "en-US"
    }
  }'
For detailed documentation including multi-speaker synthesis, style prompts, and all available voices, see Google Vertex AI Text-to-Speech.
Last modified on May 10, 2026