當您需要對音視頻媒體或直播流中的語音內容進行風險檢測時,可使用基於通義大模型定製的語音審核服務,自動識別涉黃、涉政、辱罵等違規內容。本文介紹語音審核大模型的服務選型、計費方式和接入方法。
服務概覽
語音審核大模型針對語音情境的內容風險特性,定製訓練千問審核大模型,提供以下服務:
音视频媒体检测_大模型版:
基於通義大模型檢測語音檔案中的違規風險,支援中文、英語、日語、德語、韓語、俄語、法語、葡萄牙語、阿拉伯語、意大利語、西班牙語、印地語、印尼語、泰語、土耳其語、烏克蘭語、越南語、捷克語、丹麥語、菲律賓語、芬蘭語、冰島語、馬來語、挪威語、波蘭語、瑞典語等26種語種,適用於檔案上傳、批量審核情境。
社交娱乐直播检测_大模型版:
基於通義大模型即時檢測直播流語音中的違規風險,支援中文、英語、日語、德語、韓語、俄語、法語、葡萄牙語、阿拉伯語、意大利語、西班牙語、印地語、印尼語、泰語、土耳其語、烏克蘭語、越南語、捷克語、丹麥語、菲律賓語、芬蘭語、冰島語、馬來語、挪威語、波蘭語、瑞典語等26種語種,適用於即時資料流審核、低延遲檢測情境。
服務選型
服務 | 檢測說明 | 支援地區 | 對應計費項目 | 適用情境 |
音视频媒体检测_大模型版(audio_detection_byllm_global) |
| 新加坡 | 語音審核大模型標準(audio_llm_standard) |
|
社交娱乐直播检测_大模型版(live_detection_byllm_global) |
| 新加坡 | 語音審核大模型標準(audio_llm_standard) |
|
計費說明
語音審核大模型服務支援付費方式。
按量後付費
開通語音審核2.0版服務後,預設按量後付費,按實際用量結算當日費用,不調用服務不收費。
審核類型(計費項目) | 支援的業務情境(服務) | 計費單價 |
語音審核進階(audio_advanced) |
| 18美元/千分鐘 說明 調用1次左側任一服務進行1次計費,單價為0.018美元/分鐘(18美元/千分鐘)。根據實際調用量計費,如調用100次音视频媒体检测_大模型版服務(每次1分鐘),計費1.8美元。 |
Alibaba Content Security Service2.0版的隨用隨付的計量出賬頻率為24小時/次。在出賬詳單中,moderationType對應上述審核類型欄位。可查看賬單詳情。
資源套件抵扣
審核量較大或有相對固定的審核需求時,建議預先購買資源套件。購買資源套件規格越大,享受的折扣越大,支援疊加購買和使用。更多內容,請參見購買Alibaba Content Security Service2.0版抵扣資源套件。
審核類型 | 抵扣係數 |
語音審核進階(audio_advanced) | 抵扣係數為60,表示每成功調用服務單位分鐘,抵扣資源套件的容量規格60次。 說明 例如,購買的資源套件容量規格為100次,審核1分鐘語音時間長度,調用成功後抵扣容量規格消耗60次,剩餘40次。 |
購買後,使用語音審核2.0版API所產生的用量會優先抵扣資源套件的次數,當資源套件次數不足以抵扣時,阿里雲費用系統會自動按照隨用隨付進行出賬,請及時關注資源套件餘量和隨用隨付賬單。可通過阿里雲費用中心的資源套件系統設定餘量預警通知。
接入指南
步驟一:開通服務
訪問開通服務,開通語音審核2.0版服務。
開通語音審核2.0版服務後,預設付費方式是按量後付費,且按照實際用量結算當日費用,不調用服務不收費。介面接入使用後系統會按使用量自動出賬,具體資訊,請參見計費說明。也可購買按量抵扣資源套件,資源套件相較於後付費存在一定階梯折扣,適合使用量級可預期和較大的使用者。
步驟二:為RAM使用者授權
接入SDK或API前,需要為RAM使用者授權。為阿里雲帳號和RAM使用者建立存取金鑰(AccessKey),調用API時使用AccessKey完成身分識別驗證。擷取方式,請參見擷取AccessKey。
使用阿里雲帳號(主帳號)或Resource Access Management員登入RAM控制台。
建立RAM使用者。具體操作,請參見建立RAM使用者。
向RAM使用者授權系統策略許可權:AliyunYundunGreenWebFullAccess。具體操作,請參見管理RAM使用者的許可權。完成以上配置後,可以使用RAM使用者調用Alibaba Content Security ServiceAPI。
授權完成後,使用RAM使用者的AccessKey調用一次API,返回正常響應即表示授權成功。
步驟三:安裝並接入SDK
請參考語音審核增強版2.0版SDK及接入指南,目前支援的接入地區如下:
地區 | 外網接入地址 | 內網接入地址 | 支援服務 |
新加坡 | green-cip.ap-southeast-1.aliyuncs.com | green-cip-vpc.ap-southeast-1.aliyuncs.com | audio_detection_byllm_global、live_detection_byllm_global |
步驟四:調整語音審核的規則(可選)
可在Alibaba Content Security Service控制台調整語音審核大模型的檢測規則,包括文本審核規則、複製service、配置自訂詞庫、查詢檢測記錄、查詢用量等。
規則調整完成後,提交一個測試審核任務,在控制台的檢測記錄中確認新規則已生效。
API介面
使用說明
調用該介面建立語音內容檢測任務。關於如何構造HTTP請求,請參見HTTP原生調用;也可直接選用已構造好的HTTP請求,更多資訊,請參見語音審核增強版2.0版SDK及接入指南。
業務介面:
提交審核任務:VoiceModeration
查詢審核任務:VoiceModerationResult
取消審核任務:VoiceModerationCancel
計費資訊:
該介面為收費介面。僅對HTTP狀態代碼為200的請求進行計量計費,產生其他錯誤碼時不會計費。關於計費方式,請參見計費說明。
服務效能:
服務效能
說明
音頻檔案大小
增強版支援音頻檔案的大小限制為500 MB。
音頻檔案格式
支援音頻檔案格式:MP3、WAV、AAC、WMA、OGG、M4A、AMR。
可使用視訊檔案格式:AVI、FLV、MP4、MPG、ASF、WMV、MOV、RMVB、RM。
音頻直播流
支援以下協議:RTMP、HLS、HTTP-FLV、RTSP。
請求頻率(QPS)
提交工作要求頻率(QPS)為100次/秒。
並發路數
增強版支援的預設並發路數限制為50路。
提交審核任務
請求參數
名稱 | 類型 | 是否必須 | 樣本值 | 描述 |
Service | String | 是 | audio_detection_byllm_global | 審核服務類型。取值:
|
ServiceParameters | JSONString | 是 | 審核服務需要的參數集。JSON字串格式,關於每個字串的描述,請參見ServiceParameters。 |
表 1. ServiceParameters
名稱 | 類型 | 是否必須 | 樣本值 | 描述 |
url | String | 是。語音審核增強版支援三種方式傳入檔案,請選擇其中一種:
| http://aliyundoc.com/test.mp3 | 待檢測對象的URL:公網HTTP/HTTPS URL。 |
ossBucketName | String | bucket_01 | 已授權OSS空間的Bucket名。 說明 使用OSS視頻內網地址時必須先使用阿里雲帳號(即主帳號)訪問雲資源訪問授權頁面進行授權。 | |
ossObjectName | String | 20240307/07/28/test.mp3 | 已授權OSS空間的檔案名稱。 | |
ossRegionId | String | cn-shanghai | OSS Bucket所在地區。 | |
callback | String | 否 | http://aliyundoc.com | 檢測結果回調通知URL,支援使用HTTP和HTTPS協議。該欄位為空白時,需要定時輪詢檢測結果。 callback介面必須支援POST方法、UTF-8編碼的傳輸資料,以及表單參數checksum和content。 Alibaba Content Security Service按照以下規則和格式設定checksum和content,調用callback介面返回檢測結果。
說明 服務端callback介面收到Alibaba Content Security Service推送的結果後,如果返回的HTTP狀態代碼為200,則表示接收成功,其他HTTP狀態代碼均視為接收失敗。接收失敗時,Alibaba Content Security Service將最多重複推送16次檢測結果,直到接收成功。重複推送16次後仍未接收成功,則不再推送,建議檢查callback介面的狀態。 |
seed | String | 否 | abc**** | 隨機字串,該值用於回調通知請求中的簽名。 由英文字母、數字、底線(_)組成,不超過64個字元。自訂用於在接收到Alibaba Content Security Service的回調通知時校正請求由阿里雲Alibaba Content Security Service服務發起。 說明 當使用callback時,該欄位必須提供。 |
cryptType | String | 否 | SHA256 | 使用回調通知時(callback),設定對回調通知內容進行簽名的演算法。Alibaba Content Security Service會將返回結果(由使用者uid + seed + content拼接的字串)按照設定的密碼編譯演算法計算簽名,再發送到回調通知地址。取值:
|
liveId | String | 否 | liveId1**** | 語音直播流的ID。 該參數用於語音直播任務去重,防止重複資料偵測,如果傳遞該參數,會根據 |
dataId | String | 否 | voice20240307*** | 檢測對象對應的資料ID。 由大小寫英文字母、數字、底線(_)、短劃線(-)、英文句號(.)組成,不超過64個字元,可以用於唯一標識業務資料。 |
referer | String | 否 | www.aliyun.com | referer要求標頭,用於防盜鏈等情境。長度不超過256個字元。 |
返回參數
名稱 | 類型 | 樣本值 | 描述 |
Code | Integer | 200 | 狀態代碼。更多資訊,請參見Code說明。 |
Data | JSONObject | {"TaskId": "AAAAA-BBBBB","DataId": "voice20240307***"} | 審核結果資料。 |
Message | String | OK | 請求訊息的響應訊息。 |
RequestId | String | AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE**** | 請求ID。 |
樣本
請求樣本
{
"Service": "audio_detection_byllm_global",
"ServiceParameters": {
"cryptType": "SHA256",
"seed": "abc***123",
"callback": "https://aliyun.com/callback",
"url": "http://aliyundoc.com/test.mp3"
}
}正常返回樣本
{
"Code": 200,
"Data": {
"TaskId": "AAAAA-BBBBB",
"DataId": "voice20240307***"
},
"Message": "SUCCESS",
"RequestId": "AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****"
}查詢任務結果
直播類型審核任務過程中,查詢結果會返回最近N條語音片段資料。任務審核完成後,查詢結果會返回全部語音片段資料。
查詢審核任務:VoiceModerationResult。
計費資訊:該介面不計費。
查詢逾時:建議將查詢間隔設定為30秒(即在提交非同步檢測任務30秒後查詢結果),最長不能超過24小時,否則結果將會自動刪除。
QPS限制
本介面的單使用者QPS限制為100次/秒。超過限制,API調用會被限流,可能影響業務,請合理調用。
請求參數
名稱 | 類型 | 是否必須 | 樣本值 | 描述 |
Service | String | 是 | audio_detection_byllm | 審核服務類型。 |
ServiceParameters | JSONString | 是 | 審核服務需要的參數集。JSON字串格式,關於每個字串的描述,請參見ServiceParameters。 |
表 2. ServiceParameters
名稱 | 類型 | 是否必須 | 樣本值 | 描述 |
taskId | String | 是 | AAAAA-BBBBB | 提交任務返回的ID。 |
返回參數
名稱 | 類型 | 樣本值 | 描述 |
Code | Integer | 200 | 狀態代碼。更多資訊,請參見Code說明。 |
Data | JSONObject | 音頻內容檢測結果。更多資訊,請參見Data。 | |
Message | String | OK | 請求訊息的響應訊息。 |
RequestId | String | AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE**** | 請求ID。 |
表 3. Data
名稱 | 類型 | 樣本值 | 描述 |
Url | String | https://aliyundoc.com/text.mp3 | 檢測對象的URL。 |
LiveId | String | liveId1**** | 語音直播流的ID(可選)。 |
DataId | String | voice20240307*** | 檢測對象對應的資料ID(可選)。 |
RiskLevel | String | high | 音訊風險等級,根據所有音頻切片計算後返回,傳回值包括:
說明 高風險內容建議直接處置;中風險內容建議人工複查;低風險內容建議在高召回需求時再做處理,日常建議和未檢測到風險做相同處理。 |
SliceDetails | JSONArray | 返回語音片段的詳細結果。具體內容,請參見sliceDetails。 |
表 4. sliceDetails
名稱 | 類型 | 樣本值 | 描述 |
StartTime | Integer | 0 | 句子開始的時間,單位:秒。 |
EndTime | Integer | 4065 | 句子結束的時間,單位:秒。 |
StartTimestamp | Integer | 1678854649720 | 切片開始時間戳,單位:毫秒。 |
EndTimestamp | Integer | 1678854649720 | 切片結束時間戳記,單位:毫秒。 |
Text | String | 噁心的 | 語音轉換成常值內容。 |
Url | String | https://aliyundoc.com | 如果檢測的內容是語音流,表示該段文本對應的語音流的臨時訪問地址。該地址有效時間為30分鐘,需要及時轉存。 |
RiskLevel | String | high | 音頻切片的風險等級,傳回值包括:
|
Result | JSONArray | 返回的語音審核結果。具體內容,請參見Result。 |
表 5. Result
名稱 | 類型 | 樣本值 | 描述 |
Label | String | political_entity | 語音內容檢測運算後返回的標籤,可能會檢出多個標籤和分值。包含文本策略的標籤和語音專用便簽兩部分:
說明 特定聲音和呻吟聲音預設不會檢測,如需檢測,請聯絡商務經理。 |
Description | String | 疑似與性相關的情況 | 對Labal欄位的說明。 重要 該欄位為Label欄位的解釋說明,可能會變更調整,實際處理結果時建議處理Label欄位,不要基於該欄位進行結果處置。 |
Confidence | Float | 81.22 | 置信分值,0到100分,保留到小數點後2位。部分標籤無置信分。 |
RiskLevel | String | high | 當前標籤的風險等級,傳回值包括:
|
Riskwords | String | AA,BB,CC | 檢測到的敏感詞,多個詞用逗號分隔,部分標籤不會返回敏感詞。 |
CustomizedHit | JSONArray | [{"LibName":"...","Keywords":"..."}] | 當命中自訂庫時,Label為customized,返回自訂庫名稱和自訂詞,具體參見CustomizedHit。 |
RiskPositions | JSONArray | 檢測到敏感詞的位置資訊。更多資訊,請參見RiskPositions。 |
表 6. CustomizedHit
名稱 | 類型 | 樣本值 | 描述 |
LibName | String | 自訂庫1 | 自訂庫名稱 |
Keywords | String | 自訂詞1,自訂詞2 | 自訂詞,多個詞用逗號分隔。 |
表 7. RiskPositions
名稱 | 類型 | 樣本值 | 描述 |
RiskWord | String | AA | 檢測到的敏感詞。 |
StartPos | Integer | 10 | 敏感詞的開始位置。 |
EndPos | Integer | 12 | 敏感詞的結束位置。 |
樣本
請求樣本
{
"Service": "audio_detection_byllm",
"ServiceParameters": {
"taskId": "AAAAA-BBBBB"
}
}正常返回樣本
{
"Code": 200,
"Data": {
"DataId": "voice20240307***",
"LiveId": "liveId1****",
"RiskLevel": "high",
"SliceDetails": [
{
"StartTime": 0,
"EndTime": 4065,
"RiskLevel": "high",
"Result": [
{
"Label": "political_entity",
"Description": "疑似政治實體",
"Confidence": 100.0,
"RiskLevel": "high",
"RiskWords": "詞A,詞B",
"RiskPositions": [
{
"EndPos": 14,
"RiskWord": "詞A",
"StartPos": 16
}
]
}
],
"Text": "Alibaba Content Security Service產品測試案例",
"Url": "https://aliyundoc.com"
}
]
},
"Message": "OK",
"RequestId": "AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****"
}取消審核任務
僅直播流的審核任務支援取消,檔案類型的任務不支援取消。
取消審核任務:VoiceModerationCancel。
計費資訊:該介面不計費。
請求參數
名稱 | 類型 | 是否必須 | 樣本值 | 描述 |
Service | String | 是 | live_detection_byllm_global | 審核服務類型。 |
ServiceParameters | JSONString | 是 | 審核服務需要的參數集。JSON字串格式,關於每個字串的描述,請參見ServiceParameters。 |
表 5. ServiceParameters
名稱 | 類型 | 是否必須 | 樣本值 | 描述 |
taskId | String | 是 | AAAAA-BBBBB | 提交任務返回的ID。 |
返回參數
名稱 | 類型 | 樣本值 | 描述 |
Code | Integer | 200 | 狀態代碼。更多資訊,請參見Code說明。 |
Message | String | OK | 請求訊息的響應訊息。 |
RequestId | String | AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE**** | 請求ID。 |
樣本
請求樣本
{
"Service": "live_detection_byllm_global",
"ServiceParameters": {
"taskId": "AAAAA-BBBBB"
}
}正常返回參數
{
"Code": 200,
"Message": "OK",
"RequestId": "AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****"
}回調訊息格式
回調訊息的資料為JSON格式的表單如下所示:
欄位名 | 欄位類型 | 描述 |
checksum | String | 校正碼,字串格式,由使用者 使用者UID即阿里雲帳號ID,可以在阿里雲控制台查詢。為防篡改,擷取到推送結果時,可按上述演算法產生字串,與checksum做一次校正。 說明 使用者UID必須是阿里雲帳號的UID,而不是RAM使用者的UID。 |
taskId | String | 回調訊息的任務ID。 |
content | String | 序列化後的檢測結果,JSON字串格式,請自行解析反轉成JSON對象。關於content結果的格式,與查詢任務結果的返回一致。詳細資料,請參見返回參數。 |
Code說明
以下為介面返回code的含義說明,系統僅對code返回為200的請求計量計費,其他code不會計費。
Code | 說明 |
200 | 請求正常。 |
280 | 檢測中。 |
400 | 請求參數為空白。 |
401 | 請求參數錯誤。 |
402 | 請求參數長度不符合介面規定,請檢查並修改。 |
403 | 請求超過QPS限制,請檢查並調整QPS限制。 |
404 | 傳入的檔案下載遇到錯誤,請檢查或重試。 |
405 | 傳入的檔案下載逾時,可能是因為檔案無法訪問,請檢查調整後重試。 |
406 | 傳入的檔案超過大小限制,請檢測調整後重試。 |
407 | 傳入的檔案格式暫不支援,請檢查調整後重試。 |
408 | 該帳號無許可權調用該介面,可能是帳號未開通或者已欠費,或者調用帳號未被授權訪問。 |
480 | 檢測並發路數超過限制,請檢查並調整並發。 |
500 | 系統異常。 |