“NSFW” 是 “Not Safe For Work” 的缩写,通常用于标记那些在工作场所可能不适当的的在线内容。这种内容可能包含暴力、色情、血腥、或者其他可能被认为是令人反感或冒犯的材料,最常见的原因……是 18+ 成人内容。在许多在线平台,如 Reddit、Twitter 和其他社区网站上,可以看到 “NSFW” 的标签。
如果在办公场所浏览这些内容,老板看到后肯定会让你卷铺盖走人。
秉着**「好好学习,天天向上」**的精神,我们应该对自己的产品进行 NSFW 鉴黄,这也是对客户负责,至于什么明步、什么玛利亚、什么结衣,我是绝对不认识的,一切都是为了打磨产品!
前方高能预警,非战斗人士请火速撤离……
nsfw 项目介绍
很高兴向大家介绍我们的开源 AI 项目 NSFW(Not Safe For Work)!NSFW 是一个用于图片鉴黄的项目,通过使用深度学习技术,我们可以快速、高效地识别图像中是否包含成人内容,从而帮助保护网络环境的健康和安全。
GitHub 项目链接:https://github.com/EthanD4869/nsfw。
我们为该项目提供了一个轻量级的模型,并且提供了 Dockerfile,让用户可以轻松地部署和运行该模型,而无需担心环境适配问题。只需更改 NSFW 所测的图片 URL,即可进行图像鉴黄操作。
NSFW 支持 GPU 加速,使得每秒钟可以处理多张图片,即使是在 CPU 上,我们也能够以每秒钟 1 张图的速度运行。动动手指,3 分钟内即可完成部署,让您在图像鉴黄方面比拟多个鉴黄师。
由于涉及图片内容较为敏感,训练数据不方便共享,但我们提供了一个轻量级的模型,使得用户可以在不泄露隐私的情况下进行图片鉴黄操作。该项目非常实用,帮助您在保护网络环境方面发挥重要作用。
接下来将会介绍如何在 Sealos 中一键部署 nsfw,并使用 Laf 调用 nfsw 的接口进行鉴黄。
步骤 1:首先进入 Sealos 并打开「应用管理」
首先需要进入 Sealos 桌面:https://cloud.sealos.io。
然后在桌面上打开「应用管理」:
步骤 2:新建应用
在 「应用管理」 中,点击「新建应用」来创建一个新的应用。
步骤 3:设置启动参数
基础配置:
- 应用名称(自定义:nsfw
- 镜像名 (默认最新版本):ethandai4869/nsfw-auth
- CPU(推荐):0.5 Core
- 内存(推荐):512 MB
部署模式:
- 实例数(自定义):1
网络配置:
- 容器暴露端口:5000
- 外网访问:开启
注意:我们这里使用的是最低配置,您可以根据自己的需求加大配置。
步骤 4:设置环境变量
继续往下,展开高级设置,点击「编辑环境变量」:
填入以下环境变量:
API_SECRET_KEY=<api_secret_key>
⚠️注意:请将 <api_secret_key> 替换为你自定义的 key。
步骤 5:部署应用
最终点击右上角的「部署应用」,即可完成部署:
部署成功
最终要等待所有的实例都处于 Running 状态,才算是启动成功了。
点击右边的复制按钮,便可复制 API 的外网地址:
接下来我们来测一下这个 API。
使用 Laf 调用 nsfw
步骤 1:首先进入 Sealos 并打开 laf 函数计算
步骤 2:新建应用
注册登录之后,点击新建,建立一个应用:
步骤 3:开发
点击开发,进入应用开发界面:
步骤 4:新建云函数
然后我们点击函数,函数列表右侧的加号,新增一个 nsfw 的云函数:
步骤 5:调试代码并运行
云函数完整代码如下:
import cloud from '@lafjs/cloud'
export default async function (ctx: FunctionContext) {
const endpointUrl = 'https://rfsofcrcuopp.cloud.sealos.io';
const imageUrl = '//img1.sycdn.imooc.com/64bdc535000199d808801320.png';
const key = 'key123';
const res = await cloud.fetch.post(endpointUrl + '/process_image', { url: imageUrl }, { headers: { Authorization: 'Bearer ' + key } });
let sum = res.data['image.jpg'].hentai + res.data['image.jpg'].porn + res.data['image.jpg'].sexy
console.log(res.data)
console.log("sum", sum)
}
复制代码并修改 url 和 key 后就可以运行了。
我们先拿一张 AI 画的小姐姐来测试一下:
运行结果如下:
这里的 sum = hentai+porn+sexy。sum 值越接近于 1,说明图片越有可能不可描述!
这里的 sum 值是 0.13,问题不大啦。
再拿张小姐姐测试一下:
运行结果如下:
非常健康!
最后再拿一张不可描述的图片测试一下:
这个图片问题很大哦,千万不要有大胆的想法~