curl --request POST \
--url https://api.evolink.ai/v1/audios/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "qwen-audio-3.1-tts-flash",
"prompt": "我家的后面有一个很大的花园。"
}
'{
"created": 1790000000,
"id": "task-unified-1790000000-abcd1234",
"model": "qwen-audio-3.1-tts-flash",
"object": "audio.generation.task",
"progress": 0,
"status": "pending",
"task_info": {
"can_cancel": false,
"estimated_time": 3,
"audio_type": "tts"
},
"type": "audio",
"usage": {
"credits_reserved": 0.0144
}
}Qwen Audio 3.1 TTS Flash 音声合成
- テキストを音声に変換します。1 回あたり最大
5000文字 - 68 種類のシステム音声は音声一覧を参照してください。Voice Enrollment で自分が複製・設計した音声も使用できます
- カスタム音声はデフォルトで作成タスク完了から
6 時間で期限切れになります。以後の合成は404(voice_expired)を返すため、Voice Enrollment で再作成してください - 自然言語の指示(
instruction)、テキスト内の感情・非言語音タグ、SSML、発音のカスタマイズ(hot_fix)に対応 - 以下に記載されたパラメータのみ受け付けます。それ以外は
400(unsupported_parameter) - 非同期処理です。返されたタスク ID で結果を照会してください
- 送信後はキャンセルできません
- 生成音声のリンクは 24 時間有効です。早めに保存してください
課金:
- 実際のトークン使用量で課金します。入力トークン(テキスト長に関連)と出力トークン(音声の長さに関連)は別々に計算されます
- 送信時にテキスト長からクレジットを予約します(
usage.credits_reserved)。完了後に実使用量で精算し、余剰分を返還、不足分を追加請求します。失敗時は全額返還 - 数字・文字・記号を一つずつ読み上げると、同じ長さの通常の文章より音声が長くなり、出力トークンも増えます。実際の消費が予約額を超える場合があります
- 同じテキストでも
[very slowly]などの指示・タグでゆっくり話すと出力トークンが大幅に増えることがあります。speech_rateの調整や SSML のポーズは出力トークンを増やしません
タスク結果(status が completed の場合):
| フィールド | 説明 |
|---|---|
results[0] | 音声 URL |
result_data[0].audio_url | 音声 URL。results[0] と同じ |
result_data[0].format | 音声形式 |
result_data[0].sample_rate | サンプルレート(Hz) |
usage.input_tokens / usage.output_tokens / usage.total_tokens | 今回の合成のトークン使用量 |
usage.credits_used | 実際に消費したクレジット |
curl --request POST \
--url https://api.evolink.ai/v1/audios/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "qwen-audio-3.1-tts-flash",
"prompt": "我家的后面有一个很大的花园。"
}
'{
"created": 1790000000,
"id": "task-unified-1790000000-abcd1234",
"model": "qwen-audio-3.1-tts-flash",
"object": "audio.generation.task",
"progress": 0,
"status": "pending",
"task_info": {
"can_cancel": false,
"estimated_time": 3,
"audio_type": "tts"
},
"type": "audio",
"usage": {
"credits_reserved": 0.0144
}
}承認
ボディ
- Option 1
- Option 2
prompt または input の少なくとも一方に空でないテキストを指定してください。両方指定する場合は内容が一致している必要があります。response_format と format も、両方指定する場合は値が一致している必要があります。
合成するテキスト
制約:
- 最大
5000文字 - 長いテキストでは句読点を残してください。文の区切りがない長文は、上流で約
1500出力トークン(約 120 秒の音声)に切り詰められることがあります。タスクは成功扱いのまま、実際に生成したトークンで課金され、ゲートウェイはこの切り詰めを検出できません inputでも指定できます。少なくとも一方に空でないテキストが必要です。片方のみの指定を推奨します。両方の内容が異なる場合は400(parameter_conflict)- 選択した音声が対応する言語のテキストを使用してください。非対応言語では発音が不正確になる場合があります
感情・非言語音タグ: 追加パラメータなしでテキスト内に直接挿入できます。タグの文字列も課金換算の文字数に含まれます
- 制御タグ: 次の制御タグまで、後続テキストの感情やスタイルを設定します。
[sad]悲しい,[amazed]驚いた,[deep and loud shouting]低く大きな叫び,[trembling]震えた声,[angry]怒り,[excited]興奮,[sarcastic]皮肉,[curious]好奇心,[like dracula]低く不気味,[bored]退屈,[tired]疲れ,[scornful]軽蔑,[shouting]叫び,[asmr]ASMR の柔らかなささやき,[panicked]パニック,[mischievously]いたずらっぽい,[empathetic]共感,[whispers]ささやき,[reluctantly]不本意,[crying]泣き声,[serious]真剣,[very slowly]非常にゆっくり,[very fast]非常に速く - 非言語音タグ: その位置に発声効果を挿入します。前後のテキストの感情は変えません。
[gasp]息をのむ,[sighing]ため息,[clears throat]咳払い,[giggles]くすくす笑い,[laughing]笑い声,[cough]咳,[snorts]鼻を鳴らす
例: [excited]今天的天气真不错![laughing]我们一起出去玩吧!
enable_ssml が true の場合、このフィールドを SSML として解析します
5000\S"我家的后面有一个很大的花园。"
モデル名
qwen-audio-3.1-tts-flash "qwen-audio-3.1-tts-flash"
prompt の別名です。文字数制限と使用規則は同じです
promptまたはinputの少なくとも一方に空でないテキストを指定- 両方指定する場合は内容が一致する必要があります。不一致は
400(parameter_conflict)
5000"我家的后面有一个很大的花园。"
音声名。大文字と小文字を区別します
- 68 種類のシステム音声の名称・性別・用途は音声一覧を参照
- 未指定時は
longanhuan_v3.1 - 自分が Voice Enrollment で作成した音声も使用可能です。複製は
qwen-audio-3.1-tts-flash-{prefix}-{32-character-id}、設計はqwen-audio-3.1-tts-flash-vd-{prefix}-{32-character-id}形式です。作成したアカウントのみ使用できます。qwen-voice-designのqwen-tts-vd-…など別モデルの音声は400(invalid_voice)。存在しない音声や別アカウントの音声は404(voice_not_found) - カスタム音声はデフォルトで作成タスク完了から
6 時間で期限切れになります。以後の合成は404(voice_expired)。Voice Enrollment で再作成してください
"longanhuan_v3.1"
出力音声形式。mp3、wav、opus に対応し、デフォルトは mp3
opusは Ogg Opus コンテナformatでも指定可能です。片方のみの指定を推奨します。値が異なる場合は400(parameter_conflict)
mp3, wav, opus "mp3"
response_format の別名。mp3、wav、opus に対応
- 両方未指定の場合は
mp3 - 両方指定する場合は値の一致が必要です。不一致は
400(parameter_conflict)
mp3, wav, opus "mp3"
出力サンプルレート(Hz)
response_formatがopusの場合、22050と44100は非対応- 未指定または
nullはデフォルト値を使用。0または一覧以外の値は400
8000, 12000, 16000, 22050, 24000, 44100, 48000, null 24000
音量。範囲は 0 ~ 100
0 <= x <= 10050
話速の倍率
1.0:通常の速度(デフォルト)2.0:2 倍速、0.5:半分の速度
範囲は 0.5 ~ 2.0。話速の調整は出力トークン数を変えません
0.5 <= x <= 21
ピッチの倍率
1.0:デフォルトの高さ1.0より大きいと高く、小さいと低くなります
範囲は 0.5 ~ 2.0
ピッチの変更は話速と音声の長さも変えます
- 高くすると速く短く、低くすると遅く長くなります。長さはおおむねピッチ値の二乗に反比例します
1.0で約 2.8 秒の文の場合、0.8で約 4.3 秒、1.2で約 2.1 秒、0.5で約 10.9 秒、2.0で約 0.7 秒0.8~1.2の微調整を推奨します。0.5や2.0に近いと明らかに遅すぎたり速すぎたりしますspeech_rateも1.0以外で指定した場合、pitchは無効です。併用して効果を重ねることはできません- ピッチの調整は出力トークン数を変えません
0.5 <= x <= 21
感情、口調、役柄、方言などを制御する自然言語の指示
制約:
- 課金換算で最大
100文字。漢字(日本語の漢字や韓国語の漢字も含む)は 2、その他の文字(仮名・ハングルを含む)は 1 と数えます(漢字約 50 文字または英語約 100 文字)。超過は400
例:
用欢快、热情的语气说(明るく熱意のある口調)请用上海话表达(上海語で話す。多言語・方言音声向け)Speak slowly in a calm and gentle tone
指示自体は入力トークンに含まれませんが、生成音声の長さを変え、出力トークンに影響することがあります
パラメータ名は単数形の
instructionです。instructionsは400
"用欢快、热情的语气说"
対象言語のヒント。数字・略語・記号の読み方や、比較的少数の言語での合成を改善します
例:hello, this is 110 に zh を指定すると、110 を中国語の「yao yao ling」と読みます
| 値 | 言語 | 値 | 言語 |
|---|---|---|---|
zh | 中国語 | th | タイ語 |
en | 英語 | id | インドネシア語 |
fr | フランス語 | vi | ベトナム語 |
de | ドイツ語 | es | スペイン語 |
ja | 日本語 | it | イタリア語 |
ko | 韓国語 | ms | マレー語 |
ru | ロシア語 | fil | フィリピン語 |
pt | ポルトガル語 | ar | アラビア語 |
未指定時はモデルが自動判定します。このパラメータはテキストを翻訳しません
zh, en, fr, de, ja, ko, ru, pt, th, id, vi, es, it, ms, fil, ar "zh"
prompt を SSML として解析するかどうか
有効にすると SSML タグを使用できます。例えば <break time="1s"/> でポーズを挿入します:
<speak>欢迎收听今天的节目。<break time="1s"/>我们马上开始。</speak>
SSML のポーズは出力トークンに含まれません
false
多音字や固有名詞などの読みを補正する発音指定とテキスト置換
pronunciation:単語にピンインを指定します。音節は空白で区切り、声調は数字で示します。例:tian1 qi4replace:合成前に単語を置換します。置換後のテキストで合成・課金し、置換後も最大5000文字です。超過は400(prompt_too_long)
両リスト合計で最大 200 エントリです。オブジェクト内のキーと値のペアを数えます。超過は 400(invalid_parameter)
少なくとも一方を指定してください。指定する各リストは空でない配列で、各要素は {"単語": "値"} 形式のオブジェクトです
例:
{
"pronunciation": [{"天气": "tian1 qi4"}],
"replace": [{"今天": "金天"}]
}
Show child attributes
Show child attributes
生成音声に不可視の AIGC 識別情報を埋め込むかどうか(wav / mp3 / opus で有効)
false
タスク結果の HTTPS コールバック URL
送信タイミング:
- タスク完了(
completed)または失敗(failed)時。このモデルはキャンセル非対応です - 課金確定後に送信
セキュリティ要件:
- HTTPS のみ
- プライベート IP は禁止(127.0.0.1、10.x.x.x、172.16~31.x.x、192.168.x.x など)
- URL は最大
2048文字
配信:
- タイムアウト:
10秒 - 失敗後は最大
3回、1/2/4秒後に再試行 - 本文形式はタスク照会 API のレスポンスと同じ
- 2xx は成功、それ以外は再試行
"https://your-domain.com/webhooks/tts-completed"
レスポンス
音声合成タスクの作成に成功
タスク作成時刻のタイムスタンプ
1790000000
タスク ID
"task-unified-1790000000-abcd1234"
実際に使用されたモデル名
"qwen-audio-3.1-tts-flash"
タスクオブジェクトの具体的な種類
audio.generation.task タスク進捗率(0~100)
0 <= x <= 1000
タスクの状態
pending, processing, completed, failed "pending"
音声タスクの詳細
Show child attributes
Show child attributes
タスクの出力タイプ
audio "audio"
使用量と課金情報
Show child attributes
Show child attributes