本文介紹Qwen-Audio-3.0-ASR-Flash-Filetrans/Fun-ASR非即時語音辨識HTTP API的參數和介面細節。
使用者指南:非即時語音辨識。關於支援的音頻格式、檔案大小限制、時間長度限制等輸入要求,請參見音頻規格。
流程說明
與DashScope同步調用(一次請求、立即返回結果)不同,非同步呼叫專為處理長音頻檔案或耗時較長的任務設計,該模式採用“提交-輪詢”的兩步式流程,避免了因長時間等待而導致的請求逾時:
-
第一步:提交任務
- 用戶端發起一個非同步處理請求。
- 伺服器驗證請求後,不會立即執行任務,而是返回一個唯一的
task_id,表示任務已成功建立。
-
第二步:擷取結果
- 用戶端使用擷取到的
task_id,通過輪詢方式反覆調用結果查詢介面。 - 當任務處理完成後,結果查詢介面將返回最終的識別結果。
- 用戶端使用擷取到的
介面地址
新加坡
提交任務介面:POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/audio/asr/transcription
查詢任務介面:GET https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/tasks/{task_id}
調用時請將{WorkspaceId}替換為真實的Workspace ID。
華北2(北京)
提交任務介面:POST https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/audio/asr/transcription
查詢任務介面:GET https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/tasks/{task_id}
調用時請將{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。現有網域名稱仍可正常使用。
重要使用新版網域名稱(https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com)提交任務時,請求參數中必須包含parameters對象。即使無需設定任何參數,也必須傳入Null 物件{},否則任務可正常提交,但識別將失敗。
要求標頭
參數 | 類型 | 是否必選 | 說明 |
|---|---|---|---|
Authorization | string | 是 | 鑒權令牌,格式為 |
Content-Type | string | 是 | 請求參數的媒體類型。僅提交任務介面需要傳入,固定為 |
X-DashScope-Async | string | 是 | 非同步任務標識。僅提交任務介面需要傳入,固定為 |
提交任務介面
提交語音辨識任務。該介面非同步返回,業務側需結合查詢任務介面輪詢任務狀態。
請求參數model 指定模型名。支援Qwen-Audio-3.0-ASR-Flash-Filetrans和Fun-ASR系列模型,詳情請參見支援的模型與地區。 input 輸入參數對象。 parameters 請求參數對象。 重要使用新版網域名稱( | 普通調用以下為新加坡地區的配置,調用時請將"{WorkspaceId}"替換為真實的業務空間ID,各地區的配置不同。新加坡地區和北京地區的API Key不同。 即時熱詞使用即時熱詞時格式如下: 上下文使用上下文時格式如下: |
響應參數request_id 本次調用的唯一識別碼。 output 提交任務返回的資料。 | |
查詢任務介面
查詢語音辨識任務的執行情況和結果。建議輪詢調用直至任務終態。
請求參數task_id 重要該參數為URL路徑參數,無請求參數。 查詢任務需指定其ID,該ID為提交任務介面被調用後返回的 | 以下為新加坡地區的配置,調用時請將"{WorkspaceId}"替換為真實的業務空間ID,各地區的配置不同。新加坡地區和北京地區的API Key不同。 |
響應參數request_id 本次調用的唯一識別碼。 output 查詢任務返回的資料。 | |
其他介面:批量查詢任務狀態/取消任務
詳情請參見管理非同步任務:支援批量查詢24小時內提交的非即時語音辨識任務,同時支援取消PENDING(排隊)狀態的任務。
識別結果說明
識別結果儲存為JSON檔案。
點擊查看識別結果樣本
{
"file_url":"{YOUR_AUDIO_URL}",
"properties":{
"audio_format":"pcm_s16le",
"channels":[
0
],
"original_sampling_rate":16000,
"original_duration_in_milliseconds":3834
},
"transcripts":[
{
"channel_id":0,
"content_duration_in_milliseconds":3720,
"text":"Hello world, 這裡是阿里巴巴語音實驗室。",
"sentences":[
{
"begin_time":100,
"end_time":3820,
"text":"Hello world, 這裡是阿里巴巴語音實驗室。",
"sentence_id":1,
"speaker_id":0, //當開啟自動說話人分離功能時才會顯示該欄位
"words":[
{
"begin_time":100,
"end_time":596,
"text":"Hello ",
"punctuation":""
},
{
"begin_time":596,
"end_time":844,
"text":"world",
"punctuation":", "
}
// 這裡省略其它內容
]
}
]
}
]
}
需要關注的參數如下:
參數 | 類型 | 說明 |
|---|---|---|
audio_format | string | 源檔案中音訊格式。 |
channels | array[integer] | 源檔案中音訊音軌索引資訊,對單軌音頻返回[0],對雙軌音頻返回[0, 1],以此類推。 |
original_sampling_rate | integer | 源檔案中音訊採樣率(Hz)。 |
original_duration_in_milliseconds | integer | 源檔案中的原始音頻時間長度(ms)。 |
channel_id | integer | 轉寫結果的音軌索引,以0為起始。 |
content_duration | integer | 音軌中被判定為語音內容的時間長度(ms)。 語音辨識模型服務僅對音軌中被判定為語音內容的時間長度進行語音轉寫,並據此進行計量計費,非語音內容不計量、不計費。通常情況下語音內容時間長度會短於原始音頻時間長度。由於對是否存在語音內容的判定是由AI模型給出的,可能與實際情況存在一定誤差。 |
transcript | string | 段落層級的語音轉寫結果。 |
sentences | array | 句子層級的語音轉寫結果。 |
words | array | 詞層級的語音轉寫結果。 |
begin_time | integer | 開始時間戳(ms)。 |
end_time | integer | 結束時間戳記(ms)。 |
text | string | 語音轉寫結果。 |
speaker_id | integer | 當前說話人的索引,以0為起始,用於區分不同的說話人。 僅在啟用說話人分離功能時,該欄位才會顯示於識別結果中。 |
punctuation | string | 預測出的詞之後的標點符號(如有)。 |