API功能介紹
圖片審核增強版API用于識別圖像中是否有違反網絡內容傳播相關規定、影響平臺內容秩序、影響用戶體驗的內容或元素,支持60+的內容風險標簽和100+的風險管控項。通過內容安全的圖片審核增強版,您可以根據業務所處的行業場景規范或平臺內容治理規則,基于API返回的豐富的風險標簽和置信分,對具體圖片內容制定進一步的審核或治理措施。更多介紹,請參見圖片審核增強版介紹及計費說明。
接入指引
注冊阿里云賬號:立即注冊,按照操作提示完成賬號注冊。
開通內容安全按量付費:請確保您已開通服務,開通不收費,接口接入使用后系統會按使用量自動出賬,詳情請參見計費說明。您也可以購買按量抵扣資源包,資源包相較于后付費存在一定階梯抵扣,適合使用量級可預期和較大的用戶。
創建AccessKey:請確保您已通過RAM創建AccessKey,如果您使用的是子賬號AccessKey,您需要通過主賬號給子賬號賦予AliyunYundunGreenWebFullAccess權限,具體操作,請參見RAM授權。
開發接入:推薦使用SDK方式調用,具體方法請詳見圖片審核增強版SDK及接入指南。
圖片審核增強版異步檢測服務包含以下2個接口:
ImageAsyncModeration:提交圖片異步審核任務
DescribeImageModerationResult:獲取審核任務結果
提交異步檢測任務
使用說明
您可以調用該接口創建圖片內容檢測任務。關于如何構造HTTP請求,請參見HTTP原生調用;您也可以直接選用已構造好的HTTP請求,更多信息,請參見接入指南。
業務接口:ImageAsyncModeration
支持的地域及接入地址:
地域
外網接入地址
內網接入地址
支持服務
華東2(上海)
https://green-cip.cn-shanghai.aliyuncs.com
https://green-cip-vpc.cn-shanghai.aliyuncs.com
baselineCheck、baselineCheck_pro、tonalityImprove、aigcCheck、profilePhotoCheck、postImageCheck、advertisingCheck、liveStreamCheck
華北2(北京)
https://green-cip.cn-beijing.aliyuncs.com
https://green-cip-vpc.cn-beijing.aliyuncs.com
計費信息:
該接口為收費接口。僅對HTTP狀態碼為200的請求進行計量計費,產生其他錯誤碼時不會計費。關于計費方式,請參見計費說明。
圖片要求:
圖片支持以下格式:PNG、JPG、JPEG、BMP、WEBP、TIFF、SVG、HEIC(該格式最長邊需小于8192 px)、ICO(取最后一圖)、GIF(默認取第一幀,支持通過參數設置多幀)。
圖片大小限制在20 MB以內,高或者寬不能超過16,384 px,且總像素不能超過1.67億 px。像素建議大于200*200(px),像素過低會影響內容安全檢測算法的效果。
圖片下載時間限制為7秒內,如果下載時間超過7秒,返回下載超時。
返回結果:異步檢測任務不會實時返回檢測結果,您需要通過callback或者輪詢的方式獲取檢測結果。檢測結果最長保留3天。
callback獲取檢測結果:提交異步檢測任務時,在請求參數中傳入callback參數,用來自動接收檢測結果。
輪詢獲取檢測結果:提交異步檢測任務時,無需傳入callback參數;提交異步檢測任務后,調用結果查詢接口獲取檢測結果。異步檢測當前為排隊檢測,結果會在24小時內檢測完畢。
QPS限制
本接口的單用戶QPS限制為100次/秒。超過限制,API調用會被限流,這可能會影響您的業務,請合理調用。如果您業務量級較大或者有緊急擴容需求需要更大QPS,請聯系您的商務經理。
調試
在接入前,您也可以通過阿里云OpenAPI在線調試圖片審核增強版的接口,查看調用示例代碼及SDK依賴信息,方便概覽接口的使用方法和參數。
在線調試能力是基于當前登錄賬號調用內容安全的API接口,因此調用量會計入賬號的收費用量中。
請求參數
關于在請求中必須包含的公共請求參數,請參考公共參數。
請求body是一個JSON結構體,包含以下字段:
名稱 | 類型 | 是否必選 | 示例值 | 描述 |
Service | String | 是 | baselineCheck | 圖片檢測增強版支持的檢測服務。取值:
說明 不同服務區別請參考服務說明。 |
ServiceParameters | JSONString | 是 | 內容檢測對象的相關參數集。JSON字符串格式,關于每個字符串的描述,請參見ServiceParameters。 |
表 1. ServiceParameters
名稱 | 類型 | 是否必選 | 示例值 | 描述 |
imageUrl | String | 是。圖片審核增強版支持三種方式傳入圖片,請您選擇其中一種:
| https://img.alicdn.com/tfs/TB1U4r9AeH2gK0jSZJnXXaT1FXa-2880-480.png | 待檢測對象的URL,請確保該URL能通過公網訪問到,且URL地址長度不超過2048個字符。 說明 URL地址中不能包含中文,且一次請求請確保僅傳入1條URL。 |
ossBucketName | String | bucket_01 | 已授權OSS空間的Bucket名。 說明 使用OSS圖片內網地址時必須先使用阿里云賬號(即主賬號)訪問云資源訪問授權頁面進行授權。 | |
ossObjectName | String | 2022023/04/24/test.jpg | 已授權OSS空間的文件名。 | |
ossRegionId | String | cn-beijing | OSS Bucket所在區域。 | |
dataId | String | 否 | img123**** | 檢測對象對應的數據ID。 由大小寫英文字母、數字、下劃線(_)、短劃線(-)、英文句號(.)組成,不超過64個字符,可以用于唯一標識您的業務數據。 |
callback | String | 否 | http://www.aliyundoc.com | 檢測結果回調通知您的URL,支持使用HTTP和HTTPS協議的地址。該字段為空時,您必須定時輪詢檢測結果。 callback接口必須支持POST方法、UTF-8編碼的傳輸數據,以及表單參數ReqId,Checksum和Content。 內容安全按照以下規則和格式設置ReqId,Checksum和Content,調用您的callback接口返回檢測結果。
說明 您的服務端callback接口收到內容安全推送的結果后,如果返回的HTTP狀態碼為200,則表示接收成功,其他的HTTP狀態碼均視為接收失敗。接收失敗時,內容安全將最多重復推送16次檢測結果,直到接收成功。重復推送16次后仍未接收成功,則不再推送,建議您檢查callback接口的狀態。 |
seed | String | 否 | abc**** | 隨機字符串,該值用于回調通知請求中的簽名。 由英文字母、數字、下劃線(_)組成,不超過64個字符。由您自定義,用于在接收到內容安全的回調通知時校驗請求由阿里云內容安全服務發起。 說明 當使用callback時,該字段必須提供。 |
cryptType | String | 否 | SHA256 | 使用回調通知時(callback),設置對回調通知內容進行加密的算法。內容安全會將返回結果(由用戶uid + seed + content拼接的字符串)按照您設置的加密算法加密后,再發送到您的回調通知地址。取值:
|
interval | Integer | 否 | 1 | 截幀頻率,GIF圖、長圖檢測專用。只有該值存在時,才會對GIF圖和長圖進行截幀。
如果不傳該值,默認只會檢測GIF圖的第一幀、長圖會壓縮后檢測。 說明 interval 需要與 maxFrameNum 參數組合使用。例如,設置 interval 為2, maxFrameNum 為10,在檢測GIF圖、長圖時,將每2幀檢測1張圖,最多檢測10張圖,計費則按照實際檢測的數量計算。 |
maxFrameNum | Integer | 否 | 10 | 最大截幀數量,GIF圖、長圖檢測專用,默認值為10,代表最多截取10幀。 取值限制1~100。 如果interval* maxFrameNum 小于GIF圖、長圖所包含的圖片幀數量時,截幀間隔自動修改為GIF圖、長圖所包含的圖片幀數/ maxFrameNum,以提高整體檢測效果。 |
referer | String | 否 | www.aliyun.com | referer請求頭,用于防盜鏈等場景。長度不超過256個字符。 |
返回數據
名稱 | 類型 | 示例值 | 描述 | |
Code | Integer | 200 | 狀態碼。更多信息,請參見Code說明。 | |
Msg | String | OK | 請求消息的響應消息。 | |
RequestId | String | ABCD1234-1234-1234-1234-123**** | 請求ID。 | |
Data | Object | 檢測結果。 | ||
ReqId | String | ABCD1234-1234-1234-1234-123**** | 請求ID??捎糜诓樵儗徍巳蝿战Y果。 | |
DataId | String | img123****** | 檢測對象對應的數據ID。 |
示例
請求示例
{
"Service": "baselineCheck",
"ServiceParameters": {
"imageUrl": "https://img.alicdn.com/tfs/TB1Mq6ZmCslXu8jSZFuXXXg7FXa-1440-568.jpg",
"dataId": "img123******",
"interval": 1,
"maxFrameNum": 50
}
}
返回示例
{
"Msg": "OK",
"Code": 200,
"RequestId": "ABCD1234-1234-1234-1234-1234XYZ",
"Data": {
"ReqId": "ABCD1234-1234-1234-1234-1234XYZ",
"DataId": "img123******"
}
}
獲取審核任務結果
接口說明
業務接口:DescribeImageModerationResult,表示獲取圖片審核增強版審核任務結果。
計費信息:該接口不計費。
查詢超時:建議您將查詢間隔設置為30秒(即在提交異步檢測任務30秒之后查詢結果),最長不能超出3天,否則結果將會自動刪除。
QPS限制
本接口的單用戶QPS限制為100次/秒。超過限制,API調用會被限流,這可能會影響您的業務,請合理調用。
調試
在接入前,您也可以通過阿里云OpenAPI在線調試獲取圖片審核增強版審核任務結果的接口,查看調用示例代碼及SDK依賴信息,方便概覽接口的使用方法和參數。
請求參數
名稱 | 類型 | 是否必選 | 示例值 | 描述 |
ReqId | String | 是 | ABCD1234-1234-1234-1234-123**** | 請求ID。是指圖片審核增強版同步檢測API返回的RequestId字段。 |
返回數據
名稱 | 類型 | 示例值 | 描述 |
RequestId | String | ABCD1234-1234-1234-1234-123**** | 本次調用請求的ID,是由阿里云為該請求生成的唯一標識符,可用于排查和定位問題。 |
Data | Object | 圖片內容檢測結果。更多信息,請參見Data。 | |
Code | Integer | 200 | 狀態碼。更多信息,請參見Code說明。 |
Msg | String | OK | 本次請求的響應消息。 |
表 2. Data
名稱 | 類型 | 示例值 | 描述 |
Result | Array | 圖片檢測的風險標簽、置信分等參數結果。更多信息,請參見Result。 | |
RiskLevel | String | high | 風險等級,根據設置的高低風險分返回,返回值包括:
說明 高風險內容建議直接處置;中風險內容建議人工復查;低風險內容建議在高召回需求時再做處理,日常建議和未檢測到風險做相同處理。風險分值可以在內容安全控制臺配置。 |
DataId | String | img123****** | 檢測對象對應的數據ID。 說明 如果在檢測請求參數中傳入了dataId,則此處返回對應的dataId。 |
FrameNum | Integer | 10 | 圖片返回總截幀數。 |
Frame | String | [{\"Result\":[{\"Confidence\":98.88,\"Label\":\"contraband_gamble\"}],\"TempUrl\":\"http://www.aliyundoc.com/test1.jpg\"}] | 圖片截幀信息的JSON字符串。包含以下字段:
說明 當圖片未截幀時僅返回當前圖片信息;當動圖和長圖存在截幀時會返回每1張截幀的信息。 |
表 3. Result
名稱 | 類型 | 示例值 | 描述 |
Label | String | violent_explosion | 圖片內容檢測運算后返回的標簽。同一張圖片可能會檢出多個標簽和分值。支持的標簽,請參見: |
Confidence | Float | 81.22 | 置信分值,0到100分,保留到小數點后2位。部分標簽無置信分,更多信息,請參見風險標簽釋義表。 |
Description | String | 煙火類內容 | 對Labal字段的說明。 重要 該字段為Label字段的解釋說明,可能會變更調整,實際處理結果時建議處理Label字段,不要基于該字段進行結果處置。 |
示例
請求示例
{
"ReqId": "ABCD1234-1234-1234-1234-123****"
}
返回示例
系統檢測到風險內容時,返回示例:
{ "Msg": "success", "Code": 200, "Data": { "DataId": "img123****", "Result": [ { "Label": "pornographic_adultContent", "Confidence": 81, "Description": "成人色情" }, { "Label": "sexual_partialNudity", "Confidence": 98, "Description": "肢體裸露或性感" }, { "Label": "violent_explosion", "Confidence": 70, "Description": "煙火類內容" }, { "Label": "violent_explosion_lib", "Confidence": 81, "Description": "煙火類內容_命中自定義庫" } ], "RiskLevel": "high", "Frame": "[{\"Result\":[{\"Confidence\":98.18,\"Label\":\"contraband_gamble\"},{\"Confidence\":96.39,\"Label\":\"pornographic_adultContent\"},{\"Confidence\":95.27,\"Label\":\"violent_explosion\"}],\"TempUrl\":\"http://www.aliyundoc.com/test1.jpg\"},{\"Result\":[{\"Confidence\":91.18,\"Label\":\"violent_explosion_lib\"}],\"TempUrl\":\"http://www.aliyundoc.com/test2.jpg\"}]", "FrameNum": 2 }, "RequestId": "ABCD1234-1234-1234-1234-123****" }
當系統沒有檢測到風險內容時,返回示例:
{ "Msg": "success", "Code": 200, "Data": { "DataId": "img123****", "Result": [ { "Label": "nonLabel", "Confidence": null, "Description": "未檢測出風險" } ], "RiskLevel": "none", "Frame": "[{\"Result\":[{\"Label\":\"nonLabel\"}],\"TempUrl\":\"http://www.aliyundoc.com/test1.jpg\"},{\"Result\":[{\"Label\":\"nonLabel\"}],\"TempUrl\":\"http://www.aliyundoc.com/test2.jpg\"}]", "FrameNum": 2 }, "RequestId": "ABCD1234-1234-1234-1234-123****" }
系統檢測到您傳入的圖片命中了您配置的免審圖庫時,返回示例:
{ "Msg": "success", "Code": 200, "Data": { "DataId": "img123****", "Result": [ { "Label": "nonLabel_lib", "Confidence": 99.66, "Description": "命中免審圖庫" } ], "RiskLevel": "none", "Frame": "[{\"Result\":[{\"Confidence\":99.66,\"Label\":\"nonLabel_lib\"}],\"TempUrl\":\"http://www.aliyundoc.com/test1.jpg\"},{\"Result\":[{\"Confidence\":81.18,\"Label\":\"nonLabel_lib\"}],\"TempUrl\":\"http://www.aliyundoc.com/test2.jpg\"}]", "FrameNum": 2 }, "RequestId": "ABCD1234-1234-1234-1234-123****" }
文檔中的請求示例和返回示例為了便于閱讀,做了格式化處理,實際返回結果是沒有進行換行、縮進等處理。
風險標簽釋義表
Code說明
以下為接口返回code的含義說明,系統僅對code返回為200的請求計量計費,其他code不會計費。
Code | 說明 |
200 | 請求正常。 |
280 | 任務檢測中。 |
400 | 請求參數為空。 |
401 | 請求參數錯誤。 |
402 | 請求參數長度不符合接口規定,請檢查并修改。 |
403 | 請求超過QPS限制,請檢查并調整并發。 |
404 | 傳入的圖片下載遇到錯誤,請檢查或重試。 |
405 | 傳入的圖片下載超時,可能是因為圖片無法訪問,請檢查調整后重試。 |
406 | 傳入的圖片過大,請檢查調整圖片大小后再重試。 |
407 | 傳入的圖片格式暫不支持,請檢查調整后重試。 |
408 | 該賬號無權限調用該接口,可能是賬號未開通或者已欠費,或者調用賬號未被授權訪問。 |
500 | 系統異常。 |