接口说明
更新时间:2026-06-30
内容审核平台-图像
为用户提供色情识别、广告识别、图像垃圾文本识别(反作弊)、恶心图像识别等一系列图像识别接口的一站式服务调用,并且支持用户在控制台中自定义配置所有接口的报警阈值和疑似区间,上传自定义文本黑库和人物名单等。相比于组合服务接口,本接口除了支持自定义配置外,还对返回结果进行了总体的包装,按照用户在控制台中配置的规则直接返回是否合规,如果不合规则指出具体不合规的内容。
package main
import (
"fmt"
"github.com/Baidu-AIP/golang-sdk/aip/censor"
"github.com/Baidu-AIP/golang-sdk/util"
)
func main() {
client:=censor.NewClient("ak","sk")
//如果是百度云ak sk,使用下面的客户端
client=censor.NewCloudClient("ak","sk")
//图片文件,
base64d := util.ReadFileToBase64("图片路径")
res := client.ImgCensor(base64d, nil)
fmt.Println(res)
//图片url
res = client.ImgCensorUrl("图片url", nil)
fmt.Println(res)
}请求参数详情
| 参数名称 | 数据类型 | 是否必须 | 备注 | 样例 |
|---|---|---|---|---|
| image | String | N (和imgUrl二选一) |
待审核图像Base64编码字符串, 以图像文件形式请求时必填 |
/9j/4AAQSkZJRgABAQAASABIAAD/4 QBYRXhpZgAATU0AKgAAAAgAAgESAAMAAAABAAYAAIdp |
| imgUrl | String | N (和image二选一) |
网图URL地址, 以网图形式请求, 图像Url需要做UrlEncode |
https://ai-solution-admin.cdn.bcebos.com/audit%2F demo%2Fcensoring-demo.jpg |
| imgType | uint64 | N | 图片类型0:静态图片,1:gif动态图片 | 1 |
返回参数详情
| 参数名称 | 数据类型 | 是否必须 | 备注 |
|---|---|---|---|
| log_id | Long | Y | 请求唯一id,用于问题排查 |
| error_code | Long | N | 错误提示码,失败才返回,成功不返回 |
| error_msg | String | N | 错误提示信息,失败才返回,成功不返回 |
| conclusion | String | N | 审核结果,可取值描述:合规、不合规、疑似、审核失败 |
| conclusionType | uint64 | N | 审核结果类型,可取值1、2、3、4,分别代表1:合规,2:不合规,3:疑似,4:审核失败 |
| data | Array | N | 不合规/疑似/命中白名单项详细信息。响应成功并且conclusion为疑似或不合规或命中白名单时才返回,响应失败或conclusion为合规且未命中白名单时不返回。 |
| +error_code | uint64 | 否 | 内层错误提示码,底层服务失败才返回,成功不返回 |
| +error_msg | string | 否 | 内层错误提示信息,底层服务失败才返回,成功不返回 |
| +type | Integer | N | 结果具体命中的模型:0:图片库-百度违禁图库、1:涉黄、2:暴恐、3:恶心图像、4:广告、5:涉政-政治人物,人物库-公众人物、6:图像质量、7:图片库-自定义图像黑库、8:图片库-自定义图像白库、10:用户头像、11:图文-百度违禁词库、12:图文、13:图文-自定义文本黑名单、14:图文-自定义文本白名单、15:EasyDL自定义模型、16:涉政-敏感旗帜标志,涉政-中国地图及类似图形,涉政-敏感媒体、21:违禁、24:直播场景、38:敏感媒体、39:公众人物、40:官方增强场景库、41:自定义场景库、1230:图文-政治敏感、1231:图文-暴恐违禁、1233:图文-色情、1234:图文-低俗辱骂、1236:图文-广告、1237:图文-广告法、1238:图文-隐私信息、1239:图文-低质灌水 自2025年7月26日起,新增以上1230~1239参数编号,客户可通过该编号对图文类型更细粒度审核结果进行解析获取。为了更好的服务体验,我们建议在2025年7月26日前已完成接入的老客户,能够尽快调整参数,而新客户可直接忽略编号12。如需技术指导,可提交工单,会有专人跟进处理。 |
| +subType | Integer | N | 因产品能力升级,自2025年7月26日起,当type为1或1230~1239时新增审核子类型参数编号,客户可通过以下编号对更细粒度审核结果进行解析获取。本次产品升级兼容所有老客户账号,故老客户依旧可使用原有参数编号。为了更好的服务体验,我们建议在2025年7月26日前已完成接入的老客户,能够尽快调整参数编号,如需技术指导,可提交工单,会有专人跟进处理。 审核子类型,此字段需参照type主类型字段决定其含义: 当type=0时subType取值含义:0:百度官方违禁图 当type=1时subType取值含义: 【旧版】0:一般色情、1:卡通色情、2:SM、3:低俗、4:儿童裸露、5:艺术品色情、6:性玩具、7:男性性感、8:自然男性裸露、9:女性性感、10:卡通女性性感、11:特殊类、12:亲密行为、13:卡通亲密行为、14:孕肚裸露、15:臀部特写、16:脚部特写、17:裆部特写 【新版】10101:SM、10102:直接性行为、10103:口交性行为、10104:乳交性行为、10105:舔舐性行为、10106:摸男下、10107:摸女下、10108:摸女上、10109:男辅助工具自慰、10110:女辅助工具自慰、10111:人兽性行为、10201:女上露点、10202:女上激凸、10203:女上遮挡、10204:女性哺乳、10205:女下露点、10206:女下激凸、10207:女下露底、10208:臀部全裸、10301:男下露点、10302:男下激凸、10303:男下遮挡、10401:性分泌物影射、10402:手势影射、10403:口交影射、10404:男下影射、10405:舌吻、10406:手摸臀、10407:性爱表情、10501:儿童裸露、10502:婴儿裸露特写、10503:儿童性感姿势、10504:校园场景违规、10601:动物露点、10602:动物性行为、10701:雕塑色情、10702:绘画色情、10801:性玩具、10802:避孕套、10803:情趣内衣内裤、10804:催情药、10901:卡通色情、11001:女胸裸露、11003:孕肚裸露、11004:女露臀、11005:女露大腿、11006:女内衣内裤、11007:紧身衣、11008:卡通女性性感、11101:男上露点、11102:男内衣内裤、11103:人鱼线、11104:男性肌肉裸露、11201:脚部特写、11202:脚底特写、11203:臀部特写、11204:裆部特写、11301:手挡下体、11302:岔腿、11303:挑舌、11401:男同亲吻行为、11402:男同亲密行为、11403:女同亲吻行为、11404:女同亲密行为、11405:异性亲吻行为、11406:异性亲密行为、11501:卡通亲密行为 当type=2时subType取值含义:0:警察部队、1:血腥、2:尸体、3:爆炸火灾、5:暴乱、7:军事武器、9:血腥动物或动物尸体、10:车祸、11:枪械、12:弹药、13:刀具、14:武装人员、15:特殊服饰 当type=3时subType取值含义:1:性器官特写、2:脏器、3:疾病表症、4:密集恐惧症、5:腐烂食物、6:排泄物、7:恶心动物、8:人体血腥和尸体、9:动物血腥及尸体 当type=4时subType取值含义:0:水印、1:二维码、2:条形码、3:识别二维码中内容、4:识别条形码中内容、6:小程序码、7:水印自定义黑名单、8:水印自定义白名单 当type=5时subType取值含义:2:自定义人物黑库、3:自定义人物白库、4:领导人、5:涉政正面人物、6:涉政负面人物、7:其他涉政人物、8:劣迹艺人、9:其他公众人物、10:卡通领导人 当type=6时subType取值含义:0:图像清晰度、1:图像美观度 当type=7时subType取值含义:0:用户自定义图像黑名单 当type=8时subType取值含义:0:用户自定义图像白名单 当type=10时subType取值含义:0:图像中必须是真人脸 1:人脸必须为正脸、2:左右旋转角度、3:俯仰角度、4:歪头角度、5:人脸不能有遮挡、6:不能遮挡眼睛、7:不能遮挡鼻子、8:不能遮挡嘴、9:不能遮挡下巴、10:不能遮挡脸颊、11:人脸不能佩戴墨镜、12:人脸占比、13:人脸必须清晰 、 14:图像中必须为单人脸、 15:人脸为女性、16:人脸为男性、17:人脸为未成年 当type=11时subType取值含义:0:百度默认违禁词库 当type=12时subType取值含义: 0:低质灌水、2:文本色情、4:恶意推广、5:低俗辱骂、7:隐私信息 当type=1230时subType取值含义:12300000:政治敏感 当type=1231时subType取值含义:12310000:暴恐违禁 当type=1233时subType取值含义:12330000:色情 当type=1234时subType取值含义:12340000:低俗辱骂 当type=1236时subType取值含义: 12360101:微信号、12360102:QQ号、12360103:电话号码、12360104:网址、12360105:座机、12360106:电子邮箱、12360200:社交广告、12360300:游戏广告、12360400:流量造假广告、12360500:电商广告、12360600:影视音乐资源广告、12360700:金融广告、12360800:医疗广告、12360900:房产广告、12361000:旅游广告、12361100:招聘广告、12361200:教培广告 当type=1237时subType取值含义: 12370100:虚假诱导营销广告、12370200:虚假权威营销广告、12370300:禁止投放广告、12370400:非法营销广告 当type=1238时subType取值含义:12380000:隐私信息 当type=1239时subType取值含义:12390000:低质灌水 当type=13时subType取值含义:0:自定义文本黑名单 当type=14时subType取值含义:0:自定义文本白名单 当type=16时subType取值含义:0:中国国旗及类似图形、1:中国地图及类似图形、2:党旗、军旗、党徽及类似图形、3:警徽及类似图形、4:各类臂章、5:反动组织旗帜、徽章、标志、6:政治敏感事件、7:领导人影射、8:宗教识别、9:敏感物品、10:敏感地点、11:各国旗帜标志、12:暴恐组织标志、13:邪教组织标志 当type=21时subType取值含义:1:真人吸烟、2:卡通吸烟、3:毒品、4:真人饮酒、5:卡通饮酒、6:赌博、7:纹身、8:钱币、9:竖中指、10:野生动物制品 当type=24时subType取值含义:0:卫生间场景、1:车内场景、2:卧室场景、3:无意义场景、4:普通场景 当type=38时subType取值含义:1:封禁媒体 当type=39时subType取值含义:0:医疗人物、1:娱乐人物、2:文学艺术家、3:经济人物、4:教育与科研人员、5:体育人物、6:历史人物、7:热点人物、8:非现实人物、9:其他人物 当type=40时subType取值含义:1:官方增强场景库 当type=41时subType取值含义:1:自定义场景库 完整版subType说明,您可联系商务经理或填写咨询表单进行获取 |
| +msg | String | N | 不合规项描述信息 |
| +probability | Float | N | 不合规项置信度 |
| +datasetName | Float | N | 违规项目所属数据集名称 |
| ++datasetName | Float | N | 人脸所属数据集名称 |
| +hits | Array | N | 命中关键词信息 |
| ++words | String | N | 违规文本关键字 |
| +codes | Array | N | (如果您在策略配置中勾选了二维码识别)二维码或者条形码识别结果 |
| ++modelName | String | N | (如果您勾选了EasyDL的模型)命中自定义模型名称 |
| ++score | Float | N | (如果您勾选了EasyDL的模型)命中自定义模型置信度 |
| ++modelId | Array | N | (如果您勾选了EasyDL的模型)命中自定义模型ID |
| ++label | String | N | (如果您勾选了EasyDL的模型)命中自定义模型标签名称 |
| +type | int | N | 原生结果的类型1:色情识别、3:恶心图识别、4:广告检测、6:图像质量检测、7:用户图像黑名单、8:用户图像白名单、9:图文审核 |
| +results | JSONArray | N | 每个type可能会调用多个底层服务,此处可能有多个结果 |
返回示例
// 失败返回示例
{
"log_id": 149319909347709,
"error_code": 282800,
"error_msg":"configId param is error or null"
}
// 成功返回示例-合规
{
"log_id": 123456789,
"conclusion": "合规"
}
// 成功返回示例-不合规
{
"log_id": 123456789,
"conclusion": "不合规",
"data": [
{
"msg": "存在色情内容",
"probability": 0.94308,
"type": 1
},
{
"msg": "存在性感内容",
"probability": 0.94308,
"type": 2
},
{
"msg": "存在恶心内容",
"probability": 0.9688154,
"type": 4
},
{
"msg": "存在二维码内容",
"probability": 0.94308,
"type": 6
},
{
"msg": "存在水印码内容",
"probability": 0.94308,
"type": 5
},
{
"msg": "存在条形码内容",
"probability": 0.94308,
"type": 7
},
{
"msg": "包含联系方式",
"probability": 0.94308,
"words": "包含联系方式",
"type": 8
}
]
}内容审核平台-文本
package main
import (
"fmt"
"github.com/Baidu-AIP/golang-sdk/aip/censor"
"github.com/Baidu-AIP/golang-sdk/util"
)
func main() {
client:=censor.NewClient("ak","sk")
//如果是百度云ak sk,使用下面的客户端
client=censor.NewCloudClient("ak","sk")
res = client.TextCensor("审核文字", nil)
fmt.Println(res)
}请求参数详情
| 参数名称 | 数据类型 | 是否必须 | 备注 | 样例 |
|---|---|---|---|---|
| text | String | N | 待审核文本字符串 | "测试文本" |
返回参数详情
| 参数名称 | 数据类型 | 是否必须 | 备注 | 样例 |
|---|---|---|---|---|
| log_id | Long | Y | 请求唯一id | |
| error_code | Long | N | 错误提示码,失败才返回,成功不返回 | |
| error_msg | String | N | 错误提示信息,失败才返回,成功不返回 | |
| conclusion | String | N | 审核结果,可取值:合规、不合规、疑似、审核失败 | |
| conclusionType | uint64 | N | 审核结果类型,可取值1.合规,2.不合规,3.疑似,4.审核失败 | |
| data | Array | N | 不合规/疑似/命中白名单项详细信息。响应成功并且conclusion为疑似或不合规或命中白名单时才返回,响应失败或conclusion为合规且未命中白名单时不返回。 | |
| +error_code | uint64 | 否 | 内层错误提示码,底层服务失败才返回,成功不返回 | |
| +error_msg | string | 否 | 内层错误提示信息,底层服务失败才返回,成功不返回 | |
| +type | Integer | N | 审核主类型,11:百度官方违禁词库、12:文本反作弊、13:自定义文本黑名单、14:自定义文本白名单、30:政治敏感、31暴恐违禁、33:色情、34:低俗辱骂、36:广告、37:广告法、38:隐私信息、39:低质灌水 因产品能力升级,自2025年7月26日起,新增以上30~39参数编号,客户可通过该编号对更细粒度审核结果进行解析获取。为了更好的服务体验,我们建议在2025年7月26日前已完成接入的老客户,能够尽快调整参数,而新客户可直接忽略编号12。如需技术指导,可提交工单,会有专人跟进处理。 |
|
| +subType | Integer | N | 审核子类型,此字段需参照type主类型字段决定其含义: 当type=11时subType取值含义:0:百度官方默认违禁词库 当type=12时subType取值含义:0:低质灌水、1:暴恐违禁、2:文本色情、3:政治敏感、4恶意推广、5:低俗辱骂、7:隐私信息 、8:广告法审核 当type=13时subType取值含义:0:自定义文本黑名单 当type=14时subType取值含义:0:自定义文本白名单 因产品能力升级,自2025年7月26日起,新增以下30~39审核子类型的参数编号,客户可通过以下编号对更细粒度审核结果进行解析获取。为了更好的服务体验,我们建议在2025年7月26日前已完成接入的老客户,能够尽快调整参数,而新客户可直接忽略编号12。如需技术指导,可提交工单,会有专人跟进处理。 当type=30时subType取值含义:300000:政治敏感 当type=31时subType取值含义:310000:暴恐违禁 当type=33时subType取值含义:330000:色情 当type=34时subType取值含义:340000:低俗辱骂 当type=36时subType取值含义:360101:微信号、360102:QQ号、360103:电话号码、360104:网址、360105:座机、360106:电子邮箱、360200:社交广告、360300:游戏广告、360400:流量造假广告、360500:电商广告、360600:影视音乐资源广告、360700:金融广告、360800:医疗广告、360900:房产广告、361000:旅游广告、361100:招聘广告、361200:教培广告 当type=37时subType取值含义:370100:虚假诱导营销广告、370200:虚假权威营销广告、370300:禁止投放广告、370400:非法营销广告 当type=38时subType取值含义:380000:隐私信息 当type=39时subType取值含义:390000:低质灌水 |
|
| +msg | String | N | 不合规项描述信息 | |
| +hits | Array | N | 命中关键词信息 | |
| ++words | String | N | 违规文本关键字 | |
| ++probability | Float | N | 不合规项置信度 | |
| ++datasetName | Float | N | 违规项目所属数据集名称 |
返回示例
// 成功返回示例-合规
{
"log_id": 15556561295920002,
"conclusion": "合规",
"conclusionType": 1
}
或者
{
"log_id": 15572142621780024,
"conclusion": "合规",
"conclusionType": 1,
"data": [{
"type": 14,
"subType": 0,
"conclusion": "合规",
"conclusionType": 1,
"msg": "自定义文本白名单审核通过",
"hits": [{
"datasetName": "SLK-测试-自定义文本白名单",
"words": ["橘子洲头"]
}]
}]
}
// 成功返回示例-不合规
{
"log_id": 123456789,
"conclusion": "不合规",
"conclusionType": 2,
"data": [{
"type": 11,
"subType": 0,
"conclusion": "不合规",
"conclusionType": 2,
"msg": "存在百度官方默认违禁词库不合规",
"hits": [{
"datasetName": "百度默认黑词库",
"words": ["免费翻墙"]
}]
}, {
"type": 12,
"subType": 2,
"conclusion": "不合规",
"conclusionType": 2,
"msg": "存在文本色情不合规",
"hits": [{
"datasetName": "百度默认文本反作弊库",
"probability": 1.0,
"words": ["电话 找小姐"]
}]
}, {
"type": 12,
"subType": 3,
"conclusion": "不合规",
"conclusionType": 2,
"msg": "存在政治敏感不合规",
"hits": [{
"probability": 1.0,
"datasetName": "百度默认文本反作弊库",
"words": ["张三"]
}]
}, {
"type": 12,
"subType": 4,
"conclusion": "不合规",
"conclusionType": 2,
"msg": "存在恶意推广不合规",
"hits": [{
"probability": 1.0,
"datasetName": "百度默认文本反作弊库",
"words": [""]
}]
}, {
"type": 13,
"subType": 0,
"conclusion": "不合规",
"conclusionType": 2,
"msg": "存在自定义文本黑名单不合规",
"hits": [{
"datasetName": "SLK-测试-自定义黑名单",
"words": ["我是你爹", "他妈的"]
}]
}]
}
// 失败响应示例
{
"log_id": 149319909347709,
"error_code": 0,
"error_msg":"configId error"
}短音频审核
package main
import (
"fmt"
"github.com/Baidu-AIP/golang-sdk/aip/censor"
"github.com/Baidu-AIP/golang-sdk/util"
)
func main() {
client:=censor.NewClient("ak","sk")
//如果是百度云ak sk,使用下面的客户端
client=censor.NewCloudClient("ak","sk")
//音频文件,
base64d := util.ReadFileToBase64("音频文件")
// 采样率
rate:=1500
res := client.VoiceCensor(base64d,rate,'音频文件格式' , nil)
fmt.Println(res)
//音频文件url路径
res = client.VoiceCensorUrl("音频文件url",rate, '音频文件格式', nil)
fmt.Println(res)
//如果有非必须参数
options := make(map[string]interface{})
options["split"]=true
options["rawText"]=false
res = client.VoiceCensorUrl("音频文件url",rate, '音频文件格式', options)
res = client.VoiceCensor(base64d,rate,'音频文件格式' , options)
}请求参数详情
| 参数名称 | 数据类型 | 是否必须 | 备注 | 样例 |
|---|---|---|---|---|
| voice | String | Y | 音频文件base64编码 | |
| url | String | Y | 音频文件的url | xxxx |
| rate | in t | Y | 音频文件采样率 | xxxx |
| fmt | String | Y | 语言文件格式 | 音频文件的格式,pcm、wav、amr、m4a;不区分大小写。推荐pcm文件 |
| rawText | boolean | N | 是否返回音频识别结果 true:是;false:否 默认为true | xxxx |
| split | boolean | N | true:拆句;false:不拆句返回整段文本 默认为false | xxxx |
返回参数详情
| 参数名称 | 数据类型 | 是否必须 | 备注 | 样例 |
|---|---|---|---|---|
| log_id | Long | Y | 请求唯一id | |
| error_code | Long | N | 错误提示码,失败才返回,成功不返回 | |
| error_msg | String | N | 错误提示信息,失败才返回,成功不返回 | |
| conclusion | String | N | 总体审核结果,可取值:合规、不合规、疑似、审核失败 | |
| conclusionType | int | N | 总体审核结果类型,可取值1.合规,2.不合规,3.疑似,4.审核失败 | |
| rawText | list | N | 音频识别文本结果 | |
| sn | String | N | 音频数据唯一标识,系统内部产生。如果反馈及debug请提供sn。 | |
| data | list | N | 不合规/疑似/命中白名单项详细信息。响应成功并且conclusion为疑似或不合规或命中白名单时才返回,响应失败或conclusion为合规且未命中白名单时不返回。 | |
| +text | list | Y | 分段文本结果,若不拆句,则为整段文本 | |
| +conclusion | list | N | 当前文本审核结果,可取值:合规、不合规、疑似、审核失败 | |
| +conclusionType | list | N | 当前文本审核结果类型,可取值1.合规,2.不合规,3.疑似,4.审核失败 | |
| +auditData | list | N | 当前文本审核结果明细 | |
| ++type | int | N | 审核主类型,11:百度官方违禁词库、12:文本反作弊、13:自定义文本黑名单、14:自定义文本白名单、20:存在娇喘内容、30:政治敏感、31暴恐违禁、33:色情、34:低俗辱骂、36:广告、37:广告法、38:隐私信息、39:低质灌水 因产品能力升级,自2025年7月26日起,新增以上30~39参数编号,客户可通过该编号对更细粒度审核结果进行解析获取。为了更好的服务体验,我们建议在2025年7月26日前已完成接入的老客户,能够尽快调整参数,而新客户可直接忽略编号12。如需技术指导,可提交工单,会有专人跟进处理。 |
|
| ++subType | int | N | 审核子类型,此字段需参照type主类型字段决定其含义: 当type=11时subType取值含义:0:百度官方默认违禁词库 当type=12时subType取值含义:0:低质灌水、1:暴恐违禁、2:文本色情、3:政治敏感、4恶意推广、5:低俗辱骂、7:隐私信息 、8:广告法审核 当type=13时subType取值含义:0:自定义文本黑名单 当type=14时subType取值含义:0:自定义文本白名单 因产品能力升级,自2025年7月26日起,新增以下30~39审核子类型的参数编号,客户可通过以下编号对更细粒度审核结果进行解析获取。为了更好的服务体验,我们建议在2025年7月26日前已完成接入的老客户,能够尽快调整参数,而新客户可直接忽略编号12。如需技术指导,可提交工单,会有专人跟进处理。 当type=30时subType取值含义:300000:政治敏感 当type=31时subType取值含义:310000:暴恐违禁 当type=33时subType取值含义:330000:色情 当type=34时subType取值含义:340000:低俗辱骂 当type=36时subType取值含义: 360101:微信号、360102:QQ号、360103:电话号码、360104:网址、360105:座机、360106:电子邮箱、360200:社交广告、360300:游戏广告、360400:流量造假广告、360500:电商广告、360600:影视音乐资源广告、360700:金融广告、360800:医疗广告、360900:房产广告、361000:旅游广告、361100:招聘广告、361200:教培广告 当type=37时subType取值含义:370100:虚假诱导营销广告、370200:虚假权威营销广告、370300:禁止投放广告、370400:非法营销广告 当type=38时subType取值含义:380000:隐私信息 |
|
| ++msg | String | N | 不合规项描述信息 | |
| ++hits | list | N | 命中信息 | |
| ++probability | Float | N | 不合规项置信度 | |
| +++datasetName | Float | N | 违规项目所属数据集名称 | |
| +++words | list | N | 命中关键词 |
成功响应示例
{
"log_id":15656780617612718,
"conclusion":"不合规",
"conclusionType":2,
"rawText":[
"第一段文本-违规",
"第二段文本-命中白名单合规",
"第三段文本-自然合规"
],
"data":[
{
"auditData": [
{
"hits": [
{
"probability": 0.0023267511,
"words": []
}
],
"msg": "存在娇喘内容",
"subType": 0,
"type": 20
}
],
"conclusion": "疑似",
"conclusionType": 3,
"text": "存在娇喘内容"
},
{
"text":"第一段文本-违规",
"conclusion":"不合规",
"conclusionType":2,
"auditData":[
{
"type":11,
"subType":0,
"msg":"存在百度官方默认违禁词库不合规",
"hits":[
{
"datasetName":"百度默认黑词库",
"words":[
"免费翻墙"
]
}
]
},
{
"type":12,
"subType":2,
"msg":"存在文本色情不合规",
"hits":[
{
"datasetName":"百度默认文本反作弊库",
"probability":1,
"words":[
"电话 找小姐"
]
}
]
},
{
"type":13,
"subType":0,
"msg":"存在自定义文本黑名单不合规",
"hits":[
{
"datasetName":"SLK-测试-自定义黑名单",
"words":[
"我是你爹",
"他妈的"
]
}
]
}
]
},
{
"text":"第二段文本-命中白名单合规",
"conclusion":"合规",
"conclusionType":1,
"auditData":[
{
"type":8,
"subType":0,
"msg":"命中用户自定义白名单",
"datasetName":"用户自定义白名单1"
}
]
},
{
"text":"第三段文本-自然合规",
"conclusion":"合规",
"conclusionType":1
}
]
}失败响应示例
{
"log_id": 149319909347709,
"error_code": 0,
"error_msg":"configId error"
}短视频审核
package main
import (
"fmt"
"github.com/Baidu-AIP/golang-sdk/aip/censor"
"github.com/Baidu-AIP/golang-sdk/util"
)
func main() {
client:=censor.NewClient("ak","sk")
//如果是百度云ak sk,使用下面的客户端
client=censor.NewCloudClient("ak","sk")
//视频url路径
res: = client.VideoCensor("视频名字","视频url", 'extId', nil)
fmt.Println(res)
//如果有非必须参数
options := make(map[string]interface{})
options["videoUrl2"]=“videoUrl2”
options["videoUrl3"]=“videoUrl3”
options["videoUrl4"]=“videoUrl4”
options["extInfo"]="[{\"subject\":\"账户信息\",\"fields\":[{\"title\":\"昵称\",\"value\":\"陈翔六点半\"}]}]”
res = client.VideoCensor("视频名字","视频url", 'extId', options)
res = client.VoiceCensor(base64d,'音频文件格式' , options)
}请求参数详情
| 参数名称 | 数据类型 | 是否必须 | 备注 | 样例 |
|---|---|---|---|---|
| name | String | Y | 视频名字 | |
| videoUrl | String | Y | 视频主URL地址,若主Url无效或抓取失败,则依次抓取备用地址videoUrl2、videoUrl3、videoUrl4,若全部抓取失败则审核失败 | |
| videoUrl2 | String | N | 视频备用URL地址 | |
| videoUrl3 | String | N | 视频备用URL地址 | |
| videoUrl4 | String | N | 视频备用URL地址 | |
| extId | String | Y | 视频在用户平台的唯一ID,方便人工审核结束时数据推送,用户利用此ID唯一锁定一条平台资源,若无可填写视频Url | |
| extInfo | JsonArray | N | 用户自定义字段,用户可以在此字段中添加自定义字段,此字段会展示在审核员页面以帮助审核人员更好的判断视频内容是否合规,具体格式请参照下方示例 | |
| +subject | String | Y | 主题描述 | |
| +fields | JsonArray | Y | 字段列表 | |
| ++title | String | Y | 字段名称 | |
| ++value | String | Y | 字段值 |
返回参数详情
| 参数名称 | 数据类型 | 是否必须 | 备注 | 样例 |
|---|---|---|---|---|
| log_id | Long | Y | 调用唯一ID | |
| error_code | uint64 | N | 服务调用错误码,失败才返回,成功不返回 | |
| error_msg | String | N | 服务调用提示信息,失败才返回,成功不返回 | |
| conclusion | String | N | 审核结果描述,可取值:合规、不合规、疑似 | |
| conclusionType | Int | N | 审核结果,可取值:1 合规,2 不合规,3 疑似, 4 审核失败 | |
| isHitMd5 | boole | N | 是否命中视频黑库MD5提示,true:命中 false:未命中 | |
| msg | String | N | 命中MD5提示 | |
| frames | JsonArray | N | 帧审核明细 | |
| +frameTimeStamp | Long | N | 帧时间戳 | |
| +conclusion | Long | N | 帧审核结果描述,可取值:合规、不合规、疑似 | |
| +conclusionType | Int | N | 帧审核结果,可取值:1 合规,2 不合规,3 疑似, 4 审核失败 | |
| +frameUrl | String | N | 帧url地址 | |
| +frameThumbnailUrl | String | N | 帧缩略图url地址 | |
| +data | JsonArray | N | 各维度明细审核结果 | |
| ++error_code | uint64 | N | 内层错误提示码,底层服务失败才返回,成功不返回 | |
| ++error_msg | string | N | 内层错误提示信息,底层服务失败才返回,成功不返回 | |
| ++type | uint64 | N | 结果具体命中的模型:0:图片库-百度违禁图库、1:涉黄、2:暴恐、3:恶心图像、4:广告、5:涉政-政治人物,人物库-公众人物、6:图像质量、7:图片库-自定义图像黑库、8:图片库-自定义图像白库、10:用户头像、11:图文-百度违禁词库、12:图文、13:图文-自定义文本黑名单、14:图文-自定义文本白名单、15:EasyDL自定义模型、16:涉政-敏感旗帜标志,涉政-中国地图及类似图形,涉政-敏感媒体、21:违禁、24:直播场景、38:敏感媒体、39:公众人物、40:官方增强场景库、41:自定义场景库、1230:图文-政治敏感、1231:图文-暴恐违禁、1233:图文-色情、1234:图文-低俗辱骂、1236:图文-广告、1237:图文-广告法、1238:图文-隐私信息、1239:图文-低质灌水 自2025年7月26日起,新增以上1230~1239参数编号,客户可通过该编号对图文类型更细粒度审核结果进行解析获取。为了更好的服务体验,我们建议在2025年7月26日前已完成接入的老客户,能够尽快调整参数,而新客户可直接忽略编号12。如需技术指导,可提交工单,会有专人跟进处理。 |
|
| ++subType | uint64 | N | 因产品能力升级,自2025年7月26日起,当type为1或1230~1239时新增审核子类型参数编号,客户可通过以下编号对更细粒度审核结果进行解析获取。本次产品升级兼容所有老客户账号,故老客户依旧可使用原有参数编号。为了更好的服务体验,我们建议在2025年7月26日前已完成接入的老客户,能够尽快调整参数编号,如需技术指导,可提交工单,会有专人跟进处理。 审核子类型,此字段需参照type主类型字段决定其含义: 当type=0时subType取值含义:0:百度官方违禁图 当type=1时subType取值含义: 【旧版】0:一般色情、1:卡通色情、2:SM、3:低俗、4:儿童裸露、5:艺术品色情、6:性玩具、7:男性性感、8:自然男性裸露、9:女性性感、10:卡通女性性感、11:特殊类、12:亲密行为、13:卡通亲密行为、14:孕肚裸露、15:臀部特写、16:脚部特写、17:裆部特写 【新版】10101:SM、10102:直接性行为、10103:口交性行为、10104:乳交性行为、10105:舔舐性行为、10106:摸男下、10107:摸女下、10108:摸女上、10109:男辅助工具自慰、10110:女辅助工具自慰、10111:人兽性行为、10201:女上露点、10202:女上激凸、10203:女上遮挡、10204:女性哺乳、10205:女下露点、10206:女下激凸、10207:女下露底、10208:臀部全裸、10301:男下露点、10302:男下激凸、10303:男下遮挡、10401:性分泌物影射、10402:手势影射、10403:口交影射、10404:男下影射、10405:舌吻、10406:手摸臀、10407:性爱表情、10501:儿童裸露、10502:婴儿裸露特写、10503:儿童性感姿势、10504:校园场景违规、10601:动物露点、10602:动物性行为、10701:雕塑色情、10702:绘画色情、10801:性玩具、10802:避孕套、10803:情趣内衣内裤、10804:催情药、10901:卡通色情、11001:女胸裸露、11003:孕肚裸露、11004:女露臀、11005:女露大腿、11006:女内衣内裤、11007:紧身衣、11008:卡通女性性感、11101:男上露点、11102:男内衣内裤、11103:人鱼线、11104:男性肌肉裸露、11201:脚部特写、11202:脚底特写、11203:臀部特写、11204:裆部特写、11301:手挡下体、11302:岔腿、11303:挑舌、11401:男同亲吻行为、11402:男同亲密行为、11403:女同亲吻行为、11404:女同亲密行为、11405:异性亲吻行为、11406:异性亲密行为、11501:卡通亲密行为 当type=2时subType取值含义:0:警察部队、1:血腥、2:尸体、3:爆炸火灾、5:暴乱、7:军事武器、9:血腥动物或动物尸体、10:车祸、11:枪械、12:弹药、13:刀具、14:武装人员、15:特殊服饰 当type=3时subType取值含义:1:性器官特写、2:脏器、3:疾病表症、4:密集恐惧症、5:腐烂食物、6:排泄物、7:恶心动物、8:人体血腥和尸体、9:动物血腥及尸体 当type=4时subType取值含义:0:水印、1:二维码、2:条形码、3:识别二维码中内容、4:识别条形码中内容、6:小程序码、7:水印自定义黑名单、8:水印自定义白名单 当type=5时subType取值含义:2:自定义人物黑库、3:自定义人物白库、4:领导人、5:涉政正面人物、6:涉政负面人物、7:其他涉政人物、8:劣迹艺人、9:其他公众人物、10:卡通领导人 当type=6时subType取值含义:0:图像清晰度、1:图像美观度 当type=7时subType取值含义:0:用户自定义图像黑名单 当type=8时subType取值含义:0:用户自定义图像白名单 当type=10时subType取值含义:0:图像中必须是真人脸 1:人脸必须为正脸、2:左右旋转角度、3:俯仰角度、4:歪头角度、5:人脸不能有遮挡、6:不能遮挡眼睛、7:不能遮挡鼻子、8:不能遮挡嘴、9:不能遮挡下巴、10:不能遮挡脸颊、11:人脸不能佩戴墨镜、12:人脸占比、13:人脸必须清晰 、 14:图像中必须为单人脸、 15:人脸为女性、16:人脸为男性、17:人脸为未成年 当type=11时subType取值含义:0:百度默认违禁词库 当type=12时subType取值含义: 0:低质灌水、2:文本色情、4:恶意推广、5:低俗辱骂、7:隐私信息 当type=1230时subType取值含义:12300000:政治敏感 当type=1231时subType取值含义:12310000:暴恐违禁 当type=1233时subType取值含义:12330000:色情 当type=1234时subType取值含义:12340000:低俗辱骂 当type=1236时subType取值含义: 12360101:微信号、12360102:QQ号、12360103:电话号码、12360104:网址、12360105:座机、12360106:电子邮箱、12360200:社交广告、12360300:游戏广告、12360400:流量造假广告、12360500:电商广告、12360600:影视音乐资源广告、12360700:金融广告、12360800:医疗广告、12360900:房产广告、12361000:旅游广告、12361100:招聘广告、12361200:教培广告 当type=1237时subType取值含义: 12370100:虚假诱导营销广告、12370200:虚假权威营销广告、12370300:禁止投放广告、12370400:非法营销广告 当type=1238时subType取值含义:12380000:隐私信息 当type=1239时subType取值含义:12390000:低质灌水 当type=13时subType取值含义:0:自定义文本黑名单 当type=14时subType取值含义:0:自定义文本白名单 当type=16时subType取值含义:0:中国国旗及类似图形、1:中国地图及类似图形、2:党旗、军旗、党徽及类似图形、3:警徽及类似图形、4:各类臂章、5:反动组织旗帜、徽章、标志、6:政治敏感事件、7:领导人影射、8:宗教识别、9:敏感物品、10:敏感地点、11:各国旗帜标志、12:暴恐组织标志、13:邪教组织标志 当type=21时subType取值含义:1:真人吸烟、2:卡通吸烟、3:毒品、4:真人饮酒、5:卡通饮酒、6:赌博、7:纹身、8:钱币、9:竖中指、10:野生动物制品 当type=24时subType取值含义:0:卫生间场景、1:车内场景、2:卧室场景、3:无意义场景、4:普通场景 当type=38时subType取值含义:1:封禁媒体 当type=39时subType取值含义:0:医疗人物、1:娱乐人物、2:文学艺术家、3:经济人物、4:教育与科研人员、5:体育人物、6:历史人物、7:热点人物、8:非现实人物、9:其他人物 当type=40时subType取值含义:1:官方增强场景库 当type=41时subType取值含义:1:自定义场景库 完整版subType说明,您可联系商务经理或填写咨询表单进行获取 |
|
| ++msg | String | N | 不合规项描述信息 | |
| ++probability | Float | N | 不合规项置信度 | |
| ++datasetName | Float | N | 违规项目所属数据集名称 | |
| +++datasetName | Float | N | 所属数据集名称 | |
| ++codes | Array | N | 二维码或者条形码识别结果 | |
| ++hits | Array | N | 命中信息 | |
| +++words | Array | N | 命中关键词 | |
| +++modelName | String | N | 命中自定义模型名称 | |
| +++score | Float | N | 命中自定义模型置信度 | |
| +++modelId | Array | N | 命中自定义模型ID | |
| +++label | String | N | 命中自定义模型标签名称 | |
| conclusionTypeGroupInfos | JSON | N | 审核结论汇总 | |
| +msg | String | N | 一级违规类型描述信息 | |
| +subTypeInfoList | List | N | 二级违规列表。timestamp:帧时间戳;subType:二级违规类型描述 | |
| +typeInfo | json | N | type:一级违规类型描述 |
成功响应示例
{
"log_id": 15832318739570011,
"conclusionType": 2,
"conclusion": "不合规",
"isHitMd5": false,
"msg": "未命中视频黑库",
"frames": [{
"conclusionType": 2,
"conclusion": "不合规",
"frameTimeStamp": 0,
"frameUrl": "http://bj.bcebos.com/v1/aip-web/2877d59d-414c-4b4f-9b99-9a125b6b2055?authorization=bce-auth-v1%2Ff86a2044998643b5abc89b59158bad6d%2F2020-03-03T10%3A37%3A56Z%2F-1%2F%2F8801a8dc24914caf2ea3d1c360d24002ccbbffb99c3f74d35a1257d07ea15529",
"frameThumbnailUrl": "http://bj.bcebos.com/v1/aip-web/84e15149-2f91-4033-bff5-b7c6078107ed?authorization=bce-auth-v1%2Ff86a2044998643b5abc89b59158bad6d%2F2020-03-03T10%3A37%3A56Z%2F-1%2F%2Fa90ef9833579b3503863aea51a47e40ab2cd269a9354d8b0f4730c44803170f5",
"data": [{
"conclusionType": 2,
"conclusion": "不合规",
"type": 5,
"subType": 1,
"msg": "存在公众人物不合规",
"stars": [{
"probability": 0.96015228271484,
"name": "圆圆"
}]
}, {
"conclusionType": 2,
"conclusion": "不合规",
"probability": 0.99330544,
"type": 4,
"subType": 0,
"msg": "存在watermark不合规"
}, {
"conclusionType": 2,
"conclusion": "不合规",
"type": 13,
"subType": 0,
"msg": "存在自定义文本黑名单不合规",
"hits": [{
"datasetName": "#################111",
"words": ["好看视频", "好看视频"]
}]
}]
}, {
"conclusionType": 2,
"conclusion": "不合规",
"frameTimeStamp": 3033,
"frameUrl": "http://bj.bcebos.com/v1/aip-web/e4bd6b04-59f5-40c6-b83b-fb426d87e714?authorization=bce-auth-v1%2Ff86a2044998643b5abc89b59158bad6d%2F2020-03-03T10%3A37%3A56Z%2F-1%2F%2F9ebb1ee1ba7d5fa864d2ad6e9a76b28ea07586152815cecba4a44597bee332af",
"frameThumbnailUrl": "http://bj.bcebos.com/v1/aip-web/801bf227-3ff6-47bc-9759-5e920580d5f1?authorization=bce-auth-v1%2Ff86a2044998643b5abc89b59158bad6d%2F2020-03-03T10%3A37%3A56Z%2F-1%2F%2F212653b237895ac5a8f6f08d689e975c4a53ca5d4ebb0cfec01fafa88dcdd0bf",
"data": [{
"conclusionType": 2,
"conclusion": "不合规",
"type": 4,
"subType": 0,
"probability": 0.99816656,
"msg": "存在watermark不合规"
}, {
"conclusionType": 2,
"conclusion": "不合规",
"type": 13,
"subType": 0,
"msg": "存在自定义文本黑名单不合规",
"hits": [{
"datasetName": "#################111",
"words": ["好看视频"]
}]
}]
}, {
"conclusionType": 2,
"conclusion": "不合规",
"frameTimeStamp": 6033,
"frameUrl": "http://bj.bcebos.com/v1/aip-web/b239a644-6fa2-40a1-8a59-f7d0d15918a9?authorization=bce-auth-v1%2Ff86a2044998643b5abc89b59158bad6d%2F2020-03-03T10%3A37%3A56Z%2F-1%2F%2F4a923722349243c3332ac274338d89d7f8a687ed0fa60e8acb982a5744d18774",
"frameThumbnailUrl": "http://bj.bcebos.com/v1/aip-web/b063f42f-340d-4275-b59a-21e2a51c254c?authorization=bce-auth-v1%2Ff86a2044998643b5abc89b59158bad6d%2F2020-03-03T10%3A37%3A56Z%2F-1%2F%2F7a8e81ed06e09b91e92704d0a4654eccfd6a4261408322f428c255f37ab4c6a4",
"data": [{
"conclusionType": 2,
"conclusion": "不合规",
"type": 5,
"subType": 1,
"msg": "存在公众人物不合规",
"stars": [{
"probability": 0.91569610595703,
"name": "圆圆"
}]
}, {
"conclusionType": 2,
"conclusion": "不合规",
"probability": 0.9982729,
"type": 4,
"subType": 0,
"msg": "存在watermark不合规"
}, {
"conclusionType": 2,
"conclusion": "不合规",
"type": 13,
"subType": 0,
"msg": "存在自定义文本黑名单不合规",
"hits": [{
"datasetName": "#################111",
"words": ["好看视频", "好看视频"]
}]
}]
}, {
"conclusionType": 2,
"conclusion": "不合规",
"frameTimeStamp": 9033,
"frameUrl": "http://bj.bcebos.com/v1/aip-web/65d7cc3d-30db-48e2-8bd6-403377b79b7f?authorization=bce-auth-v1%2Ff86a2044998643b5abc89b59158bad6d%2F2020-03-03T10%3A37%3A56Z%2F-1%2F%2Fef8c29c559b0a4a903587cc9cadde5580f1e92b2934ed49353c0c6eaf085a126",
"frameThumbnailUrl": "http://bj.bcebos.com/v1/aip-web/8ae73692-5ec6-4217-be91-2fdd706163e1?authorization=bce-auth-v1%2Ff86a2044998643b5abc89b59158bad6d%2F2020-03-03T10%3A37%3A56Z%2F-1%2F%2F774b05e67fc5938af9bc0add229e3dfa738738ca5bcfd1754d12f59856a50757",
"data": [{
"conclusionType": 2,
"conclusion": "不合规",
"type": 5,
"subType": 1,
"msg": "存在公众人物不合规",
"stars": [{
"probability": 0.90749565124512,
"name": "圆圆"
}]
}, {
"conclusionType": 2,
"conclusion": "不合规",
"type": 4,
"subType": 0,
"probability": 0.9990488,
"msg": "存在watermark不合规"
}, {
"conclusionType": 2,
"conclusion": "不合规",
"type": 13,
"subType": 0,
"msg": "存在自定义文本黑名单不合规",
"hits": [{
"datasetName": "#################111",
"words": ["好看视频", "好看视频"]
}]
}]
}, {
"conclusionType": 2,
"conclusion": "不合规",
"frameTimeStamp": 12033,
"frameUrl": "http://bj.bcebos.com/v1/aip-web/70bbd265-aa8d-47dd-ad3e-f221eacf4638?authorization=bce-auth-v1%2Ff86a2044998643b5abc89b59158bad6d%2F2020-03-03T10%3A37%3A56Z%2F-1%2F%2F7edc87b8c40c7cf05d27225f771a778849bc2a36f4c0275bda4245b6620ee2ce",
"frameThumbnailUrl": "http://bj.bcebos.com/v1/aip-web/d6853b59-4e32-4d2b-92fe-78a8deca9a42?authorization=bce-auth-v1%2Ff86a2044998643b5abc89b59158bad6d%2F2020-03-03T10%3A37%3A56Z%2F-1%2F%2Fac65249d7009c584edba4235508c7a8a99c36e4037829bfad8612a3eeeffd000",
"data": [{
"conclusionType": 2,
"conclusion": "不合规",
"probability": 0.9984498,
"type": 4,
"subType": 0,
"msg": "存在watermark不合规"
}, {
"conclusionType": 2,
"conclusion": "不合规",
"type": 13,
"subType": 0,
"msg": "存在自定义文本黑名单不合规",
"hits": [{
"datasetName": "#################111",
"words": ["好看视频", "好看视频"]
}]
}]
}, {
"conclusionType": 2,
"conclusion": "不合规",
"frameTimeStamp": 18033,
"frameThumbnailUrl": "http://bj.bcebos.com/v1/aip-web/b23b8992-8d13-43d3-b1d6-02fcb4b03202?authorization=bce-auth-v1%2Ff86a2044998643b5abc89b59158bad6d%2F2020-03-03T10%3A37%3A56Z%2F-1%2F%2Fb503ac106e521e4bf1cc699595ee9c6115b96b18bf91e138a6fd33e40034e1a9",
"frameUrl": "http://bj.bcebos.com/v1/aip-web/272de021-d2b2-4abd-a9cb-c1c17b2955d0?authorization=bce-auth-v1%2Ff86a2044998643b5abc89b59158bad6d%2F2020-03-03T10%3A37%3A56Z%2F-1%2F%2F9f778dce855fca47be17c65ca0b3d9fcdac2c0e43b2bdeb4e114806c94c2fd07",
"data": [{
"conclusionType": 2,
"conclusion": "不合规",
"probability": 0.988422,
"type": 4,
"subType": 0,
"msg": "存在watermark不合规"
}, {
"conclusionType": 2,
"conclusion": "不合规",
"type": 13,
"subType": 0,
"msg": "存在自定义文本黑名单不合规",
"hits": [{
"datasetName": "#################111",
"words": ["好看视频", "好看视频", "好看视频", "好看视频"]
}]
}]
}],
"conclusionTypeGroupInfos": [{
"msg": "存在watermark不合规",
"typeInfo": {
"type": "广告检测"
},
"subTypeInfoList": [{
"subType": "watermark",
"timestamp": 0
}, {
"subType": "watermark",
"timestamp": 3033
}, {
"subType": "watermark",
"timestamp": 6033
}, {
"subType": "watermark",
"timestamp": 9033
}, {
"subType": "watermark",
"timestamp": 12033
}, {
"subType": "watermark",
"timestamp": 18033
}]
}, {
"msg": "存在公众人物不合规",
"typeInfo": {
"type": "公众人物识别"
},
"subTypeInfoList": [{
"subType": "公众人物",
"timestamp": 0
}, {
"subType": "公众人物",
"timestamp": 6033
}, {
"subType": "公众人物",
"timestamp": 9033
}]
}, {
"msg": "存在自定义文本黑名单不合规",
"typeInfo": {
"type": "自定义文本黑名单"
},
"subTypeInfoList": [{
"subType": "自定义文本黑名单",
"timestamp": 0
}, {
"subType": "自定义文本黑名单",
"timestamp": 3033
}, {
"subType": "自定义文本黑名单",
"timestamp": 6033
}, {
"subType": "自定义文本黑名单",
"timestamp": 9033
}, {
"subType": "自定义文本黑名单",
"timestamp": 12033
}, {
"subType": "自定义文本黑名单",
"timestamp": 18033
}]
}]
}失败响应示例
{
"log_id": 149319909347709,
"error_code": 0,
"error_msg":"configId error"
}长视频审核接口
提交视频审核任务
package main
import (
"fmt"
"github.com/Baidu-AIP/golang-sdk/aip/censor"
"github.com/Baidu-AIP/golang-sdk/util"
)
func main() {
client:=censor.NewClient("ak","sk")
//如果是百度云ak sk,使用下面的客户端
client=censor.NewCloudClient("ak","sk")
// 可选参数
options := make(map[string]interface{})
options["frequency"] = 5 // 抽帧频率(int)
options["strategyId"] = int64(1) // 策略ID(int64)
// options["noticeUrl"] = "https://your.callback.url/notice" // 通知地址(string)
// 长视频url
videoUrl := "http://testurl"
// 用户侧视频唯一标识
extId := "123456"
// sdk调用接口并输出结果(返回值为原始 JSON 字符串)
res := client.LongVideoCensorSubmit(videoUrl, extId, options)
fmt.Println(res)
}请求参数详情
| 参数名称 | 数据类型 | 描述 | 是否必须 |
|---|---|---|---|
| url | String | 视频地址 | Y |
| extId | String | 用户侧视频唯一标识 | Y |
| noticeUrl | String | 通知地址,用于用户接收百度推送的审核结果。用户调用接收结果接口以接收审核结果时必填,调用获取结果接口以获取审核结果时无需填写 | N |
| frequency | Integer | 抽帧频率,默认 5s 一帧,抽帧频率可在内容审核平台-策略中心配置 | N |
| appid | Long | 应用ID | N |
| strategyId | Long | 策略ID | N |
其中
url、extId为方法固定入参,其余字段通过options传入。appid、strategyId、frequency、noticeUrl等均可在options中以对应类型设置。
返回参数详情
| 参数名称 | 数据类型 | 描述 | 是否必须 |
|---|---|---|---|
| logId | Long | 请求唯一 id,用于问题排查 | Y |
| msg | String | 详细描述结果 | N |
| ret | Int | 响应状态码,可取值:0 处理成功,其他为处理失败 | Y |
| data | JSONObject | 结果详情 | Y |
| +taskId | String | 本次任务的唯一标识,可根据该标识查询审核详情 | Y |
| +queueSize | Int | 队列长度,达到并发处理上限后,后续提交任务进入该队列 | Y |
成功响应示例
{
"data": {
"queueSize": 0,
"taskId": "16293673898580002"
},
"logId": 16293673898580002,
"msg": "success",
"ret": "0"
}失败响应示例
{
"logId": 16293674334040003,
"msg": "duplicate request",
"ret": "282005"
}拉取视频审核结果
package main
import (
"fmt"
"github.com/Baidu-AIP/golang-sdk/aip/censor"
"github.com/Baidu-AIP/golang-sdk/util"
)
func main() {
client:=censor.NewClient("ak","sk")
//如果是百度云ak sk,使用下面的客户端
client=censor.NewCloudClient("ak","sk")
// 可选参数
options := make(map[string]interface{})
options["fullFrames"] = true // 是否返回全部视频帧审核结论(bool)
// options["appid"] = "123456" // 应用ID(string)
// taskId: 任务唯一标识
taskId := "xxxxxx"
// sdk调用接口并输出结果(返回值为原始 JSON 字符串)
res := client.LongVideoCensorPull(taskId, options)
fmt.Println(res)
}请求参数详情
| 参数名称 | 数据类型 | 描述 | 是否必须 |
|---|---|---|---|
| taskId | String | 任务唯一标识 | Y |
| appid | Long | 应用 ID,用于确定有没有权限查询这个 taskId | N |
| fullFrames | boolean | 是否需要返回全部的视频帧的审核结论,默认返回违规和疑似的审核数据,如果需要全量数据,字段设置成 true。全量数据会增加数据传输时间,降低接口响应速度,建议若无特殊需要,可填写 false | N |
返回参数详情
| 字段名 | 类型 | 是否必须 | 备注 |
|---|---|---|---|
| logId | Long | Y | 请求唯一标识,用于消息追踪 |
| ret | String | Y | 响应状态码,可取值:0 处理成功,其他为处理失败 |
| msg | String | N | 请求接口描述,非空,字符串,详细描述结果 |
| data | JSONObject | Y | 结论详情,参见审核结论详情数据 |
| +taskId | Long | Y | 长视频的任务 taskId |
| +taskDuration | Long | Y | 审核的视频时长,单位 s |
| +extraInfo | String | Y | 用户提交任务时候的 extraInfo 字段内容 |
| +error_code | Int | N | 服务调用错误码,失败才返回,成功不返回 |
| +error_msg | String | N | 服务调用提示信息,失败才返回,成功不返回 |
| +conclusion | String | N | 审核结果描述,可取值:合规、不合规、疑似 |
| +conclusionType | Int | N | 审核结果,可取值:1 合规,2 不合规,3 疑似,4 审核失败 |
| +audios | JsonArray | N | 音频审核结果,list 下是视频中截取出来的音频片段审核结果 |
| ++startTime | Int | N | 音频片段相对于视频的开始时间戳,单位 ms |
| ++endTime | Int | N | 音频片段相对于视频的结束时间戳,单位 ms |
| ++audioUrl | String | N | 音频片段 url |
| ++audioAuditResult | JSONObject | N | 音频片段审核结论,字段与语音同步审核 V3 返回结果相同,详见 https://ai.baidu.com/ai-doc/ANTIPORN/Zku5bn2em |
| +frames | JsonArray | N | 帧审核明细,默认只返回违规、疑似的帧;审核失败、合规的不返回 |
| ++frameTimeStamp | Long | N | 帧时间戳 |
| ++conclusion | String | N | 帧审核结果描述,可取值:合规、不合规、疑似 |
| ++conclusionType | Int | N | 帧审核结果,可取值:1 合规,2 不合规,3 疑似,4 审核失败 |
| ++frameUrl | String | N | 帧 url 地址 |
| ++frameThumbnailUrl | String | N | 帧缩略图 url 地址 |
| ++data | JsonArray | N | 各维度明细审核结果 |
| +++error_code | Int | N | 内层错误提示码,底层服务失败才返回,成功不返回 |
| +++error_msg | string | N | 内层错误提示信息,底层服务失败才返回,成功不返回 |
| +++type | Int | N | 结果具体命中的模型:0:图片库-百度违禁图库、1:涉黄(旧版)、2:暴恐(旧版)、3:恶心图像、4:广告、5:涉政-政治人物(旧版)/人物库-公众人物、6:图像质量、7:图片库-自定义图像黑库、8:图片库-自定义图像白库、10:用户头像、11:图文-百度违禁词库、12:图文、13:图文-自定义文本黑名单、14:图文-自定义文本白名单、15:EasyDL自定义模型、16:涉政-敏感旗帜标志/中国地图及类似图形/敏感媒体(旧版)、21:违禁(旧版)、24:直播场景、38:敏感媒体(旧版)、39:公众人物、40:官方增强场景库、41:自定义场景库、42:涉政(新版)、43:涉黄(新版)、44:暴恐(新版)、45:违禁(新版)、1230:图文-政治敏感、1231:图文-暴恐违禁、1233:图文-色情、1234:图文-低俗辱骂、1235:图文-涉价值观、1236:图文-广告、1237:图文-广告法、1238:图文-隐私信息、1239:图文-低质灌水 |
| +++subType | Int | N | 审核子类型,需参照 type 主类型字段决定其含义(完整版 subType 说明请联系商务经理或填写咨询表单获取) |
| +++msg | String | N | 不合规项描述信息 |
| +++probability | Float | N | 不合规项置信度 |
| +++datasetName | Float | N | 违规项目所属数据集名称 |
| +++stars | Array | N | 命中人脸的信息 |
| ++++name | String | N | 人名 |
| ++++probability | Float | N | 人脸相似度 |
| ++++datasetName | Float | N | 所属数据集名称 |
| +++codes | Array | N | 二维码或者条形码识别结果 |
| +++hits | Array | N | 命中信息 |
| ++++words | Array | N | 送检文本命中词库的关键词(建议参考新字段 wordHitPositions,包含关键词及对应位置、标签信息) |
| ++++probability | Float | N | 不合规项置信度 |
| ++++datasetName | String | N | 违规项目所属数据集名称 |
| ++++modelHitPositions | Array | N | 送检文本命中模型的详细信息,含位置信息(命中违规内容在原文中的起止位置,从 0 开始)与置信度信息(0~1,越大可能性越高) |
| ++++wordHitPositions | Array | N | 送检文本命中词库的详细信息,Object 列表,含 words、positions、label 字段 |
| +++++keyword | String | N | 送检文本命中词库的关键词 |
| +++++positions | Array | N | 关键词在送检原文中的位置(从 0 开始):起始位置、结束位置 |
| +++++label | String | N | 关键词命中的细分标签 |
| ++++modelName | String | N | 命中自定义模型名称 |
| ++++score | Float | N | 命中自定义模型置信度 |
| ++++modelId | Array | N | 命中自定义模型 ID |
| ++++label | String | N | 命中自定义模型标签名称 |
| +illegalFramesByLabel | JsonArray | N | 按标签层级展示的违规帧图列表 |
| ++name | String | N | 一级分类标签名称 |
| ++auditLabels | JsonArray | N | 二级分类标签列表 |
| +++auditCode | Int | N | 二级分类标签 code |
| +++name | String | N | 二级分类标签名称 |
| +++conclusionResult | JSONObject | N | 二级分类标签汇总结果,仅当标签一共两级时返回 |
| ++++conclusion | String | N | 审核结果 |
| ++++conclusionType | Int | N | 审核结果 type |
| ++++msg | String | N | 汇总的结果消息 |
| +++frames | JsonArray | N | 帧审核明细,连续的违规帧会进行合并,仅当标签共两级时返回 |
| ++++conclusion | String | N | 审核结果 |
| ++++conclusionType | Int | N | 审核结果 type |
| ++++frameStart | Int | N | 标签结果开始的时间,单位:秒(包含) |
| ++++frameEnd | Int | N | 标签结果结束的时间,单位:秒(包含) |
| ++++frameUrl | String | N | 标签结果开始帧图片 |
| +++auditLabels | JsonArray | N | 三级分类标签列表(结构同二级 auditLabels,可继续嵌套至四级;图文审核场景四级分类标签才会返回四级) |
| +phoneRisk | Map | N | 是否命中手机号风险检测 |
| ++phoneRisk | Array | N | 手机号风险标签 |
| +++firstLabelZH | String | N | 风险标签(中文),使用短横杠间隔 |
| +++firstLabelEN | String | N | 风险标签(英文),使用短横杠间隔 |
| +++level | Integer | N | 风险等级,0:高风险 1:中风险 2:低风险 3:正常 4:检测失败 |
| ++userRisk | Array | N | 画像风险标签(结构同 phoneRisk) |
| ++phoneHash | String | N | sha256 加密的手机号 |
| ++deviceId | String | N | 设备 ID |
因产品能力升级,新增 42~45(涉政/涉黄/暴恐/违禁新版)及 1230~1239 参数编号,客户可通过该编号对涉政、涉黄、暴恐、违禁及图文审核类型获取更细粒度的审核结果。建议尚未接入新编号的客户尽快调整;新客户可直接忽略编号 1、2、5、12、16、21、38。完整版 subType 说明请联系商务经理或填写咨询表单获取。
成功响应示例
{
"data": {
"taskId": 16293673898580002,
"taskDuration": 60,
"extraInfo": "",
"conclusion": "不合规",
"audios": [
{
"startTime": 0,
"endTime": 10190,
"audioUrl": "http://bj.bcebos.com/aip-web/81219/2021-08-12/162877275333721741/audio/0.wav?authorization=bce-auth-v1%2F...",
"audioAuditResult": {
"conclusion": "不合规",
"conclusionType": 2,
"data": [
{
"text": "这是一段示例文字,",
"startTime": 0,
"endTime": 10190,
"conclusion": "不合规",
"conclusionType": 2,
"auditData": [
{
"type": 1,
"subType": 1,
"msg": "存在色情识别不合规",
"hits": [
{
"datasetName": "百度默认文本反作弊库",
"probability": 1,
"words": ["示例词A", "示例词B"]
}
]
}
]
}
]
}
}
],
"frames": [
{
"conclusion": "不合规",
"frameTimeStamp": 480,
"frameUrl": "http://bj.bcebos.com/aip-web/81219/2021-08-12/162877275333721741/480.jpg?authorization=bce-auth-v1%2F...",
"data": [
{
"msg": "存在watermark不合规",
"conclusion": "不合规",
"probability": 0.9168264,
"subType": 0,
"conclusionType": 2,
"type": 4
}
],
"conclusionType": 2,
"frameThumbnailUrl": "http://bj.bcebos.com/aip-web/81219/2021-08-12/162877275333721741/480.jpg?authorization=bce-auth-v1%2F..."
},
{
"conclusion": "疑似",
"frameTimeStamp": 120,
"frameUrl": "http://bj.bcebos.com/aip-web/81219/2021-08-12/162877275333721741/120.jpg?authorization=bce-auth-v1%2F...",
"data": [
{
"msg": "疑似存在watermark不合规",
"conclusion": "疑似",
"probability": 0.88397026,
"subType": 0,
"conclusionType": 3,
"type": 4
}
],
"conclusionType": 3,
"frameThumbnailUrl": "http://bj.bcebos.com/aip-web/81219/2021-08-12/162877275333721741/120.jpg?authorization=bce-auth-v1%2F..."
}
],
"conclusionType": 2
},
"logId": 16293679811620005,
"ret": "0"
}失败响应示例
{
"logId": 16293679811620005,
"msg": "用户下taskId对应审核任务不存在",
"ret": "282006"
}conclusionType 取值说明
| 取值 | 含义 |
|---|---|
| 1 | 合规 |
| 2 | 不合规 |
| 3 | 疑似 |
| 4 | 审核失败 |
拉取结果时,当
conclusionType为 1/2/3/4 之一即为最终结论,可结束轮询;其中 4(审核失败)建议结合error_code/error_msg或重试处理。在任务尚未处理完成、暂无最终结论时,接口可能返回非 0 的ret(如任务排队中为282008),调用方应继续轮询而非直接判定失败。
