JAVA实现百度云文本内容审核

网友投稿 914 2022-05-30

应用场景

用户评论过滤:对网站用户的评论信息进行检测,审核出涉及色情、暴恐、政治敏感、恶意推广等内容,保证良好的用户体验

注册信息筛查:对用户的注册信息进行筛查,避免黑产通过用户名实现违规信息的推广

文章内容审核:对UGC文章内容进行多个维度的审核,避免因内容违规导致的APP下架等损失

官网地址: https://ai.baidu.com/ai-doc/ANTIPORN/Vk3h6xaga

能力介绍

您可以在内容审核平台中对以下项目进行配置,后期调用接口时即可按照您的配置启用以下一项或多项能力

百度官方违禁词库:包含百度海量历史数据,提供对敏感事件、违规词语及监管要求封禁词语的识别审核能力,同时于2020年1月开始包含对新冠疫情谣言的识别审核能力

文本色情:对文本中的色情行为描述、色情资源链接、低俗交友、污秽文爱等内容进行识别

暴恐违禁:对暴力行为、恐怖描述、赌博、毒品、枪支弹药等违禁内容进行识别

政治敏感:对文本中的敏感事件、涉政人物、散布谣言、反动宣传等内容进行识别

恶意推广:对文本中带有售卖意向的软文广告,微信、QQ等个人联系方式等违规内容及变体进行识别

低俗辱骂:对文本中的侮辱谩骂、人身攻击、消极宣泄等内容进行识别

低质灌水:对网络社区常见的乱码、水帖、刷屏等无意义的灌水信息进行识别

广告法审核:对广告法中要求的不能出现的违规词进行检测

使用流程

确认默认配置是否符合您需求,如果符合请学习新手指南完成应用创建后调用接口

如果默认配置不符合您需求,请先阅读《配置文本审核策略》章节了解基础的审核规则配置,如果您有自定义添加政治敏感人物、自定义图像黑白名单、期望在敏感时期自动收紧线上策略(多策略自动调度切换)的需求,请阅读完《配置图像审核策略》章节后阅读《高级功能》章节,然后按文档中的引导在内容审核平台中完成对应规则的配置后调用接口

JAVA实现百度云文本内容审核

代码实现

使用依赖

cn.hutool hutool-all 5.7.7

工具类 只需修改client_id,client_secret 参数内容即可

package com.ying.baiducontentapproval; import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpResponse; import cn.hutool.json.JSON; import cn.hutool.json.JSONUtil; /** * @author 小影 * @contact QQ: 2849799912 * @create 2022-03-31 13:46 * @describe:百度云内容审核 */ public class ContentApprovalUtil { String client_id = "XXXX";// API Key String client_secret = "XXXX";// 应用的Secret Key /** * 获取token */ private String getToken() { String url = "https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=APP_KEY&client_secret=SECRET_KEY"; url = url.replace("APP_KEY", client_id).replace("SECRET_KEY", client_secret); HttpResponse response = HttpRequest.post(url).execute(); JSON parse = JSONUtil.parseObj(response.body()); return parse.getByPath("access_token").toString(); } /** * 文本-内容审核 * @param bodyText 待审核内容 * @return 审核结果 */ public String TextCensor(String bodyText) { String path = "https://aip.baidubce.com/rest/2.0/solution/v1/text_censor/v2/user_defined?access_token="+getToken(); HttpResponse response = HttpRequest.post(path) .header("Content-Type", "application/x-www-form-urlencoded") .body("text=" + bodyText) .execute(); return response.body(); } }

响应参数

参数名称

数据类型

是否必须

备注

log_id

Long

Y

请求唯一id

error_code

Long

N

错误提示码,失败才返回,成功不返回

error_msg

String

N

错误提示信息,失败才返回,成功不返回

conclusion

String

N

审核结果,可取值:合规、不合规、疑似、审核失败

conclusionType

Integer

N

审核结果类型,可取值1.合规,2.不合规,3.疑似,4.审核失败

data

Array

N

不合规/疑似/命中白名单项详细信息。响应成功并且conclusion为疑似或不合规或命中白名单时才返回,响应失败或conclusion为合规且未命中白名单时不返回。

+error_code

Integer

内层错误提示码,底层服务失败才返回,成功不返回

+error_msg

String

内层错误提示信息,底层服务失败才返回,成功不返回

+type

Integer

N

审核主类型,11:百度官方违禁词库、12:文本反作弊、13:自定义文本黑名单、14:自定义文本白名单

+subType

Integer

N

审核子类型,此字段需参照type主类型字段决定其含义:

当type=11时subType取值含义:

0:百度官方默认违禁词库

当type=12时subType取值含义:

0:低质灌水、1:暴恐违禁、2:文本色情、3:政治敏感、4:恶意推广、5:低俗辱骂 6:恶意推广-联系方式、7:恶意推广-软文推广、8:广告法审核

当type=13时subType取值含义:

0:自定义文本黑名单

当type=14时subType取值含义:

0:自定义文本白名单

+msg

String

N

不合规项描述信息

+hits

Array

N

送检文本违规原因的详细信息

++probability

Float

N

不合规项置信度

++datasetName

String

N

违规项目所属数据集名称

++words

Array

N

送检文本命中词库的关键词(备注:建议参考新字段“wordHitPositions”,包含信息更丰富:关键词以及对应的位置及标签信息)

++modelHitPositions

Array

N

送检文本命中模型的详细信息,包含位置信息及置信度信息。位置信息:命中模型的违规内容在送检原文中的位置(从0开始计算):“开始位置”、“结束位置”;置信度信息:命中模型对应的置信度分数(范围:0至1,数字越大,可能性越高)。返回示例见下方“成功响应示例——不合规”部分

++wordHitPositions

Array

N

送检文本命中词库的详细信息,为Object的列表,包含words、positions、label三个字段,详细描述如下表所示。返回示例见下方“成功响应示例——不合规”部分

+++keyword

String

N

送检文本命中词库的关键词

+++positions

Array

N

关键词在送检原文中的位置(从0开始计算):分别为“起始位置”,“结束位置”

+++label

String

N

关键词命中的细分标签,标签规则见文末“细分标签对照表”

Java

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:[华为云在线课程][Linux平台软件包安装与管理][第三章RPM包管理器][学习笔记]
下一篇:何恺明团队开源 3D 目标检测新框架 VoteNet:模型更简单、效率更高
相关文章