本文へスキップ

T2A v2 音声を作成

MiniMax T2A v2 ネイティブのリクエストボディ:全パラメータ、クローンボイス、SSE ストリーミング。JSON レスポンスの音声は 16 進数です。

POST/v1/t2a_v2

MiniMax T2A v2 のリクエストボディをそのまま受け付けるので、公式 SDK のコードは Base URL とキーを変えるだけで再利用できます。ゲートウェイが認識しないフィールドもそのまま渡され、JSON レスポンスも公式の構造を踏襲します(エラーを除く)。2 つの音声モデルは独立したグループ MiniMax Speech 公式 に属し、チャットや動画のグループのキーでは呼び出せません。

ゲートウェイがここで行うのは 3 つだけです:model、text の長さ、stream と output_format を検証する。voice_setting.speed を公式の範囲内に丸める。リクエストボディを 1 MiB 以下に制限する。その他のフィールドで公式の範囲を超える値は、サービスが 400 を返します。

data.audio は 16 進数でエンコードされた音声、extra_info.usage_characters は課金文字数です。stream: true を渡すと SSE に切り替わります:各 data: {...} イベントに 16 進数の音声が 1 区切りずつ入り、最後のチャンクは data.status が 2 で extra_info が付きます。ストリーミングの途中で失敗した場合は、最後に base_resp 付きのイベントを 1 件送ってから切断し、課金されません。書き方はストリーム出力を参照してください。

クローンボイスは voice_setting.voice_id(または timber_weights[].voice_id)に指定します。ボイスの初回合成が成功した時点でクローン料金を 1 回だけ差し引き、使用記録の明細に voice_clone_activation が 1 項目追加されます。OpenAI の構造だけが必要な場合は POST /v1/audio/speech を使ってください。

ヘッダー

Authorization:必須string

Bearer sk-…:コンソールの「API キー」で作成したキー。キーのグループにリクエストするモデルが含まれている必要があります

リクエストボディJSON

model:必須string

大文字小文字を区別、エイリアスなし

取りうる値speech-2.8-hdspeech-2.8-turbo

text:必須string

合成するテキスト。段落は改行で区切ります。ポーズ記号 <#x#>(秒数 0.01–99.99)、インラインの読み指定、感動詞に対応しています。音声合成ガイドを参照。公式は 3000 文字を超える場合はストリーミングを推奨しています

長さ1–10000 文字

stream:任意boolean

true のときレスポンスが SSE に切り替わります

デフォルトfalse

stream_options:任意object

ストリーミングオプション

language_boost:任意string

その言語や方言の認識を強化します。auto はモデルが自動判定します。広東語のボイスには Chinese,Yue が必要です。指定しなければ設定されません

取りうる値autoChineseChinese,YueEnglishArabicRussianSpanishFrenchPortugueseGermanTurkishDutchUkrainianVietnameseIndonesianJapaneseItalianKoreanThaiPolishRomanianGreekCzechFinnishHindiBulgarianDanishHebrewMalayPersianSlovakSwedishCroatianFilipinoHungarianNorwegianSlovenianCatalanNynorskTamilAfrikaans

pronunciation_dict:任意object

発音辞書

voice_modify:任意object

ボイスの調整。公式の意味どおりにそのまま渡し、ゲートウェイ側では検証しません

output_format:任意string

hex のみ対応。url を渡すと 400 を返します

取りうる値hex

デフォルト"hex"

voice_setting:任意object

ボイス設定

audio_setting:任意object

音声設定

レスポンス

200非ストリーミングは JSON。stream: true のときは text/event-stream で、各イベントの data は以下と同じ構造です

data:任意object
extra_info:任意object

音声のメタデータと課金文字数

base_resp:任意object

成功時は {"status_code": 0, "status_msg": "success"}。エラーはここに入らず、200 以外のステータスコードと error オブジェクトで返されます

エラー

400model が非対応、text が空または 10000 文字超、output_format が hex でない、ボイス ID が存在しない、opus で sample_rate がない、値が公式の範囲外、センシティブな内容など
401キー未指定、キーが無効または期限切れ(missing_api_key / invalid_api_key / api_key_expired)
402残高、またはキー・メンバー・部門のクォータを使い切った(insufficient_quota)
404モデルがこのキーのグループにない(model_not_found)、またはパスがそのグループに属さない(route_not_found)
413リクエストボディが 1 MiB を超えた:request body exceeds the 1048576 byte limit (got N bytes)
429アカウントまたはキーの同時実行数が上限に達した(user_concurrency_limit / apikey_concurrency_limit)。Retry-After 付き
502音声が 64 MiB を超えた(response_size_limit_exceeded):stream: true に切り替える、テキストを短くする、またはビットレートを下げてください
503現在利用可能なサービスがありません:間隔を空けて再試行してください(2 秒、5 秒、15 秒、最大 3 回)

関連ページ