Welcome to Modbot!

This moderation bot software uses scikit-learn binary classification algorithms or pytorch neural networks to learn what phrases to allow in twitch chat. Labeled training data is constructed from chat logs with human moderation information. After training the software can be connected to twitch chat to automate moderation.

https://github.com/bnb32/modbot/workflows/Documentation/badge.svg https://github.com/bnb32/modbot/workflows/Pytests/badge.svg https://github.com/bnb32/modbot/workflows/Lint%20Code%20Base/badge.svg https://codecov.io/gh/bnb32/modbot/branch/main/graph/badge.svg

Installation

Follow instructions here

Environment variables

Register bot with twitch and get Client ID and Client Secret here.

Get Oauth Token.

Update variables in config.json and __init__.py.

cd modbot/environment/
cp config.json ../../my_config.json
vim my_config.json
vim __init__.py
cd ../../

Training Model

From scratch with classified messages in csv file (with columns text, is_offensive):

modbot-train -train -infile <messages.csv> -c my_config.json

Train from scratch from chatty data:

modbot-train -infile <infile> -train -clean -c my_config.json

Retrain with additional chatty data:

modbot-train -append -infile <infile> -train -clean -c my_config.json

Running

Run bot:

modbot -c my_config.json