内容审核-文本
本章节提供了通过Java SDK调用“内容审核-文本”服务的样例,用户直接调用接口函数即可使用SDK功能。具体流程如下:
步骤一:开通服务,用户在“服务列表”或“服务管理”页面选择内容审核-文本服务申请开通。
步骤二:配置自定义词库,用户可配置自定义白名单词库和自定义黑名单词库。
步骤三:配置环境,获取SDK和样例工程,导入到开发环境中。
步骤四:认证鉴权,使用AK/SK方式进行认证。
步骤五:调用服务,调用API接口使用服务,使用过程中可以随时查看状态码与错误码。
步骤三:配置环境
您可以基于内容审核SDK通过编写代码的方式调用内容审核-文本API。在使用SDK和调用API时您需要进行环境配置。具体操作步骤如下:
- 最新版本内容审核SDK软件包和文档,请在SDK中心获取。
- 环境配置请参见Java开发环境配置。
- 以eclipse工具为例,导入SDK工程:
- 打开Eclipse,确保“Windows >Preferences >Java >Installed JREs”配置正确的JRE路径。
- 在左边导航上选择“General > Workspace”,在“Text file encoding”区域选中“Other”,并设置参数值为“UTF-8”,单击“Apply”后,单击“OK”。
- 在菜单栏依次选择“File > Import”, 弹出导入工程窗口,选择“Maven > Existing Maven Projects”,单击“Next”,单击“Browse”,选择“ais-moderation-java-sdk”所在的本地位置。
- 单击Finish,导入SDK,导入后打开工程,工程目录如图1所示。
步骤四:认证鉴权
内容审核服务认证方式有Token和AK/SK两种方式,本示例中使用AK/SK方式进行认证。
- 获取AK/SK。
AK/SK即访问密钥,请登录我的凭证页面,选择“访问密钥 > 新增访问密钥”获取。
图2 新增访问密钥
- 配置Java SDK中的AK/SK,进行AK/SK认证鉴权。
根据获取的AK/SK,修改工程目录中“ModerationTextContentDemo.java”文件中函数的“AK”和“SK”的值。示例代码如下:
1 2 3 4 5 6 7 8 9 10 11
// 1. 配置好访问文本内容审核服务的基本信息,生成对应的一个客户端连接对象 AisAccess service = ServiceAccessBuilder.builder() // 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全 // 本示例以ak和sk保存在环境变量中来实现身份验证为例,运行本示例前请先在本地环境中设置环境变量HUAWEICLOUD_SDK_AK和HUAWEICLOUD_SDK_SK .ak("HUAWEICLOUD_SDK_AK") .sk("HUAWEICLOUD_SDK_SK") .region("cn-north-4") // 内容审核服务支持华北-北京四(cn-north-4)、华东-上海一(cn-east-3)的配置 .connectionTimeout(5000) // 连接目标url超时限制 .connectionRequestTimeout(1000) // 连接池获取可用连接超时限制 .socketTimeout(20000) // 获取服务器响应数据超时限制 .build();
步骤五:调用服务
- 输入需要检测的文本,参考如下示例代码修改“ModerationTextContentDemo.java”文件中输入文本的位置("6666666666")。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
// // 2.构建访问文本内容审核服务需要的参数 // String uri = "/v1.0/moderation/text"; JSONObject json = new JSONObject(); json.put("categories", new String[] {"porn","flood"}); //检测内容 JSONObject text = new JSONObject(); text.put("text", "6666666666"); text.put("type", "content"); JSONArray items = new JSONArray(); items.add(text); json.put("items", items); StringEntity stringEntity = new StringEntity(json.toJSONString(), "utf-8"); // 3.传入文本内容审核服务对应的uri参数, 传入文本内容审核服务需要的参数, // 该参数主要通过JSON对象的方式传入, 使用POST方法调用服务 HttpResponse response = service.post(uri, stringEntity); // 4.验证服务调用返回的状态是否成功,如果为200, 为成功, 否则失败。 ResponseProcessUtils.processResponseStatus(response);
- 执行“ModerationTextContentDemo.java”文件,控制台输出200即表示程序执行成功,文本内容审核结果输出到控制台,如图3所示。
- 查看调用次数。您可以在“内容审核 V3>识别统计>文本审核”页查看调用详情和调用次数统计,如图4所示。