Skip to content
forked from arnidan/nsfw-api

Wrapper around NSFWJS to provide API.

Notifications You must be signed in to change notification settings

tingyukj/nsfw-api

 
 

Repository files navigation

NSFW API

build TypeScript

Wrapper around NSFWJS to provide API.

Usage

Docker

There is docker image bundled with model v3 from https://github.com/gantman/nsfw_model.

docker run -p 3000:3000 ghcr.io/arnidan/nsfw-api:latest
docker-compose.yml example
version: "3.9"

services:
  nsfw-api:
    image: "ghcr.io/arnidan/nsfw-api:latest"
    ports:
      - "3000:3000"
    restart: always

Manual deploy

  1. Clone the repo
  2. Download and unpack model from models repo to model folder
  3. yarn
  4. yarn build
  5. yarn start

Now app started on port 3000.

API Methods

  • POST /classify
  • POST /classify-many

POST /classify

Example of the request

POST /classify HTTP/1.1
Content-Type: multipart/form-data

Image should be provided in image field.

Example of the response

HTTP/1.1 200 OK
Content-Type: application/json
{
    "porn": 0.59248286485672,
    "sexy": 0.39802199602127075,
    "hentai": 0.006243097595870495,
    "neutral": 0.0031403270550072193,
    "drawing": 0.00011181648733327165
}

POST /classify-many

Example of the request

POST /classify-many HTTP/1.1
Content-Type: multipart/form-data

Images should be provided in images field.

Example of the response

HTTP/1.1 200 OK
Content-Type: application/json
[
    {
        "porn": 0.3996206820011139,
        "neutral": 0.388679563999176,
        "sexy": 0.19470958411693573,
        "hentai": 0.015063910745084286,
        "drawing": 0.001926235854625702
    },
    {
        "sexy": 0.8366416692733765,
        "porn": 0.13645528256893158,
        "neutral": 0.0222245492041111,
        "hentai": 0.004213324282318354,
        "drawing": 0.0004651622730307281
    },
    {
        "sexy": 0.8017168045043945,
        "porn": 0.1770564466714859,
        "neutral": 0.015829339623451233,
        "hentai": 0.005097625777125359,
        "drawing": 0.00029983260901644826
    }
]

About

Wrapper around NSFWJS to provide API.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 69.1%
  • JavaScript 21.4%
  • Dockerfile 9.5%