2024-10-29 00:17:54 +03:00

28 lines
1.0 KiB
Python

import argparse
import os
from dataset.preparer import download_words
from model.trainer import train
import web.server
import model.updater
parser = argparse.ArgumentParser(prog='Antispam complex')
parser.add_argument('-i', '--init', action=argparse.BooleanOptionalAction, help='Initializing, must be run beforehand, --dataset is required')
parser.add_argument('-m', '--decision-maker', action=argparse.BooleanOptionalAction, help='Start as Decision maker')
parser.add_argument('-d', '--dataset', required=False, help='Path to CSV (ham/spam) dataset')
parser.add_argument('-u', '--model-updater', required=False, help='Start as Model updater')
args = parser.parse_args()
_port = 8080 if os.getenv('PORT') is None else os.getenv('PORT')
if __name__ == '__main__':
if args.init:
assert args.dataset is not None, "Dataset is required, show --help"
download_words()
train(args.dataset)
elif args.decision_maker:
web.server.start(port=_port)
elif args.model_updater:
model.updater.start()