本文介紹通過 WebSocket 串連訪問 Qwen-TTS 即時語音合成服務的介面地址、要求標頭和互動流程。
使用者指南:關於模型介紹和選型建議請參見即時語音合成
Qwen-TTS Realtime API 基於 WebSocket 通訊協定。Java 和 Python 推薦通過 DashScope SDK 調用,可免去處理 WebSocket 細節;其他語言可使用 WebSocket 庫直接連接。
WebSocket URL 固定如下,通過查詢參數
要求標頭中需添加如下資訊:
用戶端事件和服務端事件的詳細說明,請參見用戶端事件和服務端事件。
支援兩種使用模式:
關鍵流程說明:
介面地址
WebSocket URL 固定如下,通過查詢參數 model 指定要調用的模型名稱:
- 新加坡
- 華北2(北京)
WebSocket URL:
wss://dashscope-intl.aliyuncs.com/api-ws/v1/realtime?model=qwen3-tts-flash-realtime要求標頭
要求標頭中需添加如下資訊:
參數 | 類型 | 是否必選 | 說明 |
|---|---|---|---|
Authorization | string | 是 | 鑒權令牌,格式為 |
user-agent | string | 否 | 用戶端標識,便於服務端追蹤來源。 |
X-DashScope-WorkSpace | string | 否 | 阿里雲百鍊業務空間ID。 |
互動流程
用戶端事件和服務端事件的詳細說明,請參見用戶端事件和服務端事件。
支援兩種使用模式:
- ServerCommit 模式:服務端智能判斷文本分段與合成時機,開發人員無需關心內部狀態切分。
- Commit 模式:用戶端控制每一段文本的提交時間,需顯式調用
input_text_buffer.commit觸發合成。
模式說明:
- ServerCommit 模式下調用
input_text_buffer.append多次,系統根據內部規則判斷合成起點。 - 若在 ServerCommit 模式中主動調用
input_text_buffer.commit,表示立即合成當前緩衝內容,後續仍維持 ServerCommit 模式。 - Commit 模式下僅調用
input_text_buffer.append不會觸發合成,需明確調用input_text_buffer.commit。
-
串連階段:用戶端發起 WebSocket 串連,服務端返回
session.created,表示會話已初始化。 -
配置會話:用戶端發送
session.update事件設定音色、格式、模式等參數。 -
文本輸入階段:用戶端通過多次發送
input_text_buffer.append添加文本到緩衝區。 -
觸發合成階段:
- ServerCommit 模式中系統自動判斷合成時機,或用戶端手動調用
input_text_buffer.commit強制觸發。 - Commit 模式中僅
input_text_buffer.commit操作才會真正觸發語音合成流程。
- ServerCommit 模式中系統自動判斷合成時機,或用戶端手動調用
-
音頻產生階段:服務端發出
response.created表示任務已啟動,隨後分區返迴音頻response.audio.delta(base64 編碼),直到response.audio.done。 -
會話結束階段:用戶端顯式調用
session.finish通知服務端清理狀態,服務端返回session.finished後關閉串連。
session.created 事件: