Skip to main content
即時語音辨識(Qwen-ASR-Realtime)

Qwen-ASR即時語音辨識WebSocket API

即時語音辨識-千問服務通過 WebSocket 通訊協定,接收即時音頻流並即時轉寫。支援 VAD 模式 和 Manual 模式 互動流程。

使用者指南:關於模型介紹和選型建議請參見語音辨識,範例程式碼請參見即時語音辨識

介面地址

WebSocket URL 固定如下,通過查詢參數 model 指定要調用的模型名稱(將 <model_name> 替換為實際的模型):
  • 新加坡
  • 華北2(北京)
wss://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api-ws/v1/realtime?model=<model_name>調用時請將{WorkspaceId}替換為真實的Workspace ID
阿里雲百鍊為華北2(北京)、新加坡地區推出了業務空間專屬網域名稱,能夠為推理請求提供卓越的效能和更高的穩定性,建議遷移至新網域名稱:
  • 華北2(北京)地區:從 dashscope.aliyuncs.com 遷移至 {WorkspaceId}.cn-beijing.maas.aliyuncs.com
  • 新加坡地區:從 dashscope-intl.aliyuncs.com 遷移至 {WorkspaceId}.ap-southeast-1.maas.aliyuncs.com
{WorkspaceId}需要替換為真實的Workspace ID。現有網域名稱仍可正常使用。
URL 必須使用 wss:// 協議。Authorization 在要求標頭中設定(參見要求標頭),模型通過 URL 查詢參數 model 指定。

要求標頭

要求標頭中需添加如下資訊:

參數

類型

是否必選

說明

Authorization

string

鑒權令牌,格式為 Bearer <your_api_key>,將 <your_api_key> 替換為實際的 API Key。

user-agent

string

用戶端標識,便於服務端追蹤來源。

X-DashScope-WorkSpace

string

阿里雲百鍊業務空間ID

X-DashScope-DataInspection

string

是否啟用資料合規檢測功能。預設不傳或設為enable。如非必要,請勿啟用該參數。

Authorization 鑒權在 WebSocket 握手階段驗證。如果 API Key 無效或缺失,握手將失敗並返回 HTTP 401/403 錯誤。

互動流程

用戶端事件和服務端事件的詳細說明,請參見用戶端事件服務端事件 支援兩種互動模式:
  • VAD 模式(預設):服務端自動檢測語音的起點和終點(斷句),適用於即時對話、會議記錄等情境。
  • Manual 模式:由用戶端控制斷句,適用於用戶端能明確判斷語句邊界的情境,如聊天軟體中的發送語音。

VAD 模式(預設)

服務端自動檢測語音的起點和終點(斷句)。開發人員只需持續發送音頻流,服務端會在檢測到一句話結束時自動返回最終識別結果。此模式適用於即時對話、會議記錄等情境。 啟用方式:配置用戶端session.update事件的session.turn_detection參數。
  • 用戶端通過發送input_audio_buffer.append事件將音頻追加到緩衝區。
  • 服務端在檢測到語音時返回input_audio_buffer.speech_started事件。 注意:如果用戶端尚未收到該事件,就直接發送session.finish結束會話,服務端會直接返回session.finished事件,隨後用戶端需主動中斷連線。
  • 用戶端繼續發送input_audio_buffer.append事件提交音頻。
  • 用戶端在音頻提交完後,發送session.finish事件通知服務端結束當前會話。
    在 VAD 模式下,推完音頻後必須先發送session.finish事件再關閉串連。如果用戶端直接關閉 WebSocket 串連而未發送該事件,服務端將丟棄當前 in_progress item,conversation.item.input_audio_transcription.completed 等事件將不會到達。建議在調用 ws.Close() 之前,先發送 {"type":"session.finish"},並等待收到session.finished事件後再關閉串連。
  • 服務端在檢測到語音結束時返回input_audio_buffer.speech_stopped事件。
  • 服務端返回input_audio_buffer.committed事件。
  • 服務端返回conversation.item.created事件。
  • 服務端返回conversation.item.input_audio_transcription.text事件,其中包含語音辨識即時結果。
  • 服務端返回conversation.item.input_audio_transcription.completed事件,其中包含語音辨識最終結果。
  • 服務端返回session.finished事件,通知用戶端識別結束,此時用戶端需要主動中斷連線。

Manual 模式

由用戶端控制斷句。用戶端需要發送完一整句話的音頻後,再發送一個input_audio_buffer.commit事件來通知服務端。此模式適用於用戶端能明確判斷語句邊界的情境,如聊天軟體中的發送語音。 啟用方式:將用戶端session.update事件的session.turn_detection設為null。
  • 用戶端通過發送input_audio_buffer.append事件將音頻追加到緩衝區。
  • 用戶端通過發送input_audio_buffer.commit事件來提交輸入音頻緩衝區。 該提交會在對話中建立一個新的使用者訊息項。
  • 用戶端發送session.finish事件通知服務端結束當前會話。
  • 服務端返回input_audio_buffer.committed事件進行響應。
  • 服務端返回conversation.item.input_audio_transcription.text事件,其中包含語音辨識即時結果。
  • 服務端返回conversation.item.input_audio_transcription.completed事件,其中包含語音辨識最終結果。
  • 服務端返回session.finished事件,通知用戶端識別結束,此時用戶端需要主動中斷連線。
文本產生
映像產生
視頻產生
音頻
Realtime API
  • 概述
向量與排序
模型生產