百度AI智能审核

一、介绍

百度内容审核平台(Baidu Content Audit Platform)是百度推出的一款用于进行内容审核的平台。该平台利用人工智能技术,对用户上传的各类内容进行审核和过滤,以实现内容的合规和安全,可以识别和过滤涉黄、涉政、暴恐、广告、侵权等不同类型的违规内容。

二、使用

百度内容审核平台官网地址:内容审核_内容安全_智能审核-百度AI开放平台

  1. 注册百度账号并登录百度内容审核平台:可以通过百度内容审核平台的官方网站进行注册,并登录您的账号。
  2. 创建应用:在百度内容审核平台上创建一个新的应用。在创建应用时,需要提供应用的名称、描述等信息,得到里面的API Key和Secret Key。

2367cfa05c574175934e8eb757794358.png

 三、获取AccessToken

开始前需要安装一个包

NuGet\Install-Package RestSharp -Version 110.2.1-alpha.0.16 

获取AccessToken需要上面的API Key和Secret Key两个密钥,使用URL获取得到数据,一共需要传递三个参数,两个密钥及一个固定参数,返回json格式数据。

返回结果中我们需要的是access_token字段,值得注意的是这个token是有时间限制的,有效期为30天,我们可以根据返回的expires_in字段查看具体的有效期,请求为post请求,这里需要提前获取到,后面的审核请求需要这个参数。

[HttpPost]
public async Task<string> Baiduapi()
{string client_id = _class3.client_id;string client_secret = _class3.client_secret;RestClient client = new RestClient();RestRequest request = new RestRequest(new Uri($"https://aip.baidubce.com/oauth/2.0/token?client_id={client_id}&client_secret={client_secret}&grant_type=client_credentials"), Method.Post);request.AddHeader("Content-Type", "application/json");request.AddHeader("Accept", "application/json");string body = @"";request.AddParameter("application/json", body, ParameterType.RequestBody);RestResponse response = await client.ExecuteAsync(request);string responseJson = $@"{response.Content}";Class person = JsonConvert.DeserializeObject<Class>(responseJson);return person.access_token;
}

四、文本审核 

请求方式同样为post请求,需要传递我们上面获取到的AccessToken,返回一个json格式数据,其中的conclusion字段表示我们输入的文本是否合规,同样conclusionType字段也可以判断是否合规,分别为1:合规,2:不合规,3:疑似,4:审核失败。

[HttpPost]
public object BaiduText(string access_token, string text)
{string host = "https://aip.baidubce.com/rest/2.0/solution/v1/text_censor/v2/user_defined?access_token=" + access_token;Encoding encoding = Encoding.Default;HttpWebRequest request = (HttpWebRequest)WebRequest.Create(host);request.Method = "post";request.KeepAlive = true;String str = "text=" + $"{text}";byte[] buffer = encoding.GetBytes(str);request.ContentLength = buffer.Length;request.GetRequestStream().Write(buffer, 0, buffer.Length);HttpWebResponse response = (HttpWebResponse)request.GetResponse();StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.Default);string result = reader.ReadToEnd();return result;
}

五、图片审核

图片审核同样为post请求,需要传递我们上面获取到的AccessToken,我们传递的图片需要为base64格式,所以我们在上传图片前需要将图片转换为base64格式,返回一个json格式数据,其中的conclusion字段表示我们输入的文本是否合规,和文本审核一致。

[HttpPost]
public object BaiduImg(string access_token)
{string host = "https://aip.baidubce.com/rest/2.0/solution/v1/img_censor/v2/user_defined?access_token=" + access_token;Encoding encoding = Encoding.Default;HttpWebRequest request = (HttpWebRequest)WebRequest.Create(host);request.Method = "post";request.KeepAlive = true;FileStream filestream = new FileStream("图片地址", FileMode.Open);byte[] arr = new byte[filestream.Length];filestream.Read(arr, 0, (int)filestream.Length);string base64 = Convert.ToBase64String(arr);filestream.Close();String str = "image=" + HttpUtility.UrlEncode(base64);byte[] buffer = encoding.GetBytes(str);request.ContentLength = buffer.Length;request.GetRequestStream().Write(buffer, 0, buffer.Length);HttpWebResponse response = (HttpWebResponse)request.GetResponse();StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.Default);string result = reader.ReadToEnd();return result;
}

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/535080.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Matlab R2021a安装教程(附带免费安装包)

作者&#xff1a;翟天保Steven 版权声明&#xff1a;著作权归作者所有&#xff0c;商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处 Matlab简介 Matlab是一种高级技术计算语言和交互式环境&#xff0c;用于算法开发、数据可视化和数值计算。它集成了数学、工程和科…

探索ChatGPT的前沿科技:解锁其在地理信息系统、气候预测、农作物生长等关键领域的创新应用

以ChatGPT、LLaMA、Gemini、DALLE、Midjourney、Stable Diffusion、星火大模型、文心一言、千问为代表AI大语言模型带来了新一波人工智能浪潮&#xff0c;可以面向科研选题、思维导图、数据清洗、统计分析、高级编程、代码调试、算法学习、论文检索、写作、翻译、润色、文献辅助…

JVM 重要知识梳理

一、java内存区域 程序计数器&#xff1a;线程私有&#xff0c;唯一一个不会出现outOfMemoryError的内存区域虚拟机栈&#xff1a;线程私有&#xff0c;栈由一个个栈帧组成&#xff0c;而每个栈帧中都拥有&#xff1a;局部变量表、操作数栈、动态链接、方法返回地址。本地方法…

最大极小值与最小极大值(省模拟赛-16568)

我的代码&#xff1a; #include <iostream> using namespace std; int a[1002]{};int main() {int n;cin>>n;for(int i1;i<n;i){cin>>a[i]; }int jixiaoa[1],jidaa[1],max_jixiao0,min_jida10000;for (int i1;i<n;i){if(a[i]<a[i-1]&&a[i]…

day 55 动态规划part15● 392.判断子序列 ● 115.不同的子序列

这道题目算是 编辑距离问题 的入门题目&#xff08;毕竟这里只是涉及到减法&#xff09;&#xff0c;慢慢的&#xff0c;后面就要来解决真正的 编辑距离问题了. 这个相当于求两个序列的最大公共子序列长度&#xff0c;如果等于s的长度&#xff0c;就是t包含s。一遍过。 class …

手势学习

1. 点击手势 Composable fun ClickableSample() {val number remember {mutableStateOf(0)}Text(text number.value.toString(),textAlign TextAlign.Center,modifier Modifier.wrapContentSize().clickable {number.value}.background(Color.LightGray).padding(horizonta…

以102flowers数据集为例训练ResNet50模型

以102flowers数据集为例训练ResNet50模型 使用飞桨高阶API&#xff0c;使用最少的代码量&#xff0c;实现在102flowers数据集训练ResNet50模型。同时可以一条命令修改成Mnist、Cifar10、Cifar100等数据集&#xff0c;换成其它模型也是只需要一句话代码。 数据集介绍 102flowe…

深入理解Apache Commons Pool2池化技术

码到三十五 &#xff1a; 个人主页 心中有诗画&#xff0c;指尖舞代码&#xff0c;目光览世界&#xff0c;步履越千山&#xff0c;人间尽值得 ! 在现代软件开发中&#xff0c;为了提高性能和资源利用率&#xff0c;开发者们经常使用池化技术来管理那些创建和销毁代价较高的对…

SpringController返回值和异常自动包装

今天遇到一个需求&#xff0c;在不改动原系统代码的情况下。将Controller的返回值和异常包装到一个统一的返回对象中去。 例如原系统的接口 public String myIp(ApiIgnore HttpServletRequest request);返回的只是一个IP字符串"0:0:0:0:0:0:0:1"&#xff0c;目前接口…

t_t 你们到底是从哪儿找的那种拿我当制杖一样教的简单的纯HTML模板的呀?

在这个万物vue的年代&#xff0c;网页设计越来越框架化。 上网搜个资料学习学习吧&#xff0c;咵咵咵&#xff0c;“游泳健身&#xff0c;vue了解一下” 我只是想简单地学个html&#xff0c;js啊&#xff01;怎么就这么复杂&#xff01; 曾几何时&#xff0c;在网上找个网页…

I2C学习总结

i2c概述 I2C&#xff08;Inter-Intergreted Circuit&#xff09; 是一种串行通信协议&#xff0c;用于集成电路之间完成数据传输&#xff0c;i2c用广泛用以各种领域&#xff0c;包括电子设备、嵌入式系统、工业自动化等&#xff1b; i2c仅仅只是一个数据传输的协议&#xff0c…

Splitpanes拆分窗格插件使用

目录 基本用法 纵向排列 遍历渲染 动态拆分宽度 项目开发中用到了拆分窗格(就是下面的效果&#xff0c;可以拆分网页&#xff0c;我们项目通常都是用左右两块拆分&#xff0c;可以通过拖动图标进行左右拖动)&#xff0c;于是就发现了一个很好用的插件&#xff1a;Splitpane…