即時語音辨識-千問服務通過 WebSocket 通訊協定,接收即時音頻流並即時轉寫。支援 VAD 模式 和 Manual 模式 互動流程。
使用者指南:關於模型介紹和選型建議請參見語音辨識,範例程式碼請參見即時語音辨識。
WebSocket URL 固定如下,通過查詢參數
要求標頭中需添加如下資訊:
用戶端事件和服務端事件的詳細說明,請參見用戶端事件和服務端事件。
支援兩種互動模式:
服務端自動檢測語音的起點和終點(斷句)。開發人員只需持續發送音頻流,服務端會在檢測到一句話結束時自動返回最終識別結果。此模式適用於即時對話、會議記錄等情境。
啟用方式:配置用戶端
由用戶端控制斷句。用戶端需要發送完一整句話的音頻後,再發送一個
介面地址
WebSocket URL 固定如下,通過查詢參數 model 指定要調用的模型名稱(將 <model_name> 替換為實際的模型):
- 新加坡
- 華北2(北京)
wss://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api-ws/v1/realtime?model=<model_name>調用時請將{WorkspaceId}替換為真實的Workspace ID。要求標頭
要求標頭中需添加如下資訊:
參數 | 類型 | 是否必選 | 說明 |
|---|---|---|---|
Authorization | string | 是 | 鑒權令牌,格式為 |
user-agent | string | 否 | 用戶端標識,便於服務端追蹤來源。 |
X-DashScope-WorkSpace | string | 否 | 阿里雲百鍊業務空間ID。 |
X-DashScope-DataInspection | string | 否 | 是否啟用資料合規檢測功能。預設不傳或設為 |
互動流程
用戶端事件和服務端事件的詳細說明,請參見用戶端事件和服務端事件。
支援兩種互動模式:
- 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事件通知服務端結束當前會話。 -
服務端在檢測到語音結束時返回
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事件,通知用戶端識別結束,此時用戶端需要主動中斷連線。