Skip to content

This fork allows images to be submitted without a URL in base64 format

License

BSD-3-Clause, BSD-2-Clause licenses found

Licenses found

BSD-3-Clause
LICENSE.txt
BSD-2-Clause
LICENSE-yahoo.txt
Notifications You must be signed in to change notification settings

xiobot/open_nsfw--

 
 

open_nsfw--

This is a fork of Yahoo's open_nsfw. The goal is to make the Not Suitable for Work (NSFW) classification model easily accessible through an HTTP API deployable with Docker.

Install

First install Docker (available in Debian as docker.io), then give the user you want to run the API as permission to use Docker:

sudo gpasswd -a $USER docker

You need to logout and login again for this to take effect.

Now build the image, this might take a while:

docker build -t open_nsfw https://raw.githubusercontent.com/rahiel/open_nsfw--/master/Dockerfile

Then you can start the API:

docker run -p <port>:8080 open_nsfw

where you replace <port> with the port number you want to have the API accessible on your local machine.

Usage

The API is very simple, you POST an url of an image and the API will then fetch it, classify it and return the probability that it's NSFW. The probability is expressed as a real number between 0 and 1.

In the following examples I assume you picked 8080 for the port number, so the API is running at localhost:8080.

With curl:

curl -d 'url=http://example.com/image.jpg' localhost:8080

With Python:

import requests
r = requests.post("http://localhost:8080", data={"url": "http://example.com/image.jpg"})
nsfw_prob = float(r.text)

HTTP Errors

400 Bad Request: Missing url POST parameter

You need to specify url as a POST parameter.

404 Not Found

The requested url leads to an HTTP 404 Not Found error.

415 Unsupported Media Type: Invalid image

The requested url is not a valid image.

About

This fork allows images to be submitted without a URL in base64 format

Resources

License

BSD-3-Clause, BSD-2-Clause licenses found

Licenses found

BSD-3-Clause
LICENSE.txt
BSD-2-Clause
LICENSE-yahoo.txt

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 91.2%
  • Dockerfile 8.8%