はじめに

テキスト読み上げ(TTS)APIは、高度な生成AIモデルに基づいており、入力されたテキストをリアルな音声オーディオに変換できます。さまざまな用途をサポートしています。

  • 書かれたブログ記事にナレーションを付ける
  • 複数の言語で音声オーディオを生成する
  • リアルタイムの音声出力ストリームを提供する

利用可能なモデルリスト:

  • gpt-4o-audio-preview —— OpenAIの最新の音声生成モデルで、対話型音声生成をサポート
  • gpt-4o-mini-tts —— スマートなリアルタイムアプリケーションに最適なモデルで、高度な音声制御をサポートし、プロンプトを通じてさまざまな音声特性を制御できます。
    • アクセント (Accent)
    • 感情の範囲 (Emotional range)
    • イントネーション (Intonation)
    • 印象/スタイル (Impressions)
    • 話す速度 (Speed of speech)
    • トーン (Tone)
    • ささやき (Whispering)
  • tts-1-hd —— 高音質の旧世代TTSモデル
  • tts-1 —— 標準TTSモデルで、品質と速度のバランスが取れています

パフォーマンスの推奨事項: 最速の応答時間を実現するには、応答形式として wav または pcm を使用することをお勧めします。高品質のオーディオには tts-1-hd を、より高速な生成には tts-1 を、スマートな音声アプリケーションには gpt-4o-mini-tts を使用することをお勧めします。

音色のプレビュー: OpenAI.fm でさまざまな音色の効果を試聴できます。

モデル呼び出し方法

標準TTSモデル(tts-1, tts-1-hd)

/v1/audio/speech エンドポイントを使用し、client.audio.speech.create() メソッドを介して呼び出します。

gpt-4o-mini-tts モデル

/v1/audio/speech エンドポイントを使用し、高度な音声制御のために instructions パラメータをサポートします。

gpt-4o-audio-preview モデル

/v1/chat/completions エンドポイントを使用し、modalities: ["text", "audio"]audio 設定が必要です。

リクエストパラメータ

標準TTSパラメータ(tts-1, tts-1-hd, gpt-4o-mini-ttsに適用)

model
string
required

使用するモデルID。オプション:tts-1tts-1-hdgpt-4o-mini-tts

input
string
required

オーディオを生成するテキスト。最大長は4096文字です。

voice
string
required

合成に使用する音声。オプション:alloyechofableonyxnovashimmer

response_format
string

オーディオ出力形式。サポートされている形式:mp3opusaacflacwavpcm。デフォルトは mp3

speed
number

生成されるオーディオの速度。範囲は0.25から4.0。デフォルトは1.0。注意:gpt-4o-mini-ttsはこのパラメータをサポートしていませんが、自然言語で速度を制御できます

instructions
string

音声生成指示(gpt-4o-mini-ttsモデルのみ)。音声スタイル、イントネーション、感情などの特性を詳細に指定できます。

gpt-4o-audio-preview パラメータ

model
string
required

gpt-4o-audio-preview に設定します。

modalities
array
required

音声出力を有効にするために ["text", "audio"] に設定します。

audio
object
required

voiceformat フィールドを含むオーディオ設定オブジェクト。

messages
array
required

チャットメッセージの配列。標準のチャット形式と同じです。

使用方法

curl https://aihubmix.com/v1/audio/speech \
  -H "Authorization: Bearer $AIHUBMIX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "tts-1",
    "input": "The quick brown 🦊 jumped over the lazy dog.",
    "voice": "alloy"
  }' \
  --output speech.mp3