@ 沙漠- ant- labs/ 主持人
在浏览器和节点运行的 JavaScript 的在线设备 NSFW 图像检测 。 主持人对裸体或性活动评分从0分到1分,在标出裸体和性内容时调制通过泳衣和内衣. 图像留在本地.
两条共用一条 Moderator API : (英语)
@desert-ant-labs/moderator(默认):一个WebAssembly输油管 LitteRT.js (法语) 推论: 浏览器. 在服务器侧渲染过程中安全导入;Moderator.load()只在浏览器或 Web Worker 中运行推论.@desert-ant-labs/moderator/native: 预建的本地核心, macOS上的核心ML和Linux上的LiteRT, for 服务器侧推论 在节点。 从服务器代码导入它 .
npm i @desert-ant-labs/moderator @litertjs/core # browser
npm i @desert-ant-labs/moderator # Node, prebuilt native core
import { Moderator } from "@desert-ant-labs/moderator";
const moderator = await Moderator.load();
const { score, isNSFW, regions } = await moderator.analyze(image);
// regions: { nipples, genitals, buttocks, nude, sexAct }, each 0..1
moderator.dispose();
在浏览器中, image 任何东西 createImageBitmap 接受(一个 <img>画布 画布 Blob,一个 ImageBitmap或一个 ImageData在节点中,通过解码像素为 { data, width, height } 有 RGB 或 RGBA 字节 :
import sharp from "sharp";
import { Moderator } from "@desert-ant-labs/moderator/native";
const { data, info } = await sharp("photo.jpg").rotate().raw().toBuffer({ resolveWithObject: true });
const result = await moderator.analyze({ data, width: info.width, height: info.height });
选项
analyze(image, { threshold, policy, quality })数字 :
threshold(默认)0.5: 得分在哪个或哪个以上isNSFW这是真的.policy数字 :"standard"(默认)标记任何裸体,包括赤胸;"allowTopless"无视一个赤裸的胸口自己.quality数字 :"fast"评分中心收成(视频帧),"balanced"四块多尺寸的瓦片,"accurate"那些瓷砖和镜子.
正在装入模型
Moderator.load() 从 Hugging Face 下载模型(desert-ant-labs/moderator在SDK的被钉上标记,验证,并缓存. 过 directory (节点)或 modelBaseUrl (浏览器)使用您自己主机的文件,以及 onProgress 用于下载进度。 浏览器的构建也需要 litert, (中文(简体) ), litertWasmDir,以及 accelerator (单位:千美元)"wasm", (中文(简体) ), "webgpu",或 "webnn") (中文(简体) ).
许可证
沙漠蚂蚁实验室 源头可破坏许可证。为大多数免费提供 应用软件和商务许可证必须规模化。 完整的术语在链接. 许可证发放: 许可@ desertant.com。 。 。 .
SDK的第三方通知: THIRD_PARTY_NOTICES.md。 。 。 .
权重第三方通知: THIRD_PARTY_NOTICES.md。 。 。 .