Skip to Content
API リファレンスOpenAI 互換プロトコルAudio Speech

Audio Speech API

テキストを音声に変換します。OpenAI の POST /v1/audio/speech と互換で、レスポンスボディは JSON ではなく音声ファイル(バイナリ)そのものです。

シリーズモデル説明
ElevenLabselevenlabs/eleven_v4ElevenLabs を参照
Gemini TTSgoogle/gemini-3.8-flash-tts などGemini TTS を参照

voice、response_format などのパラメーターで使える値はモデルによって異なります。各シリーズのページを参照してください。

クイックスタート

base_urlhttps://api.ofox.io/v1
エンドポイントhttps://api.ofox.io/v1/audio/speech
モデル IDgoogle/gemini-3.8-flash-tts
speech.py
import os from openai import OpenAI client = OpenAI(base_url="https://api.ofox.io/v1", api_key=os.environ["OFOX_API_KEY"]) with client.audio.speech.with_streaming_response.create( model="google/gemini-3.8-flash-tts", voice="Kore", input="こんにちは。OfoxAI の音声合成へようこそ。", response_format="wav", ) as resp: resp.stream_to_file("speech.wav")

リクエストパラメーター

model必須string

モデル ID。上の表を参照してください。

input必須string

合成するテキスト。空の場合は 400 が返ります。

voicestring

ボイス。Gemini TTS では必須で、Google のボイス名(例:Kore)を指定します。ElevenLabs ではボイス ID(例:21m00Tcm4TlvDq8ikWAM)を指定します。OpenAI のボイス名(例:alloy)はどちらのシリーズでも使えません。

音声形式。使える値はモデルによって異なります。Gemini TTS は wav、pcm、ElevenLabs は mp3、opus、wav、pcm に対応しています。非対応の形式を指定すると 400 が返ります。

口調やスタイルの指示。例:「明るい口調で読み上げて」。Gemini TTS で使えます。

言語コード。例:cmn-CN(Gemini TTS)、zh(ElevenLabs)。省略するとモデルがテキストから判定します。

stream_formatstring· 有効な値sse

sse を指定すると、Server-Sent Events で音声チャンクをストリーミングで返します。Gemini TTS で使えます。

プロバイダー固有のパラメーター。該当するプロバイダーにそのまま渡されます。例:ElevenLabs の {"elevenlabs": {"voice_settings": {...}}}。各シリーズのページを参照してください。

レスポンス

成功時は HTTP 200 で、レスポンスボディは音声ファイルです。Content-Type は形式に対応します:

response_formatContent-Type
mp3audio/mpeg
wavaudio/wav
opusaudio/ogg
pcmaudio/L16;rate=<サンプルレート>;channels=1、ファイルヘッダーなしの 16 ビット PCM

レスポンスボディはそのままファイルに書き込んでください。エラー時のレスポンスは JSON で、Content-Type は application/json です。エラー内容を音声ファイルとして保存しないよう、先にステータスコードを確認してください。

よくあるエラー

HTTPエラーメッセージ原因対処
400model and input are required.model がない、または input が空パラメーターを補う
400voice is required for speech completionGemini TTS で voice を指定していないKore などのボイス名を指定する
400unsupported Gemini response_format: mp3そのモデルが選択した形式に対応していないシリーズページに記載の形式を使う
400Request contains an invalid argument.Gemini TTS のボイス名が存在しない有効なボイス名を使う
404A voice with voice_id 'alloy' was not found.ElevenLabs のボイス ID が存在しない有効なボイス ID を使う
400 endpoint_not_supportedModel 'openai/gpt-5.4' does not support the /v1/audio/speech endpoint on this platform.選択したモデルが音声合成モデルではない上の表のモデルを使う

エラーコードの詳細はエラー処理を参照してください。

最終更新日