赶快上车,会调用你也可以当鉴黄师了

  • A+
所属分类:安全博客
摘要

本人在某平台发布文章时封面用了几张美女图片,内容里都是正常的流程图之类的,却被这个平台告知如下内容,大家评评理这图片违规么:

屡次申诉无果,想想这么大的平台不应该全靠手工审核吧,每天几十万上百万稿件那不得累死人,遂着实想看看是不是有这样的接口供调用,一百度果然有,这里分享一下。


起因

本人在某平台发布文章时封面用了几张美女图片,内容里都是正常的流程图之类的,却被这个平台告知如下内容,大家评评理这图片违规么:
赶快上车,会调用你也可以当鉴黄师了
屡次申诉无果,想想这么大的平台不应该全靠手工审核吧,每天几十万上百万稿件那不得累死人,遂着实想看看是不是有这样的接口供调用,一百度果然有,这里分享一下。

准备

创建应用

本次使用的百度开放平台的图文审核功能传送门,去控制台新建一个内容审核应用:
赶快上车,会调用你也可以当鉴黄师了
标星号的填完即可保存。

下载SDK

如下图点击左侧SDK下载,右边是你刚刚新建的应用信息,AppID、APIKey、Secret Key后面均有用。
赶快上车,会调用你也可以当鉴黄师了
进入选择SDK环节,依照自己擅长的选择下载吧,我用的pythonpython可以直接pip安装:

pip install baidu-ai

赶快上车,会调用你也可以当鉴黄师了

使用

我用的python,直接导入包,将自己的APP_ID、API_KEY、SECRET_KEY填入下面代码里,返回一个client,一会可以用这个client直接调用鉴别接口 。
AipContentCensor是内容审核的Python SDK客户端,为使用内容审核的开发人员提供了一系列的交互方法。

参考如下代码新建一个AipContentCensor

from aip import AipContentCensor import json  def get_client():     APP_ID = '你的APP_ID '     API_KEY = '你的API_KEY '     SECRET_KEY = '你的SECRET_KEY '     client = AipContentCensor(APP_ID, API_KEY, SECRET_KEY)     return client 

鉴别图片

可先在控制台中自定义配置所有接口的报警阈值和疑似区间。

 ## 打开图片 def get_file_content(filePath):     with open(filePath, 'rb') as fp:         return fp.read()   def get_img_result():     client = get_client()     #result = client.imageCensorUserDefined('https://ai-solution-admin.cdn.bcebos.com/audit%2Fdemo%2Fcensoring-demo.jpg')     ## 这里用client调用图片鉴别接口     result = client.imageCensorUserDefined(get_file_content("图片名"))     res = json.dumps(result, indent=3, ensure_ascii=False)     print(res)

我这里准备了3张图片,希望知乎审核能过,顺便求好心人给与不能过的图片。
第一张:
赶快上车,会调用你也可以当鉴黄师了

必须合规,返回:

{    "conclusion": "合规",    "log_id": 15977578703001794,    "conclusionType": 1 }

第二张:
赶快上车,会调用你也可以当鉴黄师了

可爱吗?继续合规:

{    "conclusion": "合规",    "log_id": 15977579489397019,    "conclusionType": 1 }

第三张:
赶快上车,会调用你也可以当鉴黄师了

调用的时候没打码,害怕审核不过才打的,都快掉出来来,还合规:
{
“conclusion”: “合规”,
“log_id”: 15977579962407790,
“conclusionType”: 1
}

调用文本

来试一试文本如何。

def get_text_result():     client = get_client()     result = client.textCensorUserDefined("你不懂什么叫做爱")     res = json.dumps(result,indent=3,ensure_ascii=False)     print(res)

合规,还挺智能的。

{    "conclusion": "合规",    "log_id": 15977582180065452,    "conclusionType": 1 }

下一个。

def get_text_result():     client = get_client()     result = client.textCensorUserDefined("谁逼你的?,特朗普逼的!")     res = json.dumps(result,indent=3,ensure_ascii=False)     print(res)
{    "conclusion": "不合规",    "log_id": 15977583177238021,    "data": [       {          "msg": "存在文本色情不合规",          "conclusion": "不合规",          "hits": [             {                "probability": 0.984,                "datasetName": "百度默认文本反作弊库",                "words": []             }          ],          "subType": 2,          "conclusionType": 2,          "type": 12       },       {          "msg": "存在低俗辱骂不合规",          "conclusion": "不合规",          "hits": [             {                "probability": 0.747,                "datasetName": "百度默认文本反作弊库",                "words": []             }          ],          "subType": 5,          "conclusionType": 2,          "type": 12       }    ],    "conclusionType": 2 }

哈哈。

结束

本文只是简单的使用了一下内容审核功能,读者可以参考百度开发文档将其使用到自己的项目里,应该还是不错的。最后,更多内容请访问从今天开始种树.

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: