ThinkPHP6.0 实现 图片审核+文本内容审核(敏感词过滤)

本文涉及的产品
视觉智能开放平台,视频通用资源包5000点
视觉智能开放平台,图像通用资源包5000点
视觉智能开放平台,分割抠图1万点
简介: 应用场景用户评论过滤:对网站用户的评论信息进行检测,审核出涉及违规内容,保证良好的用户体验注册信息筛查:对用户的注册信息进行筛查,避免黑产通过用户名实现违规信息的推广文章内容审核:对UGC文章内容进行多个维度的审核,避免因内容违规导致的APP下架等损失

应用场景


  • 用户评论过滤:对网站用户的评论信息进行检测,审核出涉及违规内容,保证良好的用户体验
  • 注册信息筛查:对用户的注册信息进行筛查,避免黑产通过用户名实现违规信息的推广
  • 文章内容审核:对UGC文章内容进行多个维度的审核,避免因内容违规导致的APP下架等损失


开通应用


1.内容审核控制台:console.bce.baidu.com/ai/?fromai=…


网络异常,图片无法展示
|


2.领取免费资源


网络异常,图片无法展示
|


网络异常,图片无法展示
|


3.创建应用


网络异常,图片无法展示
|


网络异常,图片无法展示
|


  1. 查看应用信息


网络异常,图片无法展示
|


这里面有我们需要的配置信息


实战


<?php
/**
 * Author: 柯作
 * Email: kezuo@foxmail.com
 * Date: 2021/9/2
 * Time: 11:15
 */
namespace app\api\controller;
use app\Request;
class Audit
{
    /**
     * 内容审核
     */
    public function contentAudit(Request $request)
    {
        $content = $request->post('content');
        $token = $this->getAccessToken('API Key', 'Secret Key');
        $url = 'https://aip.baidubce.com/rest/2.0/solution/v1/text_censor/v2/user_defined?access_token=' . $token;
        $bodys = array(
            'text' => $content
        );
        $res = $this->curlPost($url, $bodys);
        //结果转成数组
        $res = json_decode($res, true);
        //根据自己的业务逻辑进行处理
        print_r($res);die;
    }
    /**
     * 图片审核
     */
    public function imageAudit()
    {
        $token = $this->getAccessToken('API Key', 'Secret Key');
        $url = 'https://aip.baidubce.com/rest/2.0/solution/v1/img_censor/v2/user_defined?access_token=' . $token;
        $img = file_get_contents('C:\Users\Pictures\Saved Pictures\1.png');
        $img = base64_encode($img);
        $bodys = array(
            'image' => $img
        );
        $res = $this->curlPost($url, $bodys);
        //结果转成数组
        $res = json_encode($res, true);
        //根据自己的业务逻辑进行处理
        print_r($res);
    }
    /**
     * CURL的Post请求方法
     * @param string $url
     * @param string $param
     * @return bool|string
     */
    function curlPost($url = '', $param = '')
    {
        if (empty($url) || empty($param)) {
            return false;
        }
        $postUrl = $url;
        $curlPost = $param;
        // 初始化curl
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, $postUrl);
        curl_setopt($curl, CURLOPT_HEADER, 0);
        // 要求结果为字符串且输出到屏幕上
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
        // post提交方式
        curl_setopt($curl, CURLOPT_POST, 1);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $curlPost);
        // 运行curl
        $data = curl_exec($curl);
        curl_close($curl);
        return $data;
    }
    /**
     * 获取百度开放平台的票据
     * 参考链接:https://ai.baidu.com/ai-doc/REFERENCE/Ck3dwjhhu
     */
    public function getAccessToken($ApiKey = '', $SecretKey = '', $grantType = 'client_credentials')
    {
        $url = 'https://aip.baidubce.com/oauth/2.0/token';
        $post_data['grant_type'] = $grantType;
        $post_data['client_id'] = $ApiKey;
        $post_data['client_secret'] = $SecretKey;
        $o = "";
        foreach ($post_data as $k => $v) {
            $o .= "$k=" . urlencode($v) . "&";
        }
        $post_data = substr($o, 0, -1);
        $res = $this->curlPost($url, $post_data);
        //进行把返回结果转成数组
        $res = json_decode($res, true);
        if (isset($res['error'])) {
            exit('API Key或者Secret Key不正确');
        }
        $accessToken = $res['access_token'];
        return $accessToken;
    }
}
复制代码


配置路由,进行调用就行


网络异常,图片无法展示
|


文本内容审核测试


1.输入文本为‘你好’

网络异常,图片无法展示
|


结果为合规


2.输入文本内容为‘敏感词’

网络异常,图片无法展示
|


结果则为不合规


相关文章
|
存储 安全 小程序
ThinkPHP6+JWT 中间件校验Token时效性
一、涉及到的知识点 接口验签安全机制封装到服务层 接口调用须使用验签 接口验证封装到中间件
1723 96
|
存储 算法 关系型数据库
mysql存储地理信息的方法
MySQL 支持 `GEOMETRY` 及其子类型(如 `POINT`, `LINESTRING`, `POLYGON`)存储地理信息,并提供 `SPATIAL` 索引来加速查询。创建带有 `SPATIAL INDEX` 的表,使用 `GeomFromText` 或 `PointFromText` 插入数据,通过 `MBRContains`, `Distance_Sphere`, `ST_Distance_Sphere` 等函数查询。例如,查找矩形区域内位置、一定距离内的点,以及判断点是否在多边形内并计算距离。
308 1
|
Java
敏感词过滤
布隆过滤器用来判断一个集合中的是否包含某一个元素,由于采用hash运算,有hash碰撞的原因,所以会存在误判。布隆过滤器判定一个元素存在的情况,这个元素可能不存在,但是判定一个元素不存在的时候,是一定不存在的。
405 0
|
运维 监控 数据可视化
大白话详解Spring Cloud服务降级与熔断
Hystrix断路器概述 1.1 分布式系统面临的问题 复杂分布式体系结构中的应用程序有数十个依赖关系,每个依赖关系在某些时候将不可避免地失败。这就造成有可能会发生 服务雪崩 。那么什么是服务雪崩呢? 多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其他的微服务,这就是所谓的“ 扇出 ”(像一把打开的折扇)。如果扇出的链路上某个微服务的调用响应时间过长或者不可用,对微服务A的调用就会占用越来越多的系统资源,进而引起系统崩溃,这就是所谓的” 雪崩效应 “。也就是系统的 高可用 受到了破坏。
|
Linux PHP
Thinkphp5+FastAdmin配置workerman消息推送(多线程)
Thinkphp5+FastAdmin配置workerman消息推送(多线程)
989 0
|
域名解析 弹性计算 Linux
PHP SDK 的安装与调用
Alibaba Cloud SDK for PHP是支持PHP开发者快速访问阿里云服务的开发包,由Alibaba Cloud Client for PHP提供底层支持。Alibaba Cloud SDK for PHP让您不用复杂编程即可访问云服务器、云数据库RDS和云监控等多个阿里云服务。本文将为大家介绍PHP SDK的安装与调用过程。
2531 0
PHP SDK 的安装与调用
|
算法 C语言 智能硬件
stm32单片机实现电机的PID控制
stm32单片机实现电机的PID控制
571 0
|
JSON API 数据格式
敏感词检测接口 - 私有化部署
敏感词检测接口,支持私有化部署,开箱即用, 下载到本地直接运行,直接http json查询。
|
JSON API 数据格式
敏感词检测API - 私有化部署
敏感词检测API,支持私有化部署,开箱即用, 下载到本地直接运行,直接http json查询。