qwen3.5-livetranslate-flash-realtime 是視覺增強型即時翻譯模型,支援 60 種語言互譯(其中 29 種支援音頻+文本輸出、31 種僅支援文本輸出),可同時處理音頻與映像輸入,適用於即時視頻流或本地視頻檔案,利用視覺上下文資訊提升翻譯準確性,並即時輸出高品質的翻譯文本與音頻。
線上體驗參見通過Function Compute一鍵部署。
功能特性
- 多語言支援:支援 60 種語言互譯,其中 29 種支援音頻+文本輸出、31 種僅支援文本輸出,覆蓋中文、英語、法語、德語、俄語、日語、韓語、西班牙語、葡萄牙語、阿拉伯語等主流語種。
- 視覺增強:利用視覺內容提升翻譯準確性。模型通過分析畫面中的口型、動作和文字,改善在嘈雜環境下或一詞多義情境中的翻譯效果。
- 2.3 秒延遲:實現低至 2.3 秒的同傳延遲。
- 即時說話人分離:支援在多人交替發言時區分不同說話人及其發言內容,讓聽眾清楚了解「誰說了什麼」。
- 無損同傳:通過語義單元預測技術,解決跨語言語序問題。即時翻譯品質接近離線翻譯結果。
- 音色自然:產生音色自然的擬人語音。模型能根據源語音內容,自適應調節語氣和情感。
- 配置熱詞:通過熱詞提升特定詞彙的翻譯準確性。
- 聲音複刻:支援複刻發言人音色用於翻譯播報,讓輸出聽起來像本人說外語。支援即時複刻和使用預先複刻的固定音色。
如何使用
1. 配置串連
透過 WebSocket 接入時,需要以下配置項:
支援透過 AOQ、WebRTC 和 WebSocket 協定接入。如果是用戶端對接,且更看重穩定的延遲、弱網下的互動能力、即時雙工的降噪與回聲消除,可優先考慮 AOQ,協議對比與選型請參見Realtime API 概述。
| 配置項 | 說明 |
|---|---|
| 調用地址 | 華北2(北京)地區:wss://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api-ws/v1/realtime新加坡地區:wss://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api-ws/v1/realtime調用時請將{WorkspaceId}替換為真實的業務空間ID。 |
| 查詢參數 | 查詢參數為model,需指定為訪問的模型名。樣本:?model=qwen3.8-livetranslate-flash-realtime |
| 訊息頭 | 使用 Bearer Token 鑒權:Authorization: Bearer DASHSCOPE_API_KEYDASHSCOPE_API_KEY 是您在百鍊上申請的API-KEY。 |
WebSocket 串連 Python範例程式碼
WebSocket 串連 Python範例程式碼
2. 配置語種、輸出模態與音色
傳送 session.update,收到 session.updated 後再傳送音訊。
-
目標語言:透過
session.translation.language設定,預設為en(英語),可選值見支援的語言。使用qwen3.8-livetranslate-flash-realtime時,來源語言由模型自動識別。使用qwen3.5-livetranslate-flash-realtime時,如需指定來源語言,需透過session.input_audio_transcription.language設定;省略時自動識別。 -
輸出方式:使用
qwen3.8-livetranslate-flash-realtime時,將session.output_modalities設為["text"]可僅傳回譯文,設為["text", "audio"]可同時傳回譯文和譯音(預設)。僅支援文字的目標語言必須使用["text"]。使用qwen3.5-livetranslate-flash-realtime時,輸出模態欄位為session.modalities,可選值及預設值相同。 -
原文識別:使用
qwen3.8-livetranslate-flash-realtime時,原文識別始終開啟,不支援關閉。透過conversation.item.input_audio_transcription.delta接收增量,透過conversation.item.input_audio_transcription.completed接收完整結果。使用qwen3.5-livetranslate-flash-realtime時,原文識別預設開啟。如需調整,需透過session.input_audio_transcription.model設定:qwen3-asr-flash-realtime表示開啟,null表示關閉。增量透過conversation.item.input_audio_transcription.text傳回,完整結果透過conversation.item.input_audio_transcription.completed傳回。 -
音訊與音色:使用
qwen3.8-livetranslate-flash-realtime時,預設輸入為 16000 Hz PCM,輸出為 24000 Hz PCM,預設音色為Tina。可透過 session.created 傳回的session.audio.output.voice查看音色。如需保留說話人的音色,參見聲音複刻。使用qwen3.5-livetranslate-flash-realtime時,透過session.sample_rate、session.input_audio_format和session.output_audio_format設定音訊,透過session.voice設定音色,預設音色同樣為Tina。 -
熱詞:透過
session.translation.corpus.phrases指定品牌拼寫或固定譯法,詳見設定熱詞。建議熱詞不超過1000個。
3. 輸入音頻與圖片
用戶端通過 input_audio_buffer.append 和 input_image_buffer.append 事件發送 Base 64 編碼的音頻和圖片資料。音頻輸入是必需的;圖片輸入是可選的。
圖片可以來自本地檔案,或從視頻流中即時採集。使用
qwen3.8-livetranslate-flash-realtime 時,預設採用 session.audio.input.turn_detection.type = speaker_detection,持續傳送音訊後,由服務端自動偵測語音起止並產生翻譯回應,無需逐句手動提交。配置方法與說話人標識的處理見區分發言人。
qwen3.5-livetranslate-flash-realtime:VAD 與 Manual 模式
qwen3.5-livetranslate-flash-realtime:VAD 與 Manual 模式
- VAD 模式(預設):用戶端持續發送input_audio_buffer.append事件;服務端檢測到語音開始/結束時,分別返回input_audio_buffer.speech_started、input_audio_buffer.speech_stopped事件,並自動認可音頻緩衝區、觸發翻譯。翻譯響應基於流式語音同步產生,通常在語音輸入過程中就已開始,無需等待語音結束。
- Manual 模式:將
session.turn_detection設為null。用戶端發送完一段完整的語音後,主動發送input_audio_buffer.commit事件提交音頻緩衝區;服務端返回input_audio_buffer.committed事件確認後,自動開始產生翻譯響應,用戶端無需再發送其他事件觸發響應。提交前若需清空未提交的音頻,可發送input_audio_buffer.clear事件。
4. 接收模型響應
使用 qwen3.8-livetranslate-flash-realtime 時,依輸出模態接收回應:
- 原文:累加
conversation.item.input_audio_transcription.delta,透過conversation.item.input_audio_transcription.completed取得完整原文。 - 譯文:僅文字使用
response.text.delta;文字和音訊使用response.audio_transcript.delta。將同一訊息項目的delta按接收順序累加,不覆蓋先前內容。 - 譯音:將
response.audio.delta的delta欄位從 Base64 解碼,按順序播放或儲存。
response.done 表示本次翻譯回應結束,須檢查 response.status 確認是否成功;會話仍可繼續傳送音訊。
qwen3.5-livetranslate-flash-realtime:回應事件差異
qwen3.5-livetranslate-flash-realtime:回應事件差異
-
輸出源語言識別結果
通過
session.input_audio_transcription.model參數配置。設定為qwen3-asr-flash-realtime後,服務端會在翻譯的同時返回輸入音訊語音辨識結果(源語言原文)。 啟用後,服務端會返回以下事件:conversation.item.input_audio_transcription.text:流式返回識別結果。conversation.item.input_audio_transcription.completed:識別完成後返回最終結果。conversation.item.input_audio_transcription.failed:識別失敗時返回錯誤資訊。
- 僅輸出文本 服務端通過response.text.text事件流式返回增量翻譯文本(含已確認文本和待確認的預測文本);翻譯完成後,通過response.text.done事件返回完整的翻譯文本。
-
輸出文本+音頻
- 文本 通過response.audio_transcript.text事件流式返回增量翻譯文本;翻譯完成後,通過response.audio_transcript.done事件返回完整的翻譯文本。
- 音頻 通過response.audio.delta事件返回 Base 64 編碼的增量音頻資料。
5. 結束會話
音頻發送完畢後,用戶端必鬚髮送 session.finish 事件通知服務端,然後等待服務端返回 session.finished 事件後再關閉 WebSocket 串連。
支援的模型
推薦模型
| 模型名稱 | 版本 | 上下文長度 | 最大輸入 | 最大輸出 |
|---|---|---|---|---|
| (Token數) | ||||
| qwen3.8-livetranslate-flash-realtime | 穩定版 | 53,248 | 49,152 | 4,096 |
qwen3.5-livetranslate-flash-realtime當前能力等同 qwen3.5-livetranslate-flash-realtime-2026-05-19 | 穩定版 | 53,248 | 49,152 | 4,096 |
| qwen3.5-livetranslate-flash-realtime-2026-05-19 | 快照版 | |||
快速開始
即時翻譯麥克風輸入
-
使用 Python 3.10 或更高版本,安裝
pyaudio:安裝 WebSocket 套件:- macOS
- Debian/Ubuntu
- CentOS
- Windows
pip install websocket-client。 -
設定以下環境變數,API Key 與業務空間需屬於連線位址所用的地區:
DASHSCOPE_API_KEY: 對應地區與業務空間的 API Key,取得方式見取得 API Key。DASHSCOPE_WORKSPACE_ID: 業務空間 ID,詳見業務空間與地區。
-
將下方程式碼儲存為
livetranslate_client.py,執行python livetranslate_client.py,然後對著麥克風說話。
qwen3.8-livetranslate-flash-realtime,將麥克風輸入翻譯為英語,即時列印譯文並播放譯音。輸入為 16000 Hz、單聲道、16 位元 PCM,播放的譯音為 24000 Hz、單聲道、16 位元 PCM。按 Ctrl+C 停止錄音後,範例傳送 session.finish,繼續接收並播放剩餘結果,收到 session.finished 後關閉連線。建議使用耳機,避免譯音再次進入麥克風。
配置熱詞
對於需要固定譯法或區分同音詞的翻譯場景,新增熱詞可以提升翻譯準確性。例如:
- 固定譯法:阿里雲 slogan「計算,為了無法計算的價值。」約定的英文是「Computing, for the value beyond computation.」,需要保留措辭和語序。
- 同音品牌名稱:Qoder 與普通詞 coder 發音相同。如果說的是產品 Qoder,譯文需要保留品牌拼寫。
| 輸入音訊內容 | 未配置熱詞 | 配置熱詞 |
|---|---|---|
| 計算,為了無法計算的價值。 | Calculate. For a value that cannot be calculated. | Computing, for the value beyond computation. |
| Qoder 是面向真實工作的 Agentic 平台。 | Coder is an agentic platform designed for real-world work. | Qoder, is an agentic platform designed for real-world work. |
配置方法
熱詞透過 session.translation.corpus.phrases 配置,以 key-value 形式將來源語言詞語或片語映射為目標譯法。
在快速開始的首次 session.update 請求中,將以下 translation 物件合入現有 session,保留會話已有的輸出模態、音色等設定。
session.updated 後,再開始傳送 input_audio_buffer.append。
區分發言人
qwen3.8-livetranslate-flash-realtime 可識別不同發言人,透過 speaker_id 標識。根據該標識關聯原文與譯文後,可以按發言人顯示字幕。
保留預設 speaker_detection,或在 session.update 中明確設定。threshold 用於區分靜音與有效人聲,低於閾值的聲音會被過濾,不會輸入模型。該閾值固定為 0.5。
- 從
input_audio_buffer.speech_started取得speaker_id和原文item_id。 - 從
conversation.item.input_audio_transcription.delta取得同一item_id的原文。 - 從譯文的
conversation.item.created取得item.id和事件頂層的previous_item_id,將譯文項目關聯到原文項目。 - 收到譯文增量後,以
item_id找到原文和說話人,再更新字幕。
def receive_translation(): 之前。在該函式內,緊接 event = receive() 呼叫 handle_speaker_event(event),並將原本的 print(event["delta"], end="", flush=True) 替換為 pass,由下方片段統一輸出字幕。原文或譯文更新時會列印發言人標識、原文與譯文,方便按發言人顯示字幕。保留原有音訊與會話結束處理。
利用映像提升翻譯準確率
千問即時翻譯系列模型支援圖像輸入,輔助音訊翻譯,適用於同音異義、低頻專有名詞識別情境。建議每秒傳送不超過2張圖片。
將以下樣本圖片下載到本地:口罩.png面具.png
複用快速開始的麥克風輸入與連線設定:
- 安裝圖像處理套件:
pip install Pillow。 - 將
translation.language改為zh,執行範例時對著麥克風說What is mask?。 - 在麥克風範例的
def send_audio():之前加入下方圖片讀取程式碼,並用新的send_audio()替換原函式。片段使用已有的input_stream、stop_recording、ws、send_errors和匯入項目。
Ctrl+C 停止錄音後,範例會請求結束會話並接收剩餘結果。
聲音複刻
模型支援發言人聲音複刻功能,支援使用預先複刻的固定音色,也支援在翻譯過程中即時複刻,讓翻譯播報聽起來像本人說外語。適用於跨語言演講、個人主播、視頻翻譯等需要保留個人音色的情境。
即時複刻:qwen3.8-livetranslate-flash-realtime 和 qwen3.5-livetranslate-flash-realtime 在翻譯過程中從輸入音訊複刻音色,不額外收取複刻費用;模型呼叫仍按 Token 用量計費。
預先建立音色:透過聲音複刻 API建立音色,按 $0.01/個計費,建立失敗不計費;免費額度的地區、次數與有效期限見該計費說明。使用已建立的音色翻譯時,仍按模型呼叫的 Token 用量計費。
在 session.update 中設定以下參數啟用:
-
session.enable_voice_clone:設定為true,啟用聲音複刻。 -
session.voice_clone_options.frequency:控制聲音複刻時機,取值如下:never:使用預先建立的固定音色,本次翻譯不重新提取音色。將session.voice設為自己的複刻音色 ID。once:在會話開始時從輸入音訊提取一次音色,本次會話後續翻譯複用該音色。「一次」指提取次數,並非只生成一次譯音。適合單人演講,session.voice必須設為default。always:每次生成翻譯音訊前重新提取音色,讓譯音跟隨發言人變化。適合多人對話,session.voice必須設為default。
-
session.voice:指定輸出音色,取值取決於frequency的設定。- 設定為
default:搭配frequency為once或always使用,複刻輸入音訊音色,複刻完成前使用預設音色過渡。 - 設定為使用者複刻的音色 ID(如
qwen-translate-vc-xxx-yyy-zzz):搭配frequency為never使用。需提前通過聲音複刻API準備音色,target_model需指定為實際使用的翻譯模型。
- 設定為
當frequency為once或always時,voice必須設定為default,不可設定為其他預設音色,否則服務端會返回錯誤。
聲音複刻配置樣本
使用 qwen3.8-livetranslate-flash-realtime 時,將對應的 session.update 配置替換到快速開始的該模型範例中。
qwen3.5-livetranslate-flash-realtime 時,將範例中的 session.output_modalities 替換為 session.modalities,其餘複刻參數相同。連線時需將 model 指定為該模型,並依接收模型回應中的對應說明處理回應事件。通過Function Compute一鍵部署
控制台暫不支援體驗。可通過以下方式一鍵部署:
- 開啟我們寫好的Function Compute模板,填入 API Key, 單擊建立並部署預設環境即可線上體驗。
-
等待約一分鐘,在 環境詳情 > 環境資訊 中擷取訪問網域名稱,將訪問網域名稱的
http改成https(例如https://qwen-livetranslate-flash-realtime-intl.fcv3.xxx.ap-southeast-1.fc.devsapp.net/),通過該連結與模型互動。
如需開通存取控制許可權,請跟隨頁面指引操作。
通過資源資訊-函數資源查看專案原始碼。
Function Compute與阿里雲百鍊均為新使用者提供免費額度,可以覆蓋簡單調試所需成本,額度耗盡後隨用隨付。只有在訪問的情況下會產生費用。
互動流程
使用 qwen3.8-livetranslate-flash-realtime 時,主要互動流程如下:
| 階段 | 用戶端 | 伺服器 |
|---|---|---|
| 建立連線 | 位址與驗證 | session.created |
| 設定翻譯 | session.update | session.updated 或 error |
| 輸入 | 持續傳送 input_audio_buffer.append,按需傳送圖片 | 說話人標識與原文識別事件 |
| 接收 | 累加譯文、解碼譯音 | 增量事件,response.done 表示本次回應結束 |
| 結束 | 停止輸入、傳送 session.finish,繼續接收 | session.finished 後關閉連線,等待播放結束 |
qwen3.5-livetranslate-flash-realtime:互動流程
qwen3.5-livetranslate-flash-realtime:互動流程
| 生命週期 | 用戶端事件 | 服務端事件 |
|---|---|---|
| 會話初始化 | session.update會話配置 | session.created會話已建立session.updated 會話配置已更新 |
| 使用者音頻輸入 | input_audio_buffer.append添加音頻到緩衝區input_image_buffer.append 添加圖片到緩衝區input_audio_buffer.commit (僅 Manual 模式)提交音頻緩衝區 | VAD 模式:input_audio_buffer.speech_started檢測到語音開始input_audio_buffer.speech_stopped 檢測到語音結束,服務端自動認可音頻緩衝區Manual 模式:input_audio_buffer.committed 用戶端發送 input_audio_buffer.commit 後返回,確認音頻緩衝區已提交 |
| 服務端音訊輸出 | 無 | response.created服務端開始產生響應response.output_item.added 響應時有新的輸出內容conversation.item.created 對話中建立新的訊息項response.content_part.added 新的輸出內容添加到assistant messageresponse.text.text 僅文本模態下增量產生的翻譯文本response.audio_transcript.text 音頻+文本模態下增量產生的譯文response.audio.delta 模型增量產生的音頻response.text.done 僅文本模態下翻譯文本完成response.audio_transcript.done 音頻+文本模態下譯文產生完成response.audio.done 音頻產生完成response.content_part.done Assistant message 的文本或音頻內容流式輸出完成response.output_item.done Assistant message 的整個輸出項串流完成response.done 響應完成 |
| 會話結束 | session.finish通知服務端音頻發送完畢 | session.finished服務端完成處理,會話結束 |
API 參考
- 即時音視頻翻譯(Qwen-Livetranslate-Realtime)。
- AOQ用戶端API
- Realtime API 概述(WebRTC 協議說明)
計費說明
-
Qwen3.8-LiveTranslate-Flash-Realtime / Qwen3.5-LiveTranslate-Flash-Realtime
- 音頻:輸入每秒音頻消耗 7 Token,輸出每秒音頻消耗 12.5 Token。
- 圖片:每輸入 32*32 像素消耗 0.5 Token。
- 文本:啟用源語言語音辨識功能後,服務除返回翻譯結果外,還會返回輸入音訊語音辨識文本(即源語言原文),該識別文本將按輸出文本的 Token 標準計費。 Token 費用請參見選擇模型。
qwen3.8-livetranslate-flash-realtime 和 qwen3.5-livetranslate-flash-realtime 在翻譯過程中從輸入音訊複刻音色,不額外收取複刻費用;模型呼叫仍按 Token 用量計費。
預先建立音色:透過聲音複刻 API建立音色,按 $0.01/個計費,建立失敗不計費;免費額度的地區、次數與有效期限見該計費說明。使用已建立的音色翻譯時,仍按模型呼叫的 Token 用量計費。
限流說明
模型的限流規則請參見限流。
支援的語種
下表中的語種代碼可用於指定源語種與目標語種。
部分目標語種僅支援輸出文本,不支援輸出音頻。
語種代碼 | 語種 | 支援的輸出模態 |
|---|---|---|
zh | 中文 | 音頻+文本 |
en | 英語 | 音頻+文本 |
ar | 阿拉伯語 | 音頻+文本 |
de | 德語 | 音頻+文本 |
fr | 法語 | 音頻+文本 |
es | 西班牙語 | 音頻+文本 |
pt | 葡萄牙語 | 音頻+文本 |
id | 印尼語 | 音頻+文本 |
it | 意大利語 | 音頻+文本 |
ko | 韓語 | 音頻+文本 |
ru | 俄語 | 音頻+文本 |
th | 泰語 | 音頻+文本 |
vi | 越南語 | 音頻+文本 |
ja | 日語 | 音頻+文本 |
tr | 土耳其語 | 音頻+文本 |
hi | 印地語 | 音頻+文本 |
ms | 馬來語 | 音頻+文本 |
nl | 荷蘭語 | 音頻+文本 |
ur | 烏爾都語 | 音頻+文本 |
nb | 挪威語 | 音頻+文本 |
sv | 瑞典語 | 音頻+文本 |
da | 丹麥語 | 音頻+文本 |
he | 希伯來語 | 音頻+文本 |
fi | 芬蘭語 | 音頻+文本 |
pl | 波蘭語 | 音頻+文本 |
is | 冰島語 | 音頻+文本 |
cs | 捷克語 | 音頻+文本 |
fil | 菲律賓語 | 音頻+文本 |
fa | 波斯語 | 音頻+文本 |
yue | 粵語 | 文本 |
el | 希臘語 | 文本 |
af | 南非荷蘭語 | 文本 |
ast | 阿斯圖里亞斯語 | 文本 |
be | 白俄羅斯語 | 文本 |
bg | 保加利亞語 | 文本 |
bn | 孟加拉語 | 文本 |
bs | 波斯尼亞語 | 文本 |
ca | 加泰羅尼亞語 | 文本 |
ceb | 宿務語 | 文本 |
et | 愛沙尼亞語 | 文本 |
gl | 加利西亞語 | 文本 |
gu | 古吉拉特語 | 文本 |
hr | 克羅地亞語 | 文本 |
hu | 匈牙利語 | 文本 |
jv | 爪哇語 | 文本 |
kk | 哈薩克語 | 文本 |
kn | 卡納達語 | 文本 |
ky | 柯爾克孜語 | 文本 |
lv | 拉脫維亞語 | 文本 |
mk | 馬其頓語 | 文本 |
ml | 馬拉雅拉姆語 | 文本 |
mr | 馬拉地語 | 文本 |
pa | 旁遮普語 | 文本 |
ro | 羅馬尼亞語 | 文本 |
sk | 斯洛伐克語 | 文本 |
sl | 斯洛文尼亞語 | 文本 |
sw | 斯瓦希裡語 | 文本 |
tg | 塔吉克語 | 文本 |
az | 阿塞拜疆語 | 文本 |
uk | 烏克蘭語 | 文本 |
支援的音色
即時翻譯支援的音色與voice參數取值參見音色列表。