MiniMax: Speech 2.8 Turbo
Speech 2.8 Turboは、音声マーカーと表現の制御を備えた、自然な発話の素早い合成です。
モデルについて
この説明はモデルの機能を紹介するものです。Ailootで利用できる入力、出力、オプションは、選択したメソッドごとに以下に記載されています。
会話の発話を素早く合成する
Speech 2.8 Turboは、素早い音声生成と、自然な声の動きを組み合わせます。メーカーは、Turboを、短い発話、テキストの読み上げ、音声によるやり取りなど、滑らかな会話の音声に位置付けています。このカードは、テキストを受け取り、発話の音声を返します。
笑い、呼吸、間投詞
この世代のHD版と同様に、TurboはSpeech 2.8の音声マーカーに対応しています。テキストには、笑い、軽い笑い、咳、喉を払う音、吸気、呼気、ため息、その他の短い音の表記を含められます。制御されたこうした揺らぎにより、内容と結び付いた呼吸や間が生まれ、発話が会話らしくなります。
音声マーカーは、テキストの特定の位置に対応します。モデルに用意された、丸括弧内の表記を使います。例えば、(laughs)や(breath)です。効果を任意の文章で説明することは、対応するマーカーの同等の代用にはなりません。
声と言語
Speech 2.8ファミリーは、ロシア語を含む40言語と、既成の声の利用に対応しています。メーカーは、識別できる声の質感、呼吸の特徴、デジタルな歪みの低減を特徴として挙げています。声の複製は、その後に合成で利用できる声の、別途準備に関する機能です。
MiniMaxは、声の選択と、速度、音量、ピッチの制御を用意しています。速度は0.5〜2、音量は0超から10まで、ピッチの変更は−12〜12です。感情は、テキストの意味に基づくモデルの判断に任せるか、喜び、悲しみ、怒り、恐れ、嫌悪、驚き、落ち着きを手動で指定できます。
発音は、置換辞書や発音表記で調整できます。国際音声記号、中国語のピンイン、日本語の読み方が用意されています。発話部分の間には、0.01〜99.99秒の間を指定します。間の長さは、小数点以下二桁の精度で指定します。マーカーは発話部分の間に置き、連続して並べません。名前、略語、読み方が曖昧な単語の音声を、読み上げの意図に合わせるための設定です。
段階的な出力と音声形式
合成では、10 000文字未満のテキストを受け取ります。3000文字を超える長いテキストでは、メーカーはストリーミング出力を推奨しています。完成した音声を一括取得する方法も用意されています。共通の合成設定には、MP3、PCM、FLAC、WAV、Opus、G.711 μ-lawのバリエーション、モノラル、ステレオがあります。個々のリクエストで利用できる形式は、Ailootの手段によって決まります。
Turboの速度は、モデルのバリエーションの特徴であり、完成した発話の一定の遅延を約束するものではありません。このリクエストの遅延時間の数値は、ここでは指定していません。挙げられているメーカーの拡張設定には、Ailoot経由で選択したアクセス方法での対応が必要です。
追加の音声設定には、8、16、22.05、24、32、44.1キロヘルツのサンプリング周波数があります。MP3には、32、64、128、256キロビット毎秒のビットレートが用意されています。声の響きを変え、広い空間のエコー、ホールのエコー、電話の音、ロボットの声のいずれか一つの効果も適用できます。声の変更効果は、音声を一括取得する場合はMP3、WAV、FLAC、ストリーミング出力ではMP3のみに対応しています。G.711 μ-law形式は、8キロヘルツを使用します。これらの機能は、MiniMaxの合成設定に関するものです。
メーカーは、発話とテキストの同期として、文ごと、単語ごと、段階的な出力時の単語ごとのタイムスタンプを用意しています。発話とテキスト表示を合わせるのに役立つ結果です。この追加機能には、対応する応答形式への支援が必要です。
Ailoot Ultra · 音声合成 POST /v1/audio/speech minimax/speech-2.8-turbo
minimax/speech-2.8-turboはじめに
Speech 2.8 Turboは、音声マーカーと表現の制御を備えた、自然な発話の素早い合成です。
- 対応する入力
- テキスト
- 結果
- 音声
Ailootで利用可能 · 入力とメソッド
Ailoot Ultra · 音声合成 POST /v1/audio/speech
- 入力の種類
text- 出力の種類
audio- 出力形式
- mp3
| フィールド | 種類 | 要件 | 値と制限 | デフォルト |
|---|---|---|---|---|
フィールドmodel | 種類string | 要件必須 | 値と制限 minimax/speech-2.8-turbo | デフォルト— |
フィールドinput | 種類string | 要件必須 | 値と制限 最小の長さ: 1 単位: Unicode 文字 | デフォルト— |
フィールドvoice | 種類string | 要件必須 | 値と制限 English_expressive_narrator, English_radiant_girl, English_magnetic_voiced_man, English_compelling_lady1, English_Aussie_Bloke, English_captivating_female1, English_Upbeat_Woman, English_Trustworth_Man, English_CalmWoman, English_UpsetGirl, English_Gentle-voiced_man, English_Whispering_girl, English_Diligent_Man, English_Graceful_Lady, English_ReservedYoungMan, English_PlayfulGirl, English_ManWithDeepVoice, English_MaturePartner, English_FriendlyPerson, English_MatureBoss, English_Debator, English_LovelyGirl, English_Steadymentor, English_Deep-VoicedGentleman, English_Wiselady, English_CaptivatingStoryteller, English_DecentYoungMan, English_SentimentalLady, English_ImposingManner, English_SadTeen, English_PassionateWarrior, English_WiseScholar, English_Soft-spokenGirl, English_SereneWoman, English_ConfidentWoman, English_PatientMan, English_Comedian, English_BossyLeader, English_Strong-WilledBoy, English_StressedLady, English_AssertiveQueen, English_AnimeCharacter, English_Jovialman, English_WhimsicalGirl, English_Kind-heartedGirl | デフォルト— |
フィールドresponse_format | 種類string | 要件必須 | 値と制限 mp3 | デフォルト— |
入力素材の組み合わせ
text_to_speech · 必須: input
メソッドのパラメータとライフサイクル
| パラメータ | 仕様 |
|---|---|
パラメータcontent_type | 仕様application/json |
パラメータrequired | 仕様model, input, voice, response_format |
パラメータvoice_ids | 仕様English_expressive_narrator, English_radiant_girl, English_magnetic_voiced_man, English_compelling_lady1, English_Aussie_Bloke, English_captivating_female1, English_Upbeat_Woman, English_Trustworth_Man, English_CalmWoman, English_UpsetGirl, English_Gentle-voiced_man, English_Whispering_girl, English_Diligent_Man, English_Graceful_Lady, English_ReservedYoungMan, English_PlayfulGirl, English_ManWithDeepVoice, English_MaturePartner, English_FriendlyPerson, English_MatureBoss, English_Debator, English_LovelyGirl, English_Steadymentor, English_Deep-VoicedGentleman, English_Wiselady, English_CaptivatingStoryteller, English_DecentYoungMan, English_SentimentalLady, English_ImposingManner, English_SadTeen, English_PassionateWarrior, English_WiseScholar, English_Soft-spokenGirl, English_SereneWoman, English_ConfidentWoman, English_PatientMan, English_Comedian, English_BossyLeader, English_Strong-WilledBoy, English_StressedLady, English_AssertiveQueen, English_AnimeCharacter, English_Jovialman, English_WhimsicalGirl, English_Kind-heartedGirl |
パラメータresponse_format | 仕様mp3 |
パラメータmax_input_characters | 仕様null |
パラメータother_options | 仕様false |
パラメータinput | 仕様正確なUTF-8テキスト。正規化せずにUnicode文字数を数えます |
パラメータmaterial_types | 仕様text |
ライフサイクル: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · 実際に返された task_id またはメディアライブラリのレコード
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
このモデルのプロファイルから、使用する音声を正確に選択してください。
入力文字数と音声の秒数は、別の計測単位です。
料金
料金情報はリクエストの機能を追加しません。対応するパラメーターは選択したメソッドに記載されています。
- 高速モード
- 未指定 高速モードが選択されている場合
- Flex モード
- 未指定 flex モードが選択されている場合
- 最大推論量
- 未指定 推論量が最大で、調整に既定値(default)を使用する場合
Ailootの料金
設定別の価格
各料金を表示された条件と照合してください。選択肢となる設定の各組には、いずれか1つの料金を適用します。
| 設定 | 料金表 | 課金対象の数量 | 課金単位 | 料金 |
|---|---|---|---|---|
| 設定基本トークン料金 | 料金表基本料金 | 課金対象の数量— | 課金単位— | 料金 入力 · 入力トークン — / 1K トークン 出力 · 出力トークン — / 1K トークン 入力 · キャッシュ読み取り — / 1K トークン 入力 · キャッシュ書き込み — / 1K トークン 入力 · キャッシュ書き込み、1時間 — / 1K トークン |
| 設定Ultra | 料金表— | 課金対象の数量漢字を含め、Unicodeコードポイント1つを1文字として数えます。 | 課金単位1K入力文字あたり | 料金 入力 · 入力文字 $0.12 1K入力文字あたり |
参考料金の詳細
モデル単位の参照料金表は、メソッド選択、見積もり、課金を変更しません。実際の課金には、選択したAilootメソッドの料金を適用します。
MiniMax: Speech 2.8 Turbo
設定別の価格
| 設定 | 課金条件 | 料金 |
|---|---|---|
| 設定MiniMax: Speech 2.8 Turbo · 標準設定 | 課金条件デフォルト設定 | 料金 入力 · 入力文字数 $0.00012 入力文字あたり |
Ailootはリクエスト前に見積額を確保します。結果の取得後、実測使用量に基づいて最終料金を精算します。ストリーミング時の精算には最終の使用量記録を使用します。金額の確保と精算の仕組み →
リクエスト例
Ailoot Ultra · 音声合成
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_VOICE_ID:?Choose an accepted voice ID from this exact model profile}"
export AILOOT_VOICE_ID
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "minimax/speech-2.8-turbo", "input": "Good afternoon! This is a short voice take."}')
voice=os.environ["AILOOT_VOICE_ID"]
allowed=json.loads('["English_expressive_narrator", "English_radiant_girl", "English_magnetic_voiced_man", "English_compelling_lady1", "English_Aussie_Bloke", "English_captivating_female1", "English_Upbeat_Woman", "English_Trustworth_Man", "English_CalmWoman", "English_UpsetGirl", "English_Gentle-voiced_man", "English_Whispering_girl", "English_Diligent_Man", "English_Graceful_Lady", "English_ReservedYoungMan", "English_PlayfulGirl", "English_ManWithDeepVoice", "English_MaturePartner", "English_FriendlyPerson", "English_MatureBoss", "English_Debator", "English_LovelyGirl", "English_Steadymentor", "English_Deep-VoicedGentleman", "English_Wiselady", "English_CaptivatingStoryteller", "English_DecentYoungMan", "English_SentimentalLady", "English_ImposingManner", "English_SadTeen", "English_PassionateWarrior", "English_WiseScholar", "English_Soft-spokenGirl", "English_SereneWoman", "English_ConfidentWoman", "English_PatientMan", "English_Comedian", "English_BossyLeader", "English_Strong-WilledBoy", "English_StressedLady", "English_AssertiveQueen", "English_AnimeCharacter", "English_Jovialman", "English_WhimsicalGirl", "English_Kind-heartedGirl"]')
if voice not in allowed: raise SystemExit("Choose an accepted voice ID from this exact model profile")
p["voice"]=voice
p["response_format"]="mp3"
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o speech.mp3
結果を受け取って保存
Ailoot Ultra · 音声合成
mp3
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
その他のコンテンツ取得
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-assets.json
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_MEDIA_TASK_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_MEDIA_TASK_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_MEDIA_TASK_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/tasks/$resource_id" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-task.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-task.json").read_text())))
PY_RESULT
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_ASSET_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_ASSET_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_ASSET_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/assets/$resource_id" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-asset.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-asset.json").read_text())))
PY_RESULT
完了した結果をすべて保存
返された完全なレスポンス、ファイル、コンテンツ部分をすべて保存してください。
バイナリ結果の全体とヘッダーを保存してください。JSON または複数の出力が返された場合は、すべてのデータ項目を保存し、実際に返された署名付きアセット URL から各アセットを取得してください。
元のレスポンスを確認する場合
再送せずに照合できるよう、元の operation_id/X-Client-Request-ID を保存してください。音声専用のポーリングルートはありません。
レスポンスのフィールド
| フィールド | 種類 |
|---|---|
フィールドbinary audio | 種類bytes |
フィールドresponse headers | 種類headers |
エラーと次の手順
| レスポンス | 条件 | 次の手順 |
|---|---|---|
レスポンス400 · invalid_request_error | 条件必須フィールド、素材の表現形式、またはパラメーター値が不正です | 次の手順新しい生成リクエストを送る前に、指定されたフィールドを修正してください。 |
レスポンスserver_error | 条件返されたレスポンスは、操作または結果の確認が必要であることを示しています | 次の手順最初に返された操作/タスク ID、リクエストヘッダー、レスポンスを保存し、その元の操作に対してサポートされている読み取りを継続してください。作成リクエストを再送しないでください。 |
エイリアス
モデルのエイリアス
Ailoot Ultra minimax/speech-2.8-turbo
メソッドパスのエイリアス
上記に表示されたメソッドパスを使用してください。
関連する呼び出し用ID
FAQ · MiniMax: Speech 2.8 Turbo
- 利用できる入力と結果は何ですか?
POST /v1/audio/speech·minimax/speech-2.8-turbo:text→audio- リクエストはどの項目を使用しますか?
POST /v1/audio/speech·minimax/speech-2.8-turbo:model,input,voice,response_format