文本反垃圾检测
本文介绍了如何使用PHP SDK文本反垃圾接口,对文本内容进行色情、暴恐、涉政等风险进行识别。
功能描述
文本反垃圾接口目前仅支持同步检测。关于参数的详细说明,请参见文本同步检测。
一次请求可以检测多条文本,也可以检测单条文本。按实际检测的文本条数进行计费,请参见计费概述。
前提条件
文本内容检测
文本垃圾检测支持自定义关键词,例如添加一些竞品关键词等。如果被检测的文本中包含您添加的关键词,算法会返回您block。
您可以前往内容安全控制台添加关键词,也可以通过API接口添加关键词。
接口 | 描述 | 支持的Region |
TextScanRequest | 提交文本反垃圾检测任务,检测场景参数请传递antispam(scenes=antispam)。 |
|
示例代码
<?php
use AlibabaCloud\Client\AlibabaCloud;
use AlibabaCloud\Client\Exception\ClientException;
use AlibabaCloud\Client\Exception\ServerException;
use AlibabaCloud\Green\Green;
try {
/**
* 注意:此处实例化的client尽可能重复使用,提升检测性能。避免重复建立连接。
* 常见获取环境变量方式:
* 获取RAM用户AccessKey ID:getenv("ALIBABA_CLOUD_ACCESS_KEY_ID");
* 获取RAM用户AccessKey Secret:getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
*/
AlibabaCloud::accessKeyClient('建议从环境变量中获取RAM用户AccessKey ID', '建议从环境变量中获取RAM用户AccessKey Secret')
->timeout(10) // 超时10秒,使用该客户端且没有单独设置的请求都使用此设置。
->connectTimeout(3) // 连接超时3秒,当单位小于1,则自动转换为毫秒,使用该客户端且没有单独设置的请求都使用此设置。
->regionId('cn-shanghai')
->asDefaultClient();
$task1 = array('dataId' => '检测数据ID',
'content' => '需要检测的文本内容'
);
/**
* 文本垃圾检测:antispam。
**/
$result = Green::v20180509()->textScan()
->timeout(10) // 超时10秒,request超时设置,仅对当前请求有效。
->connectTimeout(3) // 连接超时3秒,当单位小于1,则自动转换为毫秒,request超时设置,仅对当前请求有效。
->body(json_encode(array('tasks' => array($task1), 'scenes' => array('antispam'), 'bizType' => '业务场景')))
->request();
print_r($result->toArray());
} catch (ClientException $exception) {
echo $exception->getMessage() . PHP_EOL;
} catch (ServerException $exception) {
echo $exception->getMessage() . PHP_EOL;
echo $exception->getErrorCode() . PHP_EOL;
echo $exception->getRequestId() . PHP_EOL;
echo $exception->getErrorMessage() . PHP_EOL;
}