Spaces:
Running
Running
import os | |
import json | |
import numpy as np | |
from tokenizers import Tokenizer | |
import onnxruntime as ort | |
from huggingface_hub import hf_hub_download | |
import gradio as gr | |
class ONNXInferencePipeline: | |
def __init__(self, repo_id): | |
# Retrieve the Hugging Face token from the environment variable | |
hf_token = os.getenv("HF_TOKEN") | |
if hf_token is None: | |
raise ValueError("HF_TOKEN environment variable is not set.") | |
# Load banned keywords list | |
self.banned_keywords = self.load_banned_keywords() | |
# Download files from Hugging Face Hub using the token | |
self.onnx_path = hf_hub_download(repo_id=repo_id, filename="model.onnx", use_auth_token=hf_token) | |
self.tokenizer_path = hf_hub_download(repo_id=repo_id, filename="train_bpe_tokenizer.json", use_auth_token=hf_token) | |
self.config_path = hf_hub_download(repo_id=repo_id, filename="hyperparameters.json", use_auth_token=hf_token) | |
# Load configuration | |
with open(self.config_path) as f: | |
self.config = json.load(f) | |
# Initialize tokenizer | |
self.tokenizer = Tokenizer.from_file(self.tokenizer_path) | |
self.max_len = 256 | |
# Initialize ONNX runtime session | |
self.session = ort.InferenceSession(self.onnx_path) | |
self.providers = ['CPUExecutionProvider'] # Use CUDA if available | |
if 'CUDAExecutionProvider' in ort.get_available_providers(): | |
self.providers = ['CUDAExecutionProvider'] | |
self.session.set_providers(self.providers) | |
def load_banned_keywords(self): | |
# Load your comprehensive list of banned keywords | |
# In a production environment, this would be your full list of 500+ keywords | |
return [ | |
# Original banned keywords | |
"fuck", "shit", "bitch", "cunt", "asshole", "faggot", "nigger", "bastard", "damn", "crap", | |
"arse", "bollocks", "cock", "dick", "piss", "wanker", "whore", "slut", "motherfucker", "son of a bitch", | |
"chink", "gook", "kike", "spic", "wog", "coon", "negro", "tar baby", "bimbo", "skank", "hoe", "twat", | |
"pagal", "mad", "bloody", "blood", "tranny", "dyke", "queer", "fudge packer", "muff diver", | |
"retard", "cripple", "spaz", "mongoloid", "idiot", "rocket", "killing", "pistol", | |
"infidel", "heathen", "blasphemy", "heretic", "islam", "religion", "relegious", "ak47", | |
"kill yourself", "go to hell", "rape", "murder", "terrorist", "terror", | |
"pedo", "nazi", "devil", "shithead", "asswipe", "blast", "islamist", | |
"bomb", "poison", "stab", "shoot", "assassinate", "strangle", "torture", "harm", "injure", | |
"terrorism", "extremist", "radical", "suicide", "explosion", "grenade", "weapon", "gun", "rifle", | |
"ammunition", "bombing", "massacre", "genocide", | |
"threaten", "intimidate", "destroy", "obliterate", "exterminate", "eliminate", "annihilate", "violence", | |
"attack", "raid", "ambush", "hostage", "kidnap", | |
"war", "bloodshed", "slaughter", "brutality", "carnage", "vengeance", "revenge", "punish", "execute", | |
"decapitate", "maim", "hell", "poo", "turd", | |
"douche", "dumbass", "jerk", "prick", "scumbag", "screw", "sodomize", | |
"beaner", "camel jockey", "gypsy", "haji", "jap", "paki", "raghead", "sambo", "wetback", "yid", | |
"gold digger", "hooker", "milf", "porn", "prostitute", "sex worker", "thot", | |
"gender bender", "hermaphrodite", "ladyboy", "she-male", "sissy", | |
"blind", "deaf", "dumb", "lame", "psycho", "schizo", "stupid", "buddha fart", "jesus h christ", "pastafarian", | |
"abuse", "behead", "choke", "crucify", "dismember", "electrocute", "gaslight", | |
"hang", "lynch", "smother", "strangle", "taser", | |
"al qaeda", "isis", "taliban", "chemical weapon", "biological weapon", "nuclear bomb", "dirty bomb", | |
"suicide vest", "car bomb", "drone strike", | |
"burn", "castrate", "cutthroat", "gang bang", "gangster", "hitman", "mafia", "mob", "noose", | |
"poison gas", "sniper", "vengeful", | |
"anarchy", "apocalypse", "chaos", "doom", "evil", "hate", "insanity", "madness", "plague", "riot", | |
"slaughterhouse", "zombie", "bund", "gand", "gandu", "chod", "behenchod", "behen chod", "lora", "lund", "loda", | |
# Additional banned keywords from the new list | |
"2g1c", "2 girls 1 cup", "acrotomophilia", "alabama hot pocket", "alaskan pipeline", "anal", "anilingus", "anus", | |
"arsehole", "ass", "assmunch", "auto erotic", "autoerotic", "babeland", "baby batter", "baby juice", | |
"ball gag", "ball gravy", "ball kicking", "ball licking", "ball sack", "ball sucking", "bangbros", | |
"bareback", "barely legal", "barenaked", "bastardo", "bastinado", "bbw", "bdsm", "beaver cleaver", "beaver lips", | |
"bestiality", "bi curious", "big black", "big breasts", "big knockers", "big tits", "bimbos", "birdlock", | |
"black cock", "blonde action", "blonde on blonde action", "blowjob", "blow job", "blow your load", | |
"blue waffle", "blumpkin", "bondage", "boner", "boob", "boobs", "booty call", "brown showers", | |
"brunette action", "bukkake", "bulldyke", "bullet vibe", "bung hole", "bunghole", "busty", "butt", | |
"buttcheeks", "butthole", "camel toe", "camgirl", "camslut", "camwhore", "carpet muncher", "carpetmuncher", | |
"chocolate rosebuds", "circlejerk", "cleveland steamer", "clit", "clitoris", "clover clamps", "clusterfuck", | |
"cocks", "coprolagnia", "coprophilia", "cornhole", "creampie", "cum", "cumming", "cunnilingus", | |
"cunt", "darkie", "date rape", "daterape", "deep throat", "deepthroat", "dendrophilia", "dick", "dildo", | |
"dirty pillows", "dirty sanchez", "doggie style", "doggiestyle", "doggy style", "doggystyle", "dog style", | |
"dolcett", "domination", "dominatrix", "dommes", "donkey punch", "double dong", "double penetration", | |
"dp action", "dry hump", "dvda", "eat my ass", "ecchi", "ejaculation", "erotic", "erotism", "escort", | |
"ethical slut", "eunuch", "faggot", "fecal", "felch", "fellatio", "feltch", "female squirting", "femdom", | |
"figging", "fingerbang", "fingering", "fisting", "foot fetish", "footjob", "frotting", "fuck buttons", | |
"fudge packer", "fudgepacker", "futanari", "gay sex", "genitals", "giant cock", "girl on", "girl on top", | |
"girls gone wild", "goatcx", "goatse", "gokkun", "gold digger", "golden shower", "goo girl", "goodpoop", | |
"gook", "goregasm", "grenade", "grope", "group sex", "gun", "guro", "gypsy", "hand job", "handjob", | |
"hard core", "hardcore", "hentai", "homoerotic", "honkey", "hooker", "hostage", "hot carl", | |
"hot chick", "how to kill", "how to murder", "huge fat", "humping", "jack off", "jail bait", "jailbait", | |
"jap", "jelly donut", "jerk", "jerk off", "jesus h christ", "jigaboo", "jiggaboo", "jiggerboo", "jizz", | |
"juggs", "kidnap", "kike", "kill yourself", "killing", "kinbaku", "kinkster", "kinky", "knobbing", | |
"ladyboy", "leather restraint", "leather straight jacket", "lemon party", "lolita", "lora", "lovemaking", | |
"make me come", "male squirting", "massacre", "masturbate", "menage a trois", "milf", "mob", "motherfucker", | |
"mound of venus", "mr hands", "muff diver", "muffdiving", "murder", "nambla", "nawashi", "nazi", "negro", | |
"nigger", "nimphomania", "nipple", "noose", "nuclear bomb", "obliterate", "pagal", "paki", | |
"pastafarian", "pedo", "piss", "pistol", "plague", "poison", "poison gas", "poo", "porn", "prick", | |
"prostitute", "psycho", "punish", "queer", "radical", "raghead", "raid", "rape", "relegious", "religion", | |
"retard", "revenge", "rifle", "riot", "rocket", "sambo", "schizo", "screw", "scumbag", "sex worker", | |
"she-male", "shit", "shithead", "shoot", "sissy", "skank", "slaughter", "slaughterhouse", "slut", | |
"smother", "sniper", "sodomize", "son of a bitch", "spaz", "spic", "stab", "strangle", "stupid", | |
"suicide", "suicide vest", "taliban", "tar baby", "taser", "terror", "terrorism", "terrorist", "thot", | |
"threaten", "torture", "tranny", "turd", "twat", "vengeance", "vengeful", "violence", "wanker", | |
"war", "weapon", "wetback", "whore", "wog", "yid", "zombie", | |
# Additional variations for "stupid" | |
"stupid", "sstupid", "stupidd", "stuupid", "stuppidd", "sttupid", "stupiid", "sttuppid", | |
# Additional variations for "idiot" | |
"idiot", "idiott", "idioot", "idit", "id0t", | |
# Additional variations for "fuck" | |
"fuck", "f*ck", "f**ck", "fck", "fukk", "fucc", "f u c k", | |
# Additional variations for "shit" | |
"shit", "sh1t", "sh!t", "sht", "shiit", | |
# Additional variations for "bitch" | |
"bitch", "btch", "b1tch", "biatch", "b*tch", | |
# Additional variations for "asshole" | |
"asshole", "ashole", "asshol", "a$$hole", "a**hole", | |
# Additional variations for "dumb" | |
"dumb", "dumm", "dum", "dumbass", "dumass", | |
# Additional variations for "faggot" | |
"faggot", "fag", "fagg0t", "faaggot", | |
# Additional variations for "nigger" | |
"nigger", "nigga", "niggar", "niggah", "n*gger", | |
# Additional variations for "cunt" | |
"cunt", "c*nt", "c0nt", | |
# Additional variations for "whore" | |
"whore", "wh0re", "w*h*re", "whoore", | |
# Additional variations for "slut" | |
"slut", "sluut", "sllut", "slutty", "slu*t", | |
# Additional variations for "bastard" | |
"bastard", "basturd", "bastrd", "bastar", | |
# Additional variations for "dick" | |
"dick", "d1ck", "d!ck", "dicc", "d!k", | |
# Additional variations for "cock" | |
"cock", "c0ck", "c*ck", | |
# Additional variations for "ass" | |
"ass", "a$$", "azz", "a s s", "a$$s", "a55", | |
# Additional banned keywords from extended lists | |
"wop", "dago", "cracker", "mick", "libtard", | |
"asshat", "dickhead", "fuckhead", "fuckwit", "shithead", "dumbfuck", "jackass", | |
"assclown", "dickwad", "scumbucket", "prickface", "cocknose", "pissflap", | |
"cocksucker", "cum dumpster", "cum guzzler", "cum slut", "suck my dick", "suck my cock", | |
"pussy-whipped", "whorebag", "snowflake", "chav", "Karen", "fascist", "chod", "fukr", "idiott", | |
# New keywords from the additional list | |
"16+", "18+", "a$$", "alcohol", "amerifag", | |
"assault", "b!tch", "bstard", "burn yourself", "c!nt", "christfucker", "cnt", "cocaine", | |
"cracker", "creep", "cut yourself", "d!ck", "die in a hole", "die now", "dipshit", "drink bleach", | |
"drop dead", "dumbfuck", "dyke", "explosion", "fag", "fck", "fuck off", "fucker", "fucking idiot", | |
"fuk", "genocide", "get drunk", "go hang yourself", "gook", "gypsy", "handjob", "heroin", | |
"ho", "hymie", "i will ban you", "i will bomb the place", "i will fuck you", "i will kill you", | |
"jew", "jewboy", "kike", "kill", "kill yourself", "loser", "marijuana", "massacre", "meth", | |
"molest", "moslemfucker", "murder", "naked", "obongo", "orgy", "overdose", "p0rn", "penis", | |
"perv", "pervert", "rape", "rape you", "rat poison", "retard", "s3x", "sandnigger", | |
"screw you", "scumbag", "secks", "self-harm", "sex offender", "sexual predator", "sx", | |
"take pills", "terrorist", "tits", "tranny", "twat", "vag", "vagina", "vodka", "x", "xxx", | |
"you will get raped", "you're a piece of shit", "you're banned forever", "you're crazy", | |
"you're hallucinating", "you're such a cunt", "you're worthless", | |
# New Sexually Explicit keywords and variations | |
"p0rn", "nu|)e", "nud3", "5ex", "$ex", "s3x", "hardc0re", "h@rdcore", "hardcor3", "#ardcore", | |
"har|)core", "hard(ore", "h4rdcore", "adu1t", "adul7", "adu|t", "@dult", "adult", "4dult", | |
"a|)ult", "erot1c", "erot|c", "erot!c", "ero7ic", "eroti(", "er0tic", "3rotic", "str!p", | |
"s7rip", "str1p", "$trip", "strip", "str|p", "5trip", "c@mgirl", "camg|rl", "camg1rl", | |
"(amgirl", "cam9irl", "c4mgirl", "camgir1", "camgir|", "camg!rl", "feti$h", "fet1sh", "feti5h", | |
"fetis#", "f3tish", "fe7ish", "fetish", "fet!sh", "fet|sh", | |
"orgy", "or9y", "0rgy", "3scort", "escor7", "e$cort", "es(ort", "esc0rt", "e5cort", "escort", | |
"#ookup", "h00kup", "hookup", "8dsm", "bd5m", "bd$m", "bdsm", "b|)sm", "masturbat3", "m@sturb@te", | |
"ma$turbate", "m4sturb4te", "ma5turbate", "mas7urba7e", "mastur8ate", | |
"inc3st", "|ncest", "in(est", "ince$t", "ince5t", "!ncest", "inces7", "1ncest", | |
"ta8oo", "tab00", "t@boo", "taboo", "t4boo", "7aboo", | |
"blowjob", "bl0wj0b", "8lowjo8", "b|owjob", "b1owjob", "cumsh0t", "cums#ot", "cum5hot", | |
"cumshot", "cum$hot", "(umshot", "cumsho7", "deepthr0at", "deept#roat", "d33pthroat", | |
"deepthro@t", "deepthro4t", "|)eepthroat", "deep7hroa7", | |
# New Sexual Harassment keywords and variations | |
"perv", "p3rv", "(reep", "creep", "cr33p", "mo1est", "molest", "mole$t", "m0lest", | |
"mo|est", "mol3st", "moles7", "mole5t", "gr0pe", "9rope", "grop3", "grope", "h@r@ss", | |
"harass", "hara55", "h4r4ss", "#arass", "hara$$", "c4tc4ll", "ca7call", "catca11", | |
"catca||", "c@tc@ll", "(at(all", "catcall", "pre|)ator", "pred4tor", "pred@tor", "preda7or", | |
"pr3dator", "predat0r", "predator", "sta1ker", "st@lker", "stalk3r", "$talker", "st4lker", | |
"s7alker", "5talker", "stalker", "sta|ker", "m1sogyn1st", "misogynis7", "misogynist", | |
"m|sogyn|st", "m!sogyn!st", "mi$ogyni$t", "miso9ynist", "mis0gynist", "mi5ogyni5t", | |
"exp0se", "expose", "3xpos3", "expo$e", "expo5e", | |
# New Dangerous Content keywords and variations | |
"b0mb", "8om8", "k!ll", "k1ll", "ki||", "ki11", "k|ll", "kill", "atta(k", "a77ack", | |
"@tt@ck", "4tt4ck", "terr0r", "t3rror", "7error", "shoo7", "sh00t", "$hoot", "5hoot", | |
"s#oot", "$tab", "st4b", "st@b", "5tab", "sta8", "s7ab", "exp|osive", "expl0sive", | |
"explosive", "3xplosiv3", "explos!ve", "explos1ve", "explo5ive", "explos|ve", "explo$ive", | |
"exp1osive", "assass|nate", "assassinat3", "assass!nate", "assass1nate", "a55a55inate", | |
"assassina7e", "assassinate", "@ss@ssin@te", "4ss4ssin4te", "a$$a$$inate", "massacr3", | |
"massa(re", "ma$$acre", "m4ss4cre", "m@ss@cre", "ma55acre", "massacre", "$uicide", | |
"suicide", "su1c1de", "suicid3", "su|c|de", "sui(ide", "suici|)e", "5uicide", "su!c!de", | |
"#omicide", "hom!c!de", "hom|c|de", "homicid3", "homicide", "h0micide", "homi(ide", | |
"homici|)e", "hom1c1de", "7or7ure", "torture", "tortur3", "t0rture", "ra|)ical", "r4dic4l", | |
"rad1cal", "radica1", "radica|", "rad!cal", "rad|cal", "radical", "radi(al", "r@dic@l", | |
"beheadin9", "8eheading", "behea|)ing", "b3h3ading", "behead|ng", "beheading", "behead!ng", | |
"be#eading", "behe4ding", "behe@ding", "behead1ng", "extrem|st", "extrem!st", "3xtr3mist", | |
"extremi$t", "ex7remis7", "extremist", "extrem1st", "extremi5t", "r|ot", "r1ot", "rio7", | |
"r!ot", "ri0t", "traff|ck|ng", "tr@fficking", "traff!ck!ng", "traff1ck1ng", "7rafficking", | |
"tr4fficking", "traffi(king", "trafficking", "traffickin9", "k|dnap", "ki|)nap", "kidn@p", | |
"kidn4p", "k!dnap", "k1dnap", "arson", "ar5on", "ar$on", "4rson", "ars0n", | |
# New Harmful Content keywords and variations | |
"s3lf-harm", "se|f-harm", "self-h4rm", "self-h@rm", "5elf-harm", "self-#arm", "$elf-harm", | |
"se1f-harm", "self-harm", "cutting", "cuttin9", "cutt!ng", "(utting", "cutt1ng", "cu77ing", | |
"cutt|ng", "burn1ng", "burnin9", "burn!ng", "8urning", "burn|ng", "burning", | |
"pa!n", "p4in", "p@in", "pain", "pa1n", "pa|n", "s7arva7ion", "5tarvation", | |
"st4rv4tion", "starvat1on", "starvat!on", "starvation", "starvat|on", "starvati0n", | |
"$tarvation", "st@rv@tion", "overdose", "0verd0se", "ov3rdos3", "over|)ose", "overdo5e", | |
"overdo$e", "|)epresse|)", "d3pr3ss3d", "depre55ed", "depressed", "depre$$ed", "d|e", | |
"die", "d!e", "di3", "|)ie", "d1e", "jump", "hang", "#ang", "h4ng", "han9", "h@ng", | |
"poison", "po!son", "p0is0n", "poi5on", "poi$on", "po1son", "po|son", "(hloroform", "chloroform", | |
"ch|oroform", "ch1oroform", "c#loroform", "chl0r0f0rm", "drug abu5e", "dru9 abuse", "drug abuse", | |
"|)rug abuse", "drug abu$e", "drug 4buse", "drug abus3", "drug @buse", "drug a8use", "@ddict", | |
"4ddict", "add!ct", "addict", "a|)|)ict", "addic7", "add1ct", "add|ct", "addi(t", "opioid", | |
"0pi0id", "op1o1d", "op|o|d", "opioi|)", "op!o!d", "fentanyl", "f3ntanyl", "fentany|", | |
"fen7anyl", "fent@nyl", "fent4nyl", "fentany1", "meth", "met#", "m3th", "me7h", "coca1ne", | |
"cocain3", "cocaine", "coc4ine", "(o(aine", "coc@ine", "coca!ne", "coca|ne", "c0caine", | |
"h3roin", "her0in", "heroin", "#eroin", "hero|n", "hero!n", "hero1n", | |
# New Hate Speech keywords and variations | |
"n@zi", "naz1", "naz!", "nazi", "na2i", "naz|", "n4zi", "kkk", "suprema(y", "$upremacy", | |
"suprem4cy", "suprem@cy", "supr3macy", "5upremacy", "supremacy", "gen0cide", "genoc1de", | |
"genoci|)e", "genocide", "genoc|de", "geno(ide", "9enocide", "g3nocid3", "genoc!de", "big0t", | |
"bigot", "b|got", "bi9ot", "bigo7", "b!got", "8igot", "b1got", "#omop#obe", "homophobe", | |
"homophob3", "homopho8e", "h0m0ph0be", "xenophobe", "xenopho8e", "xenop#obe", "x3nophob3", | |
"xen0ph0be", "antifa", "bootlicker", "tankie", "baiter", "griefer", "kek", "pepe", "zoomer", | |
# New Slang Abuses & Offensive Insults | |
"bit(h", "8itch", "b|tch", "b1tch", "bi7ch", "bastar|", "b@st@rd", "ba5tard", "bas7ard", | |
"ba$tard", "b4st4rd", "8astard", "assho1e", "assho|e", "a$$hole", "ass#ole", "asshol3", "4sshole", | |
"a55hole", "assh0le", "pr1ck", "pr|ck", "pr!ck", "prick", "|)umbass", "dumba55", "dumb4ss", | |
"dumba$$", "dum8ass", "dumb@ss", "retar|", "r3tard", "re7ard", "ret@rd", "ret4rd", "|)ipshit", | |
"d|psh|t", "dipshi7", "dip5hit", "dips#it", "d!psh!t", "dipshit", "dip$hit", "d1psh1t", | |
"j@ck@ss", "wank3r", "w@nker", "w4nker", "tw4t", "tw@t", "7wa7", "shi7head", "shithe@d", | |
"shith3ad", "5hithead", "s#it#ead", "sh!thead", "sh1thead", "shithea|", "shithe4d", "$hithead", | |
# New General Abuses | |
"|d|ot", "idi0t", "1d1ot", "idio7", "idiot", "i|)iot", "!d!ot", "m0r0n", "moron", "lo5er", | |
"|oser", "1oser", "loser", "l0ser", "los3r", "5cum", "s(um", "$cum", "worthl3ss", "wort#less", | |
"worth|ess", "worthle$$", "wor7hless", "worthless", "worthle55", "worth1ess", "w0rthless", | |
# New additional keywords from your latest list | |
"16+", "18+", "alcohol", "amerifag", "assault", "b!tch", "bstard", "burn yourself", "c!nt", | |
"christfucker", "cnt", "cocaine", "creep", "cut yourself", "die in a hole", "die now", "dipshit", | |
"drink bleach", "drop dead", "dumbfuck", "fuck off", "fucker", "fucking idiot", "genocide", | |
"get drunk", "go hang yourself", "gook", "hymie", "i will ban you", "i will bomb the place", | |
"i will fuck you", "i will kill you", "jew", "jewboy", "kike", "kill", "kill yourself", | |
"loser", "marijuana", "massacre", "meth", "molest", "moslemfucker", "murder", "naked", "obongo", | |
"overdose", "penis", "perv", "pervert", "rape you", "rat poison", "s3x", "sandnigger", | |
"screw you", "secks", "self-harm", "sex offender", "sexual predator", "sx", "take pills", | |
"terrorist", "tits", "tranny", "twat", "vag", "vagina", "vodka", "x", "xxx", | |
"you will get raped", "you're a piece of shit", "you're banned forever", "you're crazy", | |
"you're hallucinating", "you're such a cunt", "you're worthless", | |
# New Sexually Explicit keywords and variations | |
"p0rn", "nu|)e", "nud3", "5ex", "$ex", "s3x", "hardc0re", "h@rdcore", "hardcor3", "#ardcore", | |
"har|)core", "hard(ore", "h4rdcore", "adu1t", "adul7", "adu|t", "@dult", "adult", "4dult", | |
"a|)ult", "erot1c", "erot|c", "erot!c", "ero7ic", "eroti(", "er0tic", "3rotic", "str!p", | |
"s7rip", "str1p", "$trip", "strip", "str|p", "5trip", "c@mgirl", "camg|rl", "camg1rl", | |
"(amgirl", "cam9irl", "c4mgirl", "camgir1", "camgir|", "camg!rl", "feti$h", "fet1sh", "feti5h", | |
"fetis#", "f3tish", "fe7ish", "fetish", "fet!sh", "fet|sh", | |
# New Sexual Harassment keywords and variations | |
"perv", "p3rv", "(reep", "creep", "cr33p", "mo1est", "molest", "mole$t", "m0lest", | |
"mo|est", "mol3st", "moles7", "mole5t", "gr0pe", "9rope", "grop3", "grope", "h@r@ss", | |
"harass", "hara55", "h4r4ss", "#arass", "hara$$", "c4tc4ll", "ca7call", "catca11", | |
"catca||", "c@tc@ll", "(at(all", "catcall", "pre|)ator", "pred4tor", "pred@tor", "preda7or", | |
"pr3dator", "predat0r", "predator", "sta1ker", "st@lker", "stalk3r", "$talker", "st4lker", | |
"s7alker", "5talker", "stalker", "sta|ker", "m1sogyn1st", "misogynis7", "misogynist", "m|sogyn|st", | |
"m!sogyn!st", "mi$ogyni$t", "miso9ynist", "mis0gynist", "mi5ogyni5t", | |
"exp0se", "expose", "3xpos3", "expo$e", "expo5e", | |
# New Dangerous Content keywords and variations | |
"b0mb", "8om8", "k!ll", "k1ll", "ki||", "ki11", "k|ll", "kill", "atta(k", "a77ack", | |
"@tt@ck", "4tt4ck", "terr0r", "t3rror", "7error", "shoo7", "sh00t", "$hoot", "5hoot", | |
"s#oot", "$tab", "st4b", "st@b", "5tab", "sta8", "s7ab", "exp|osive", "expl0sive", | |
"explosive", "3xplosiv3", "explos!ve", "explos1ve", "explo5ive", "explos|ve", "explo$ive", | |
"exp1osive", "assass|nate", "assassinat3", "assass!nate", "assass1nate", "a55a55inate", | |
"assassina7e", "assassinate", "@ss@ssin@te", "4ss4ssin4te", "a$$a$$inate", "massacr3", | |
"massa(re", "ma$$acre", "m4ss4cre", "m@ss@cre", "ma55acre", "massacre", "$uicide", "suicide", | |
"su1c1de", "suicid3", "su|c|de", "sui(ide", "suici|)e", "5uicide", "su!c!de", "#omicide", | |
"hom!c!de", "hom|c|de", "homicid3", "homicide", "h0micide", "homi(ide", "homici|)e", "hom1c1de", | |
"7or7ure", "torture", "tortur3", "t0rture", "ra|)ical", "r4dic4l", "rad1cal", "radica1", | |
"radica|", "rad!cal", "rad|cal", "radical", "radi(al", "r@dic@l", "beheadin9", | |
"8eheading", "behea|)ing", "b3h3ading", "behead|ng", "beheading", "behead!ng", | |
"be#eading", "behe4ding", "behe@ding", "behead1ng", "extrem|st", "extrem!st", "3xtr3mist", | |
"extremi$t", "ex7remis7", "extremist", "extrem1st", "extremi5t", "r|ot", "r1ot", "rio7", | |
"r!ot", "ri0t", "traff|ck|ng", "tr@fficking", "traff!ck!ng", "traff1ck1ng", "7rafficking", | |
"tr4fficking", "traffi(king", "trafficking", "traffickin9", "k|dnap", "ki|)nap", "kidn@p", | |
"kidn4p", "k!dnap", "k1dnap", "arson", "ar5on", "ar$on", "4rson", "ars0n", | |
# New Harmful Content keywords and variations | |
"s3lf-harm", "se|f-harm", "self-h4rm", "self-h@rm", "5elf-harm", "self-#arm", "$elf-harm", | |
"se1f-harm", "self-harm", "cutting", "cuttin9", "cutt!ng", "(utting", "cutt1ng", "cu77ing", | |
"cutt|ng", "burn1ng", "burnin9", "burn!ng", "8urning", "burn|ng", "burning", | |
"pa!n", "p4in", "p@in", "pain", "pa1n", "pa|n", "s7arva7ion", "5tarvation", | |
"st4rv4tion", "starvat1on", "starvat!on", "starvation", "starvat|on", "starvati0n", | |
"$tarvation", "st@rv@tion", "overdose", "0verd0se", "ov3rdos3", "over|)ose", "overdo5e", | |
"overdo$e", "|)epresse|)", "d3pr3ss3d", "depre55ed", "depressed", "depre$$ed", "d|e", | |
"die", "d!e", "di3", "|)ie", "d1e", "jump", "hang", "#ang", "h4ng", "han9", "h@ng", | |
"poison", "po!son", "p0is0n", "poi5on", "poi$on", "po1son", "po|son", "(hloroform", "chloroform", | |
"ch|oroform", "ch1oroform", "c#loroform", "chl0r0f0rm", "drug abu5e", "dru9 abuse", "drug abuse", | |
"|)rug abuse", "drug abu$e", "drug 4buse", "drug abus3", "drug @buse", "drug a8use", "@ddict", | |
"4ddict", "add!ct", "addict", "a|)|)ict", "addic7", "add1ct", "add|ct", "addi(t", "opioid", | |
"0pi0id", "op1o1d", "op|o|d", "opioi|)", "op!o!d", "fentanyl", "f3ntanyl", "fentany|", | |
"fen7anyl", "fent@nyl", "fent4nyl", "fentany1", "meth", "met#", "m3th", "me7h", "coca1ne", | |
"cocain3", "cocaine", "coc4ine", "(o(aine", "coc@ine", "coca!ne", "coca|ne", "c0caine", | |
"h3roin", "her0in", "heroin", "#eroin", "hero|n", "hero!n", "hero1n", | |
# New Hate Speech keywords and variations | |
"n@zi", "naz1", "naz!", "nazi", "na2i", "naz|", "n4zi", "kkk", "suprema(y", "$upremacy", | |
"suprem4cy", "suprem@cy", "supr3macy", "5upremacy", "supremacy", "gen0cide", "genoc1de", | |
"genoci|)e", "genocide", "genoc|de", "geno(ide", "9enocide", "g3nocid3", "genoc!de", "big0t", | |
"bigot", "b|got", "bi9ot", "bigo7", "b!got", "8igot", "b1got", "#omop#obe", "homophobe", | |
"homophob3", "homopho8e", "h0m0ph0be", "xenophobe", "xenopho8e", "xenop#obe", "x3nophob3", | |
"xen0ph0be", "antifa", "bootlicker", "tankie", "baiter", "griefer", "kek", "pepe", "zoomer", | |
# New Slang Abuses & Offensive Insults | |
"bit(h", "8itch", "b|tch", "b1tch", "bi7ch", "bastar|", "b@st@rd", "ba5tard", "bas7ard", | |
"ba$tard", "b4st4rd", "8astard", "assho1e", "assho|e", "a$$hole", "ass#ole", "asshol3", "4sshole", | |
"a55hole", "assh0le", "pr1ck", "pr|ck", "pr!ck", "prick", "|)umbass", "dumba55", "dumb4ss", | |
"dumba$$", "dum8ass", "dumb@ss", "retar|", "r3tard", "re7ard", "ret@rd", "ret4rd", "|)ipshit", | |
"d|psh|t", "dipshi7", "dip5hit", "dips#it", "d!psh!t", "dipshit", "dip$hit", "d1psh1t", | |
"j@ck@ss", "wank3r", "w@nker", "w4nker", "tw4t", "tw@t", "7wa7", "shi7head", "shithe@d", | |
"shith3ad", "5hithead", "s#it#ead", "sh!thead", "sh1thead", "shithea|", "shithe4d", "$hithead", | |
# New General Abuses | |
"|d|ot", "idi0t", "1d1ot", "idio7", "idiot", "i|)iot", "!d!ot", "m0r0n", "moron", "lo5er", | |
"|oser", "1oser", "loser", "l0ser", "los3r", "5cum", "s(um", "$cum", "worthl3ss", "wort#less", | |
"worth|ess", "worthle$$", "wor7hless", "worthless", "worthle55", "worth1ess", "w0rthless", | |
# Additional new keywords from the latest list | |
"16+", "18+", "alcohol", "amerifag", "assault", "b!tch", "bstard", "burn yourself", "c!nt", | |
"christfucker", "cnt", "cocaine", "creep", "cut yourself", "die in a hole", "die now", "dipshit", | |
"drink bleach", "drop dead", "dumbfuck", "fuck off", "fucker", "fucking idiot", "fuk", "get drunk", | |
"go hang yourself", "hymie", "i will ban you", "i will bomb the place", "i will fuck you", | |
"i will kill you", "jew", "jewboy", "moslemfucker", "marijuana", "meth", "molest", "naked", | |
"obongo", "overdose", "perv", "pervert", "rape you", "rat poison", "screw you", "secks", | |
"self-harm", "sex offender", "sexual predator", "sx", "take pills", "terrorist", "tits", "twat", | |
"vag", "vodka", "x", "you will get raped", "you're a piece of shit", "you're banned forever", | |
"you're crazy", "you're hallucinating", "you're such a cunt", "you're worthless", | |
# New Sexually Explicit keywords and variations (second block) | |
"p0rn", "nu|)e", "nud3", "5ex", "$ex", "s3x", "xxx", "hardc0re", "h@rdcore", "hardcor3", "#ardcore", | |
"har|)core", "hard(ore", "h4rdcore", "adu1t", "adul7", "adu|t", "@dult", "adult", "4dult", | |
"a|)ult", "erot1c", "erot|c", "erot!c", "ero7ic", "eroti(", "er0tic", "3rotic", "str!p", | |
"s7rip", "str1p", "$trip", "strip", "str|p", "5trip", "c@mgirl", "camg|rl", "camg1rl", | |
"(amgirl", "cam9irl", "c4mgirl", "camgir1", "camgir|", "camg!rl", "feti$h", "fet1sh", "feti5h", | |
"fetis#", "f3tish", "fe7ish", "fetish", "fet!sh", "fet|sh", | |
# New Sexual Harassment keywords and variations (second block) | |
"perv", "p3rv", "(reep", "creep", "cr33p", "mo1est", "molest", "mole$t", "m0lest", | |
"mo|est", "mol3st", "moles7", "mole5t", "gr0pe", "9rope", "grop3", "grope", "h@r@ss", | |
"harass", "hara55", "h4r4ss", "#arass", "hara$$", "c4tc4ll", "ca7call", "catca11", "catca||", | |
"c@tc@ll", "(at(all", "catcall", "pre|)ator", "pred4tor", "pred@tor", "preda7or", "pr3dator", | |
"predat0r", "predator", "sta1ker", "st@lker", "stalk3r", "$talker", "st4lker", "s7alker", | |
"5talker", "stalker", "sta|ker", "m1sogyn1st", "misogynis7", "misogynist", "m|sogyn|st", | |
"m!sogyn!st", "mi$ogyni$t", "miso9ynist", "mis0gynist", "mi5ogyni5t", "exp0se", "expose", | |
"3xpos3", "expo$e", "expo5e", | |
# New Dangerous Content keywords and variations (second block) | |
"b0mb", "8om8", "k!ll", "k1ll", "ki||", "ki11", "k|ll", "kill", "atta(k", "a77ack", | |
"@tt@ck", "4tt4ck", "terr0r", "t3rror", "7error", "shoo7", "sh00t", "$hoot", "5hoot", | |
"s#oot", "$tab", "st4b", "st@b", "5tab", "sta8", "s7ab", "exp|osive", "expl0sive", | |
"explosive", "3xplosiv3", "explos!ve", "explos1ve", "explo5ive", "explos|ve", "explo$ive", | |
"exp1osive", "assass|nate", "assassinat3", "assass!nate", "assass1nate", "a55a55inate", | |
"assassina7e", "assassinate", "@ss@ssin@te", "4ss4ssin4te", "a$$a$$inate", "massacr3", "massa(re", | |
"ma$$acre", "m4ss4cre", "m@ss@cre", "ma55acre", "massacre", "$uicide", "suicide", "su1c1de", | |
"suicid3", "su|c|de", "sui(ide", "suici|)e", "5uicide", "su!c!de", "#omicide", "hom!c!de", | |
"hom|c|de", "homicid3", "homicide", "h0micide", "homi(ide", "homici|)e", "hom1c1de", "7or7ure", | |
"torture", "tortur3", "t0rture", "ra|)ical", "r4dic4l", "rad1cal", "radica1", "radica|", | |
"rad!cal", "rad|cal", "radical", "radi(al", "r@dic@l", "beheadin9", "8eheading", | |
"behea|)ing", "b3h3ading", "behead|ng", "beheading", "behead!ng", "be#eading", "behe4ding", | |
"behe@ding", "behead1ng", "extrem|st", "extrem!st", "3xtr3mist", "extremi$t", "ex7remis7", | |
"extremist", "extrem1st", "extremi5t", "r|ot", "r1ot", "rio7", "r!ot", "ri0t", "traff|ck|ng", | |
"tr@fficking", "traff!ck!ng", "traff1ck1ng", "7rafficking", "tr4fficking", "traffi(king", | |
"trafficking", "traffickin9", "k|dnap", "ki|)nap", "kidn@p", "kidn4p", "k!dnap", "k1dnap", | |
"arson", "ar5on", "ar$on", "4rson", "ars0n", | |
# New Harmful Content keywords and variations (second block) | |
"s3lf-harm", "se|f-harm", "self-h4rm", "self-h@rm", "5elf-harm", "self-#arm", "$elf-harm", | |
"se1f-harm", "self-harm", "cutting", "cuttin9", "cutt!ng", "(utting", "cutt1ng", "cu77ing", | |
"cutt|ng", "burn1ng", "burnin9", "burn!ng", "8urning", "burn|ng", "burning", "pa!n", | |
"p4in", "p@in", "pain", "pa1n", "pa|n", "s7arva7ion", "5tarvation", "st4rv4tion", "starvat1on", | |
"starvat!on", "starvation", "starvat|on", "starvati0n", "$tarvation", "st@rv@tion", "overdose", | |
"0verd0se", "ov3rdos3", "over|)ose", "overdo5e", "overdo$e", "|)epresse|)", "d3pr3ss3d", | |
"depre55ed", "depressed", "depre$$ed", "d|e", "die", "d!e", "di3", "|)ie", "d1e", "jump", | |
"hang", "#ang", "h4ng", "han9", "h@ng", "poison", "po!son", "p0is0n", "poi5on", "poi$on", | |
"po1son", "po|son", "(hloroform", "chloroform", "ch|oroform", "ch1oroform", "c#loroform", | |
"chl0r0f0rm", "drug abu5e", "dru9 abuse", "drug abuse", "|)rug abuse", "drug abu$e", "drug 4buse", | |
"drug abus3", "drug @buse", "drug a8use", "@ddict", "4ddict", "add!ct", "addict", "a|)|)ict", | |
"addic7", "add1ct", "add|ct", "addi(t", "opioid", "0pi0id", "op1o1d", "op|o|d", "opioi|)", | |
"op!o!d", "fentanyl", "f3ntanyl", "fentany|", "fen7anyl", "fent@nyl", "fent4nyl", "fentany1", | |
"meth", "met#", "m3th", "me7h", "coca1ne", "cocain3", "cocaine", "coc4ine", "(o(aine", | |
"coc@ine", "coca!ne", "coca|ne", "c0caine", "h3roin", "her0in", "heroin", "#eroin", "hero|n", | |
"hero!n", "hero1n", | |
# New Hate Speech keywords and variations (second block) | |
"n@zi", "naz1", "naz!", "nazi", "na2i", "naz|", "n4zi", "kkk", "suprema(y", "$upremacy", | |
"suprem4cy", "suprem@cy", "supr3macy", "5upremacy", "supremacy", "gen0cide", "genoc1de", | |
"genoci|)e", "genocide", "genoc|de", "geno(ide", "9enocide", "g3nocid3", "genoc!de", | |
"big0t", "bigot", "b|got", "bi9ot", "bigo7", "b!got", "8igot", "b1got", "#omop#obe", "homophobe", | |
"homophob3", "homopho8e", "h0m0ph0be", "xenophobe", "xenopho8e", "xenop#obe", "x3nophob3", | |
"xen0ph0be", "antifa", "bootlicker", "tankie", "baiter", "griefer", "kek", "pepe", "zoomer", | |
# New Slang Abuses & Offensive Insults (second block) | |
"bit(h", "8itch", "b|tch", "b1tch", "bi7ch", "bastar|", "b@st@rd", "ba5tard", "bas7ard", | |
"ba$tard", "b4st4rd", "8astard", "assho1e", "assho|e", "a$$hole", "ass#ole", "asshol3", | |
"4sshole", "a55hole", "assh0le", "pr1ck", "pr|ck", "pr!ck", "prick", "|)umbass", "dumba55", | |
"dumb4ss", "dumba$$", "dum8ass", "dumb@ss", "retar|", "r3tard", "re7ard", "ret@rd", "ret4rd", | |
"|)ipshit", "d|psh|t", "dipshi7", "dip5hit", "dips#it", "d!psh!t", "dipshit", "dip$hit", | |
"d1psh1t", "j@ck@ss", "wank3r", "w@nker", "w4nker", "tw4t", "tw@t", "7wa7", "shi7head", | |
"shithe@d", "shith3ad", "5hithead", "s#it#ead", "sh!thead", "sh1thead", "shithea|", "shithe4d", | |
"$hithead", | |
# New General Abuses (second block) | |
"|d|ot", "idi0t", "1d1ot", "idio7", "idiot", "i|)iot", "!d!ot", "m0r0n", "moron", "lo5er", | |
"|oser", "1oser", "loser", "l0ser", "los3r", "5cum", "s(um", "$cum", "worthl3ss", "wort#less", | |
"worth|ess", "worthle$$", "wor7hless", "worthless", "worthle55", "worth1ess", "w0rthless", | |
# Additional new keywords from the latest list | |
"16+", "18+", "alcohol", "amerifag", "assault", "b!tch", "bstard", "burn yourself", "c!nt", | |
"christfucker", "cnt", "cocaine", "creep", "cut yourself", "die in a hole", "die now", "dipshit", | |
"drink bleach", "drop dead", "dumbfuck", "fuck off", "fucker", "fucking idiot", "fuk", "get drunk", | |
"go hang yourself", "hymie", "i will ban you", "i will bomb the place", "i will fuck you", | |
"i will kill you", "jew", "jewboy", "moslemfucker", "marijuana", "massacre", "meth", "molest", | |
"naked", "obongo", "overdose", "penis", "perv", "pervert", "rape you", "rat poison", "s3x", | |
"sandnigger", "screw you", "secks", "self-harm", "sex offender", "sexual predator", "sx", | |
"take pills", "terrorist", "tits", "tranny", "twat", "vag", "vagina", "vodka", "x", "xxx", | |
"you will get raped", "you're a piece of shit", "you're banned forever", "you're crazy", | |
"you're hallucinating", "you're such a cunt", "you're worthless", | |
# New Sexually Explicit keywords and variations (second block) | |
"p0rn", "nu|)e", "nud3", "5ex", "$ex", "s3x", "xxx", "hardc0re", "h@rdcore", "hardcor3", "#ardcore", | |
"har|)core", "hard(ore", "h4rdcore", "adu1t", "adul7", "adu|t", "@dult", "adult", "4dult", | |
"a|)ult", "erot1c", "erot|c", "erot!c", "ero7ic", "eroti(", "er0tic", "3rotic", "str!p", | |
"s7rip", "str1p", "$trip", "strip", "str|p", "5trip", "c@mgirl", "camg|rl", "camg1rl", | |
"(amgirl", "cam9irl", "c4mgirl", "camgir1", "camgir|", "camg!rl", "feti$h", "fet1sh", "feti5h", | |
"fetis#", "f3tish", "fe7ish", "fetish", "fet!sh", "fet|sh", | |
# New Sexual Harassment keywords and variations (second block) | |
"perv", "p3rv", "(reep", "creep", "cr33p", "mo1est", "molest", "mole$t", "m0lest", | |
"mo|est", "mol3st", "moles7", "mole5t", "gr0pe", "9rope", "grop3", "grope", "h@r@ss", | |
"harass", "hara55", "h4r4ss", "#arass", "hara$$", "c4tc4ll", "ca7call", "catca11", "catca||", | |
"c@tc@ll", "(at(all", "catcall", "pre|)ator", "pred4tor", "pred@tor", "preda7or", "pr3dator", | |
"predat0r", "predator", "sta1ker", "st@lker", "stalk3r", "$talker", "st4lker", "s7alker", | |
"5talker", "stalker", "sta|ker", "m1sogyn1st", "misogynis7", "misogynist", "m|sogyn|st", | |
"m!sogyn!st", "mi$ogyni$t", "miso9ynist", "mis0gynist", "mi5ogyni5t", "exp0se", "expose", | |
"3xpos3", "expo$e", "expo5e", | |
# New Dangerous Content keywords and variations (second block) | |
"b0mb", "8om8", "k!ll", "k1ll", "ki||", "ki11", "k|ll", "kill", "atta(k", "a77ack", | |
"@tt@ck", "4tt4ck", "terr0r", "t3rror", "7error", "shoo7", "sh00t", "$hoot", "5hoot", | |
"s#oot", "$tab", "st4b", "st@b", "5tab", "sta8", "s7ab", "exp|osive", "expl0sive", | |
"explosive", "3xplosiv3", "explos!ve", "explos1ve", "explo5ive", "explos|ve", "explo$ive", | |
"exp1osive", "assass|nate", "assassinat3", "assass!nate", "assass1nate", "a55a55inate", | |
"assassina7e", "assassinate", "@ss@ssin@te", "4ss4ssin4te", "a$$a$$inate", "massacr3", "massa(re", | |
"ma$$acre", "m4ss4cre", "m@ss@cre", "ma55acre", "massacre", "$uicide", "suicide", "su1c1de", | |
"suicid3", "su|c|de", "sui(ide", "suici|)e", "5uicide", "su!c!de", "#omicide", "hom!c!de", | |
"hom|c|de", "homicid3", "homicide", "h0micide", "homi(ide", "homici|)e", "hom1c1de", "7or7ure", | |
"torture", "tortur3", "t0rture", "ra|)ical", "r4dic4l", "rad1cal", "radica1", "radica|", | |
"rad!cal", "rad|cal", "radical", "radi(al", "r@dic@l", "beheadin9", "8eheading", | |
"behea|)ing", "b3h3ading", "behead|ng", "beheading", "behead!ng", "be#eading", "behe4ding", | |
"behe@ding", "behead1ng", "extrem|st", "extrem!st", "3xtr3mist", "extremi$t", "ex7remis7", | |
"extremist", "extrem1st", "extremi5t", "r|ot", "r1ot", "rio7", "r!ot", "ri0t", "traff|ck|ng", | |
"tr@fficking", "traff!ck!ng", "traff1ck1ng", "7rafficking", "tr4fficking", "traffi(king", | |
"trafficking", "traffickin9", "k|dnap", "ki|)nap", "kidn@p", "kidn4p", "k!dnap", "k1dnap", | |
"arson", "ar5on", "ar$on", "4rson", "ars0n", | |
# New Harmful Content keywords and variations (second block) | |
"s3lf-harm", "se|f-harm", "self-h4rm", "self-h@rm", "5elf-harm", "self-#arm", "$elf-harm", | |
"se1f-harm", "self-harm", "cutting", "cuttin9", "cutt!ng", "(utting", "cutt1ng", "cu77ing", | |
"cutt|ng", "burn1ng", "burnin9", "burn!ng", "8urning", "burn|ng", "burning", "pa!n", | |
"p4in", "p@in", "pain", "pa1n", "pa|n", "s7arva7ion", "5tarvation", "st4rv4tion", "starvat1on", | |
"starvat!on", "starvation", "starvat|on", "starvati0n", "$tarvation", "st@rv@tion", "overdose", | |
"0verd0se", "ov3rdos3", "over|)ose", "overdo5e", "overdo$e", "|)epresse|)", "d3pr3ss3d", | |
"depre55ed", "depressed", "depre$$ed", "d|e", "die", "d!e", "di3", "|)ie", "d1e", "jump", | |
"hang", "#ang", "h4ng", "han9", "h@ng", "poison", "po!son", "p0is0n", "poi5on", "poi$on", | |
"po1son", "po|son", "(hloroform", "chloroform", "ch|oroform", "ch1oroform", "c#loroform", | |
"chl0r0f0rm", "drug abu5e", "dru9 abuse", "drug abuse", "|)rug abuse", "drug abu$e", "drug 4buse", | |
"drug abus3", "drug @buse", "drug a8use", "@ddict", "4ddict", "add!ct", "addict", "a|)|)ict", | |
"addic7", "add1ct", "add|ct", "addi(t", "opioid", "0pi0id", "op1o1d", "op|o|d", "opioi|)", | |
"op!o!d", "fentanyl", "f3ntanyl", "fentany|", "fen7anyl", "fent@nyl", "fent4nyl", "fentany1", | |
"meth", "met#", "m3th", "me7h", "coca1ne", "cocain3", "cocaine", "coc4ine", "(o(aine", | |
"coc@ine", "coca!ne", "coca|ne", "c0caine", "h3roin", "her0in", "heroin", "#eroin", "hero|n", | |
"hero!n", "hero1n", | |
# New Hate Speech keywords and variations (second block) | |
"n@zi", "naz1", "naz!", "nazi", "na2i", "naz|", "n4zi", "kkk", "suprema(y", "$upremacy", | |
"suprem4cy", "suprem@cy", "supr3macy", "5upremacy", "supremacy", "gen0cide", "genoc1de", | |
"genoci|)e", "genocide", "genoc|de", "geno(ide", "9enocide", "g3nocid3", "genoc!de", "big0t", | |
"bigot", "b|got", "bi9ot", "bigo7", "b!got", "8igot", "b1got", "#omop#obe", "homophobe", | |
"homophob3", "homopho8e", "h0m0ph0be", "xenophobe", "xenopho8e", "xenop#obe", "x3nophob3", | |
"xen0ph0be", "antifa", "bootlicker", "tankie", "baiter", "griefer", "kek", "pepe", "zoomer", | |
# New Slang Abuses & Offensive Insults (second block) | |
"bit(h", "8itch", "b|tch", "b1tch", "bi7ch", "bastar|", "b@st@rd", "ba5tard", "bas7ard", | |
"ba$tard", "b4st4rd", "8astard", "assho1e", "assho|e", "a$$hole", "ass#ole", "asshol3", "4sshole", | |
"a55hole", "assh0le", "pr1ck", "pr|ck", "pr!ck", "prick", "|)umbass", "dumba55", "dumb4ss", | |
"dumba$$", "dum8ass", "dumb@ss", "retar|", "r3tard", "re7ard", "ret@rd", "ret4rd", "|)ipshit", | |
"d|psh|t", "dipshi7", "dip5hit", "dips#it", "d!psh!t", "dipshit", "dip$hit", "d1psh1t", "j@ck@ss", | |
"wank3r", "w@nker", "w4nker", "tw4t", "tw@t", "7wa7", "shi7head", "shithe@d", "shith3ad", | |
"5hithead", "s#it#ead", "sh!thead", "sh1thead", "shithea|", "shithe4d", "$hithead", | |
# New General Abuses (second block) | |
"|d|ot", "idi0t", "1d1ot", "idio7", "idiot", "i|)iot", "!d!ot", "m0r0n", "moron", "lo5er", | |
"|oser", "1oser", "loser", "l0ser", "los3r", "5cum", "s(um", "$cum", "worthl3ss", "wort#less", | |
"worth|ess", "worthle$$", "wor7hless", "worthless", "worthle55", "worth1ess", "w0rthless", | |
# Additional new keywords from the latest list | |
"16+", "18+", "alcohol", "amerifag", "assault", "b!tch", "bstard", "burn yourself", "c!nt", | |
"christfucker", "cnt", "cocaine", "creep", "cut yourself", "die in a hole", "die now", "dipshit", | |
"drink bleach", "drop dead", "dumbfuck", "fuck off", "fucker", "fucking idiot", "fuk", "get drunk", | |
"go hang yourself", "hymie", "i will ban you", "i will bomb the place", "i will fuck you", | |
"i will kill you", "jew", "jewboy", "moslemfucker", "marijuana", "massacre", "meth", "molest", | |
"naked", "obongo", "overdose", "penis", "perv", "pervert", "rape you", "rat poison", "s3x", | |
"sandnigger", "screw you", "secks", "self-harm", "sex offender", "sexual predator", "sx", | |
"take pills", "terrorist", "tits", "tranny", "twat", "vag", "vagina", "vodka", "x", "xxx", | |
"you will get raped", "you're a piece of shit", "you're banned forever", "you're crazy", | |
"you're hallucinating", "you're such a cunt", "you're worthless", | |
# New Sexually Explicit keywords and variations (second block) | |
"p0rn", "nu|)e", "nud3", "5ex", "$ex", "s3x", "xxx", "hardc0re", "h@rdcore", "hardcor3", "#ardcore", | |
"har|)core", "hard(ore", "h4rdcore", "adu1t", "adul7", "adu|t", "@dult", "adult", "4dult", | |
"a|)ult", "erot1c", "erot|c", "erot!c", "ero7ic", "eroti(", "er0tic", "3rotic", "str!p", | |
"s7rip", "str1p", "$trip", "strip", "str|p", "5trip", "c@mgirl", "camg|rl", "camg1rl", | |
"(amgirl", "cam9irl", "c4mgirl", "camgir1", "camgir|", "camg!rl", "feti$h", "fet1sh", "feti5h", | |
"fetis#", "f3tish", "fe7ish", "fetish", "fet!sh", "fet|sh", | |
# New Sexual Harassment keywords and variations (second block) | |
"perv", "p3rv", "(reep", "creep", "cr33p", "mo1est", "molest", "mole$t", "m0lest", | |
"mo|est", "mol3st", "moles7", "mole5t", "gr0pe", "9rope", "grop3", "grope", "h@r@ss", | |
"harass", "hara55", "h4r4ss", "#arass", "hara$$", "c4tc4ll", "ca7call", "catca11", "catca||", | |
"c@tc@ll", "(at(all", "catcall", "pre|)ator", "pred4tor", "pred@tor", "preda7or", "pr3dator", | |
"predat0r", "predator", "sta1ker", "st@lker", "stalk3r", "$talker", "st4lker", "s7alker", | |
"5talker", "stalker", "sta|ker", "m1sogyn1st", "misogynis7", "misogynist", "m|sogyn|st", | |
"m!sogyn!st", "mi$ogyni$t", "miso9ynist", "mis0gynist", "mi5ogyni5t", "exp0se", "expose", | |
"3xpos3", "expo$e", "expo5e", | |
# New Dangerous Content keywords and variations (second block) | |
"b0mb", "8om8", "k!ll", "k1ll", "ki||", "ki11", "k|ll", "kill", "atta(k", "a77ack", | |
"@tt@ck", "4tt4ck", "terr0r", "t3rror", "7error", "shoo7", "sh00t", "$hoot", "5hoot", | |
"s#oot", "$tab", "st4b", "st@b", "5tab", "sta8", "s7ab", "exp|osive", "expl0sive", | |
"explosive", "3xplosiv3", "explos!ve", "explos1ve", "explo5ive", "explos|ve", "explo$ive", | |
"exp1osive", "assass|nate", "assassinat3", "assass!nate", "assass1nate", "a55a55inate", | |
"assassina7e", "assassinate", "@ss@ssin@te", "4ss4ssin4te", "a$$a$$inate", "massacr3", "massa(re", | |
"ma$$acre", "m4ss4cre", "m@ss@cre", "ma55acre", "massacre", "$uicide", "suicide", "su1c1de", | |
"suicid3", "su|c|de", "sui(ide", "suici|)e", "5uicide", "su!c!de", "#omicide", "hom!c!de", | |
"hom|c|de", "homicid3", "homicide", "h0micide", "homi(ide", "homici|)e", "hom1c1de", "7or7ure", | |
"torture", "tortur3", "t0rture", "ra|)ical", "r4dic4l", "rad1cal", "radica1", "radica|", | |
"rad!cal", "rad|cal", "radical", "radi(al", "r@dic@l", "beheadin9", "8eheading", | |
"behea|)ing", "b3h3ading", "behead|ng", "beheading", "behead!ng", "be#eading", "behe4ding", | |
"behe@ding", "behead1ng", "extrem|st", "extrem!st", "3xtr3mist", "extremi$t", "ex7remis7", | |
"extremist", "extrem1st", "extremi5t", "r|ot", "r1ot", "rio7", "r!ot", "ri0t", "traff|ck|ng", | |
"tr@fficking", "traff!ck!ng", "traff1ck1ng", "7rafficking", "tr4fficking", "traffi(king", | |
"trafficking", "traffickin9", "k|dnap", "ki|)nap", "kidn@p", "kidn4p", "k!dnap", "k1dnap", | |
"arson", "ar5on", "ar$on", "4rson", "ars0n", | |
# New Harmful Content keywords and variations (third block) | |
"s3lf-harm", "se|f-harm", "self-h4rm", "self-h@rm", "5elf-harm", "self-#arm", "$elf-harm", | |
"se1f-harm", "self-harm", "cutting", "cuttin9", "cutt!ng", "(utting", "cutt1ng", "cu77ing", | |
"cutt|ng", "burn1ng", "burnin9", "burn!ng", "8urning", "burn|ng", "burning", "pa!n", | |
"p4in", "p@in", "pain", "pa1n", "pa|n", "s7arva7ion", "5tarvation", "st4rv4tion", "starvat1on", | |
"starvat!on", "starvation", "starvat|on", "starvati0n", "$tarvation", "st@rv@tion", "overdose", | |
"0verd0se", "ov3rdos3", "over|)ose", "overdo5e", "overdo$e", "|)epresse|)", "d3pr3ss3d", | |
"depre55ed", "depressed", "depre$$ed", "d|e", "die", "d!e", "di3", "|)ie", "d1e", "jump", | |
"hang", "#ang", "h4ng", "han9", "h@ng", "poison", "po!son", "p0is0n", "poi5on", "poi$on", | |
"po1son", "po|son", "(hloroform", "chloroform", "ch|oroform", "ch1oroform", "c#loroform", | |
"chl0r0f0rm", "drug abu5e", "dru9 abuse", "drug abuse", "|)rug abuse", "drug abu$e", "drug 4buse", | |
"drug abus3", "drug @buse", "drug a8use", "@ddict", "4ddict", "add!ct", "addict", "a|)|)ict", | |
"addic7", "add1ct", "add|ct", "addi(t", "opioid", "0pi0id", "op1o1d", "op|o|d", "opioi|)", | |
"op!o!d", "fentanyl", "f3ntanyl", "fentany|", "fen7anyl", "fent@nyl", "fent4nyl", "fentany1", | |
"meth", "met#", "m3th", "me7h", "coca1ne", "cocain3", "cocaine", "coc4ine", "(o(aine", | |
"coc@ine", "coca!ne", "coca|ne", "c0caine", "h3roin", "her0in", "heroin", "#eroin", "hero|n", | |
"hero!n", "hero1n", | |
# New Hate Speech keywords and variations (third block) | |
"n@zi", "naz1", "naz!", "nazi", "na2i", "naz|", "n4zi", "kkk", "suprema(y", "$upremacy", | |
"suprem4cy", "suprem@cy", "supr3macy", "5upremacy", "supremacy", "gen0cide", "genoc1de", | |
"genoci|)e", "genocide", "genoc|de", "geno(ide", "9enocide", "g3nocid3", "genoc!de", "big0t", | |
"bigot", "b|got", "bi9ot", "bigo7", "b!got", "8igot", "b1got", "#omop#obe", "homophobe", | |
"homophob3", "homopho8e", "h0m0ph0be", "xenophobe", "xenopho8e", "xenop#obe", "x3nophob3", | |
"xen0ph0be", "antifa", "bootlicker", "tankie", "baiter", "griefer", "kek", "pepe", "zoomer", | |
# New Slang Abuses & Offensive Insults (third block) | |
"bit(h", "8itch", "b|tch", "b1tch", "bi7ch", "bastar|", "b@st@rd", "ba5tard", "bas7ard", | |
"ba$tard", "b4st4rd", "8astard", "assho1e", "assho|e", "a$$hole", "ass#ole", "asshol3", "4sshole", | |
"a55hole", "assh0le", "pr1ck", "pr|ck", "pr!ck", "prick", "|)umbass", "dumba55", "dumb4ss", | |
"dumba$$", "dum8ass", "dumb@ss", "retar|", "r3tard", "re7ard", "ret@rd", "ret4rd", "|)ipshit", | |
"d|psh|t", "dipshi7", "dip5hit", "dips#it", "d!psh!t", "dipshit", "dip$hit", "d1psh1t", "j@ck@ss", | |
"wank3r", "w@nker", "w4nker", "tw4t", "tw@t", "7wa7", "shi7head", "shithe@d", "shith3ad", | |
"5hithead", "s#it#ead", "sh!thead", "sh1thead", "shithea|", "shithe4d", "$hithead", | |
# New General Abuses (third block) | |
"|d|ot", "idi0t", "1d1ot", "idio7", "idiot", "i|)iot", "!d!ot", "m0r0n", "moron", "lo5er", | |
"|oser", "1oser", "loser", "l0ser", "los3r", "5cum", "s(um", "$cum", "worthl3ss", "wort#less", | |
"worth|ess", "worthle$$", "wor7hless", "worthless", "worthle55", "worth1ess", "w0rthless", | |
# Additional new keywords from the latest list (General Abusive Language) | |
"16+", "18+", "alcohol", "amerifag", "assault", "b!tch", "bstard", "burn yourself", "c!nt", | |
"christfucker", "cnt", "cocaine", "creep", "cut yourself", "die in a hole", "die now", "dipshit", | |
"drink bleach", "drop dead", "dumbfuck", "fuck off", "fucker", "fucking idiot", "fuk", "get drunk", | |
"go hang yourself", "hymie", "i will ban you", "i will bomb the place", "i will fuck you", | |
"i will kill you", "jew", "jewboy", "moslemfucker", "marijuana", "massacre", "meth", "molest", | |
"naked", "obongo", "overdose", "penis", "perv", "pervert", "rape you", "rat poison", "s3x", | |
"sandnigger", "screw you", "secks", "self-harm", "sex offender", "sexual predator", "sx", | |
"take pills", "terrorist", "tits", "tranny", "twat", "vag", "vagina", "vodka", "x", "xxx", | |
"you will get raped", "you're a piece of shit", "you're banned forever", "you're crazy", | |
"you're hallucinating", "you're such a cunt", "you're worthless", | |
# New Sexually Explicit keywords and variations (third block) | |
"p0rn", "nu|)e", "nud3", "5ex", "$ex", "s3x", "xxx", "hardc0re", "h@rdcore", "hardcor3", "#ardcore", | |
"har|)core", "hard(ore", "h4rdcore", "adu1t", "adul7", "adu|t", "@dult", "adult", "4dult", | |
"a|)ult", "erot1c", "erot|c", "erot!c", "ero7ic", "eroti(", "er0tic", "3rotic", "str!p", | |
"s7rip", "str1p", "$trip", "strip", "str|p", "5trip", "c@mgirl", "camg|rl", "camg1rl", | |
"(amgirl", "cam9irl", "c4mgirl", "camgir1", "camgir|", "camg!rl", "feti$h", "fet1sh", "feti5h", | |
"fetis#", "f3tish", "fe7ish", "fetish", "fet!sh", "fet|sh", | |
# New Sexual Harassment keywords and variations (third block) | |
"perv", "p3rv", "(reep", "creep", "cr33p", "mo1est", "molest", "mole$t", "m0lest", | |
"mo|est", "mol3st", "moles7", "mole5t", "gr0pe", "9rope", "grop3", "grope", "h@r@ss", | |
"harass", "hara55", "h4r4ss", "#arass", "hara$$", "c4tc4ll", "ca7call", "catca11", "catca||", | |
"c@tc@ll", "(at(all", "catcall", "pre|)ator", "pred4tor", "pred@tor", "preda7or", "pr3dator", | |
"predat0r", "predator", "sta1ker", "st@lker", "stalk3r", "$talker", "st4lker", "s7alker", | |
"5talker", "stalker", "sta|ker", "m1sogyn1st", "misogynis7", "misogynist", "m|sogyn|st", | |
"m!sogyn!st", "mi$ogyni$t", "miso9ynist", "mis0gynist", "mi5ogyni5t", "exp0se", "expose", | |
"3xpos3", "expo$e", "expo5e", | |
# New Dangerous Content keywords and variations (third block) | |
"b0mb", "8om8", "k!ll", "k1ll", "ki||", "ki11", "k|ll", "kill", "atta(k", "a77ack", | |
"@tt@ck", "4tt4ck", "terr0r", "t3rror", "7error", "shoo7", "sh00t", "$hoot", "5hoot", | |
"s#oot", "$tab", "st4b", "st@b", "5tab", "sta8", "s7ab", "exp|osive", "expl0sive", | |
"explosive", "3xplosiv3", "explos!ve", "explos1ve", "explo5ive", "explos|ve", "explo$ive", | |
"exp1osive", "assass|nate", "assassinat3", "assass!nate", "assass1nate", "a55a55inate", | |
"assassina7e", "assassinate", "@ss@ssin@te", "4ss4ssin4te", "a$$a$$inate", "massacr3", "massa(re", | |
"ma$$acre", "m4ss4cre", "m@ss@cre", "ma55acre", "massacre", "$uicide", "suicide", "su1c1de", | |
"suicid3", "su|c|de", "sui(ide", "suici|)e", "5uicide", "su!c!de", "#omicide", "hom!c!de", | |
"hom|c|de", "homicid3", "homicide", "h0micide", "homi(ide", "homici|)e", "hom1c1de", "7or7ure", | |
"torture", "tortur3", "t0rture", "ra|)ical", "r4dic4l", "rad1cal", "radica1", "radica|", | |
"rad!cal", "rad|cal", "radical", "radi(al", "r@dic@l", "beheadin9", "8eheading", | |
"behea|)ing", "b3h3ading", "behead|ng", "beheading", "behead!ng", "be#eading", "behe4ding", | |
"behe@ding", "behead1ng", "extrem|st", "extrem!st", "3xtr3mist", "extremi$t", "ex7remis7", | |
"extremist", "extrem1st", "extremi5t", "r|ot", "r1ot", "rio7", "r!ot", "ri0t", "traff|ck|ng", | |
"tr@fficking", "traff!ck!ng", "traff1ck1ng", "7rafficking", "tr4fficking", "traffi(king", | |
"trafficking", "traffickin9", "k|dnap", "ki|)nap", "kidn@p", "kidn4p", "k!dnap", "k1dnap", | |
"arson", "ar5on", "ar$on", "4rson", "ars0n", | |
# New Harmful Content keywords and variations (fourth block) | |
"s3lf-harm", "se|f-harm", "self-h4rm", "self-h@rm", "5elf-harm", "self-#arm", "$elf-harm", | |
"se1f-harm", "self-harm", "cutting", "cuttin9", "cutt!ng", "(utting", "cutt1ng", "cu77ing", | |
"cutt|ng", "burn1ng", "burnin9", "burn!ng", "8urning", "burn|ng", "burning", "pa!n", | |
"p4in", "p@in", "pain", "pa1n", "pa|n", "s7arva7ion", "5starvation", "st4rv4tion", "starvat1on", | |
"starvat!on", "starvation", "starvat|on", "starvati0n", "$tarvation", "st@rv@tion", "overdose", | |
"0verd0se", "ov3rdos3", "over|)ose", "overdo5e", "overdo$e", "|)epresse|)", "d3pr3ss3d", | |
"depre55ed", "depressed", "depre$$ed", "d|e", "die", "d!e", "di3", "|)ie", "d1e", "jump", | |
"hang", "#ang", "h4ng", "han9", "h@ng", "poison", "po!son", "p0is0n", "poi5on", "poi$on", | |
"po1son", "po|son", "(hloroform", "chloroform", "ch|oroform", "ch1oroform", "c#loroform", | |
"chl0r0f0rm", "drug abu5e", "dru9 abuse", "drug abuse", "|)rug abuse", "drug abu$e", "drug 4buse", | |
"drug abus3", "drug @buse", "drug a8use", "@ddict", "4ddict", "add!ct", "addict", "a|)|)ict", | |
"addic7", "add1ct", "add|ct", "addi(t", "opioid", "0pi0id", "op1o1d", "op|o|d", "opioi|)", | |
"op!o!d", "fentanyl", "f3ntanyl", "fentany|", "fen7anyl", "fent@nyl", "fent4nyl", "fentany1", | |
"meth", "met#", "m3th", "me7h", "coca1ne", "cocain3", "cocaine", "coc4ine", "(o(aine", | |
"coc@ine", "coca!ne", "coca|ne", "c0caine", "h3roin", "her0in", "heroin", "#eroin", "hero|n", | |
"hero!n", "hero1n", | |
# New Hate Speech keywords and variations (fourth block) | |
"n@zi", "naz1", "naz!", "nazi", "na2i", "naz|", "n4zi", "kkk", "suprema(y", "$upremacy", | |
"suprem4cy", "suprem@cy", "supr3macy", "5upremacy", "supremacy", "gen0cide", "genoc1de", | |
"genoci|)e", "genocide", "genoc|de", "geno(ide", "9enocide", "g3nocid3", "genoc!de", "big0t", | |
"bigot", "b|got", "bi9ot", "bigo7", "b!got", "8igot", "b1got", "#omop#obe", "homophobe", | |
"homophob3", "homopho8e", "h0m0ph0be", "xenophobe", "xenopho8e", "xenop#obe", "x3nophob3", | |
"xen0ph0be", "antifa", "bootlicker", "tankie", "baiter", "griefer", "kek", "pepe", "zoomer", | |
# New Slang Abuses & Offensive Insults (fourth block) | |
"bit(h", "8itch", "b|tch", "b1tch", "bi7ch", "bastar|", "b@st@rd", "ba5tard", "bas7ard", | |
"ba$tard", "b4st4rd", "8astard", "assho1e", "assho|e", "a$$hole", "ass#ole", "asshol3", "4sshole", | |
"a55hole", "assh0le", "pr1ck", "pr|ck", "pr!ck", "prick", "|)umbass", "dumba55", "dumb4ss", | |
"dumba$$", "dum8ass", "dumb@ss", "retar|", "r3tard", "re7ard", "ret@rd", "ret4rd", "|)ipshit", | |
"d|psh|t", "dipshi7", "dip5hit", "dips#it", "d!psh!t", "dipshit", "dip$hit", "d1psh1t", "j@ck@ss", | |
"wank3r", "w@nker", "w4nker", "tw4t", "tw@t", "7wa7", "shi7head", "shithe@d", "shith3ad", | |
"5hithead", "s#it#ead", "sh!thead", "sh1thead", "shithea|", "shithe4d", "$hithead", | |
# New General Abuses (fourth block) | |
"|d|ot", "idi0t", "1d1ot", "idio7", "idiot", "i|)iot", "!d!ot", "m0r0n", "moron", "lo5er", | |
"|oser", "1oser", "loser", "l0ser", "los3r", "5cum", "s(um", "$cum", "worthl3ss", "wort#less", | |
"worth|ess", "worthle$$", "wor7hless", "worthless", "worthle55", "worth1ess", "w0rthless", | |
# Additional new keywords from the latest list (General Abusive Language) | |
"16+", "18+", "alcohol", "amerifag", "assault", "b!tch", "bstard", "burn yourself", "c!nt", | |
"christfucker", "cnt", "cocaine", "creep", "cut yourself", "die in a hole", "die now", "dipshit", | |
"drink bleach", "drop dead", "dumbfuck", "fuck off", "fucker", "fucking idiot", "fuk", "get drunk", | |
"go hang yourself", "hymie", "i will ban you", "i will bomb the place", "i will fuck you", | |
"i will kill you", "jew", "jewboy", "moslemfucker", "marijuana", "massacre", "meth", "molest", | |
"naked", "obongo", "overdose", "penis", "perv", "pervert", "rape you", "rat poison", "s3x", | |
"sandnigger", "screw you", "secks", "self-harm", "sex offender", "sexual predator", "sx", | |
"take pills", "terrorist", "tits", "tranny", "twat", "vag", "vagina", "vodka", "x", "xxx", | |
"you will get raped", "you're a piece of shit", "you're banned forever", "you're crazy", | |
"you're hallucinating", "you're such a cunt", "you're worthless", | |
# New Sexually Explicit keywords and variations (fourth block) | |
"p0rn", "nu|)e", "nud3", "5ex", "$ex", "s3x", "xxx", "hardc0re", "h@rdcore", "hardcor3", "#ardcore", | |
"har|)core", "hard(ore", "h4rdcore", "adu1t", "adul7", "adu|t", "@dult", "adult", "4dult", | |
"a|)ult", "erot1c", "erot|c", "erot!c", "ero7ic", "eroti(", "er0tic", "3rotic", "str!p", | |
"s7rip", "str1p", "$trip", "strip", "str|p", "5trip", "c@mgirl", "camg|rl", "camg1rl", | |
"(amgirl", "cam9irl", "c4mgirl", "camgir1", "camgir|", "camg!rl", "feti$h", "fet1sh", "feti5h", | |
"fetis#", "f3tish", "fe7ish", "fetish", "fet!sh", "fet|sh", | |
# New Sexual Harassment keywords and variations (fourth block) | |
"perv", "p3rv", "(reep", "creep", "cr33p", "mo1est", "molest", "mole$t", "m0lest", | |
"mo|est", "mol3st", "moles7", "mole5t", "gr0pe", "9rope", "grop3", "grope", "h@r@ss", | |
"harass", "hara55", "h4r4ss", "#arass", "hara$$", "c4tc4ll", "ca7call", "catca11", "catca||", | |
"c@tc@ll", "(at(all", "catcall", "pre|)ator", "pred4tor", "pred@tor", "preda7or", "pr3dator", | |
"predat0r", "predator", "sta1ker", "st@lker", "stalk3r", "$talker", "st4lker", "s7alker", | |
"5talker", "stalker", "sta|ker", "m1sogyn1st", "misogynis7", "misogynist", "m|sogyn|st", | |
"m!sogyn!st", "mi$ogyni$t", "miso9ynist", "mis0gynist", "mi5ogyni5t", "exp0se", "expose", | |
"3xpos3", "expo$e", "expo5e", | |
# New Dangerous Content keywords and variations (fourth block) | |
"b0mb", "8om8", "k!ll", "k1ll", "ki||", "ki11", "k|ll", "kill", "atta(k", "a77ack", | |
"@tt@ck", "4tt4ck", "terr0r", "t3rror", "7error", "shoo7", "sh00t", "$hoot", "5hoot", | |
"s#oot", "$tab", "st4b", "st@b", "5tab", "sta8", "s7ab", "exp|osive", "expl0sive", | |
"explosive", "3xplosiv3", "explos!ve", "explos1ve", "explo5ive", "explos|ve", "explo$ive", | |
"exp1osive", "assass|nate", "assassinat3", "assass!nate", "assass1nate", "a55a55inate", | |
"assassina7e", "assassinate", "@ss@ssin@te", "4ss4ssin4te", "a$$a$$inate", "massacr3", "massa(re", | |
"ma$$acre", "m4ss4cre", "m@ss@cre", "ma55acre", "massacre", "$uicide", "suicide", "su1c1de", | |
"suicid3", "su|c|de", "sui(ide", "suici|)e", "5uicide", "su!c!de", "#omicide", "hom!c!de", | |
"hom|c|de", "homicid3", "homicide", "h0micide", "homi(ide", "homici|)e", "hom1c1de", "7or7ure", | |
"torture", "tortur3", "t0rture", "ra|)ical", "r4dic4l", "rad1cal", "radica1", "radica|", | |
"rad!cal", "rad|cal", "radical", "radi(al", "r@dic@l", "beheadin9", "8eheading", | |
"behea|)ing", "b3h3ading", "behead|ng", "beheading", "behead!ng", "be#eading", "behe4ding", | |
"behe@ding", "behead1ng", "extrem|st", "extrem!st", "3xtr3mist", "extremi$t", "ex7remis7", | |
"extremist", "extrem1st", "extremi5t", "r|ot", "r1ot", "rio7", "r!ot", "ri0t", "traff|ck|ng", | |
"tr@fficking", "traff!ck!ng", "traff1ck1ng", "7rafficking", "tr4fficking", "traffi(king", | |
"trafficking", "traffickin9", "k|dnap", "ki|)nap", "kidn@p", "kidn4p", "k!dnap", "k1dnap", | |
"arson", "ar5on", "ar$on", "4rson", "ars0n", | |
# New Harmful Content keywords and variations (fifth block) | |
"s3lf-harm", "se|f-harm", "self-h4rm", "self-h@rm", "5elf-harm", "self-#arm", "$elf-harm", | |
"se1f-harm", "self-harm", "cutting", "cuttin9", "cutt!ng", "(utting", "cutt1ng", "cu77ing", | |
"cutt|ng", "burn1ng", "burnin9", "burn!ng", "8urning", "burn|ng", "burning", "pa!n", | |
"p4in", "p@in", "pain", "pa1n", "pa|n", "s7arva7ion", "5starvation", "st4rv4tion", "starvat1on", | |
"starvat!on", "starvation", "starvat|on", "starvati0n", "$tarvation", "st@rv@tion", "overdose", | |
"0verd0se", "ov3rdos3", "over|)ose", "overdo5e", "overdo$e", "|)epresse|)", "d3pr3ss3d", | |
"depre55ed", "depressed", "depre$$ed", "d|e", "die", "d!e", "di3", "|)ie", "d1e", "jump", | |
"hang", "#ang", "h4ng", "han9", "h@ng", "poison", "po!son", "p0is0n", "poi5on", "poi$on", | |
"po1son", "po|son", "(hloroform", "chloroform", "ch|oroform", "ch1oroform", "c#loroform", | |
"chl0r0f0rm", "drug abu5e", "dru9 abuse", "drug abuse", "|)rug abuse", "drug abu$e", "drug 4buse", | |
"drug abus3", "drug @buse", "drug a8use", "@ddict", "4ddict", "add!ct", "addict", "a|)|)ict", | |
"addic7", "add1ct", "add|ct", "addi(t", "opioid", "0pi0id", "op1o1d", "op|o|d", "opioi|)", | |
"op!o!d", "fentanyl", "f3ntanyl", "fentany|", "fen7anyl", "fent@nyl", "fent4nyl", "fentany1", | |
"meth", "met#", "m3th", "me7h", "coca1ne", "cocain3", "cocaine", "coc4ine", "(o(aine", | |
"coc@ine", "coca!ne", "coca|ne", "c0caine", "h3roin", "her0in", "heroin", "#eroin", "hero|n", | |
"hero!n", "hero1n", | |
# New Hate Speech keywords and variations (fifth block) | |
"n@zi", "naz1", "naz!", "nazi", "na2i", "naz|", "n4zi", "kkk", "suprema(y", "$upremacy", | |
"suprem4cy", "suprem@cy", "supr3macy", "5upremacy", "supremacy", "gen0cide", "genoc1de", | |
"genoci|)e", "genocide", "genoc|de", "geno(ide", "9enocide", "g3nocid3", "genoc!de", "big0t", | |
"bigot", "b|got", "bi9ot", "bigo7", "b!got", "8igot", "b1got", "#omop#obe", "homophobe", | |
"homophob3", "homopho8e", "h0m0ph0be", "xenophobe", "xenopho8e", "xenop#obe", "x3nophob3", | |
"xen0ph0be", "antifa", "bootlicker", "tankie", "baiter", "griefer", "kek", "pepe", "zoomer", | |
# New Slang Abuses & Offensive Insults (fifth block) | |
"bit(h", "8itch", "b|tch", "b1tch", "bi7ch", "bastar|", "b@st@rd", "ba5tard", "bas7ard", | |
"ba$tard", "b4st4rd", "8astard", "assho1e", "assho|e", "a$$hole", "ass#ole", "asshol3", "4sshole", | |
"a55hole", "assh0le", "pr1ck", "pr|ck", "pr!ck", "prick", "|)umbass", "dumba55", "dumb4ss", | |
"dumba$$", "dum8ass", "dumb@ss", "retar|", "r3tard", "re7ard", "ret@rd", "ret4rd", "|)ipshit", | |
"d|psh|t", "dipshi7", "dip5hit", "dips#it", "d!psh!t", "dipshit", "dip$hit", "d1psh1t", "j@ck@ss", | |
"wank3r", "w@nker", "w4nker", "tw4t", "tw@t", "7wa7", "shi7head", "shithe@d", "shith3ad", | |
"5hithead", "s#it#ead", "sh!thead", "sh1thead", "shithea|", "shithe4d", "$hithead", | |
# New General Abuses (fifth block) | |
"|d|ot", "idi0t", "1d1ot", "idio7", "idiot", "i|)iot", "!d!ot", "m0r0n", "moron", "lo5er", | |
"|oser", "1oser", "loser", "l0ser", "los3r", "5cum", "s(um", "$cum", "worthl3ss", "wort#less", | |
"worth|ess", "worthle$$", "wor7hless", "worthless", "worthle55", "worth1ess", "w0rthless", | |
# Additional new keywords from the latest list (General Abusive Language) | |
"16+", "18+", "alcohol", "amerifag", "assault", "b!tch", "bstard", "burn yourself", "c!nt", | |
"christfucker", "cnt", "cocaine", "creep", "cut yourself", "die in a hole", "die now", "dipshit", | |
"drink bleach", "drop dead", "dumbfuck", "fuck off", "fucker", "fucking idiot", "fuk", "get drunk", | |
"go hang yourself", "hymie", "i will ban you", "i will bomb the place", "i will fuck you", | |
"i will kill you", "jew", "jewboy", "moslemfucker", "marijuana", "massacre", "meth", "molest", | |
"naked", "obongo", "overdose", "penis", "perv", "pervert", "rape you", "rat poison", "s3x", | |
"sandnigger", "screw you", "secks", "self-harm", "sex offender", "sexual predator", "sx", | |
"take pills", "terrorist", "tits", "tranny", "twat", "vag", "vagina", "vodka", "x", "xxx", | |
"you will get raped", "you're a piece of shit", "you're banned forever", "you're crazy", | |
"you're hallucinating", "you're such a cunt", "you're worthless", | |
# New Sexually Explicit keywords and variations (fifth block) | |
"p0rn", "nu|)e", "nud3", "5ex", "$ex", "s3x", "xxx", "hardc0re", "h@rdcore", "hardcor3", "#ardcore", | |
"har|)core", "hard(ore", "h4rdcore", "adu1t", "adul7", "adu|t", "@dult", "adult", "4dult", | |
"a|)ult", "erot1c", "erot|c", "erot!c", "ero7ic", "eroti(", "er0tic", "3rotic", "str!p", | |
"s7rip", "str1p", "$trip", "strip", "str|p", "5trip", "c@mgirl", "camg|rl", "camg1rl", | |
"(amgirl", "cam9irl", "c4mgirl", "camgir1", "camgir|", "camg!rl", "feti$h", "fet1sh", "feti5h", | |
"fetis#", "f3tish", "fe7ish", "fetish", "fet!sh", "fet|sh", | |
# New Sexual Harassment keywords and variations (fifth block) | |
"perv", "p3rv", "(reep", "creep", "cr33p", "mo1est", "molest", "mole$t", "m0lest", | |
"mo|est", "mol3st", "moles7", "mole5t", "gr0pe", "9rope", "grop3", "grope", "h@r@ss", | |
"harass", "hara55", "h4r4ss", "#arass", "hara$$", "c4tc4ll", "ca7call", "catca11", "catca||", | |
"c@tc@ll", "(at(all", "catcall", "pre|)ator", "pred4tor", "pred@tor", "preda7or", "pr3dator", | |
"predat0r", "predator", "sta1ker", "st@lker", "stalk3r", "$talker", "st4lker", "s7alker", | |
"5talker", "stalker", "sta|ker", "m1sogyn1st", "misogynis7", "misogynist", "m|sogyn|st", | |
"m!sogyn!st", "mi$ogyni$t", "miso9ynist", "mis0gynist", "mi5ogyni5t", "exp0se", "expose", | |
"3xpos3", "expo$e", "expo5e", | |
# New Dangerous Content keywords and variations (fifth block) | |
"b0mb", "8om8", "k!ll", "k1ll", "ki||", "ki11", "k|ll", "kill", "atta(k", "a77ack", | |
"@tt@ck", "4tt4ck", "terr0r", "t3rror", "7error", "shoo7", "sh00t", "$hoot", "5hoot", | |
"s#oot", "$tab", "st4b", "st@b", "5tab", "sta8", "s7ab", "exp|osive", "expl0sive", | |
"explosive", "3xplosiv3", "explos!ve", "explos1ve", "explo5ive", "explos|ve", "explo$ive", | |
"exp1osive", "assass|nate", "assassinat3", "assass!nate", "assass1nate", "a55a55inate", | |
"assassina7e", "assassinate", "@ss@ssin@te", "4ss4ssin4te", "a$$a$$inate", "massacr3", "massa(re", | |
"ma$$acre", "m4ss4cre", "m@ss@cre", "ma55acre", "massacre", "$uicide", "suicide", "su1c1de", | |
"suicid3", "su|c|de", "sui(ide", "suici|)e", "5uicide", "su!c!de", "#omicide", "hom!c!de", | |
"hom|c|de", "homicid3", "homicide", "h0micide", "homi(ide", "homici|)e", "hom1c1de", "7or7ure", | |
"torture", "tortur3", "t0rture", "ra|)ical", "r4dic4l", "rad1cal", "radica1", "radica|", | |
"rad!cal", "rad|cal", "radical", "radi(al", "r@dic@l", "beheadin9", "8eheading", | |
"behea|)ing", "b3h3ading", "behead|ng", "beheading", "behead!ng", "be#eading", "behe4ding", | |
"behe@ding", "behead1ng", "extrem|st", "extrem!st", "3xtr3mist", "extremi$t", "ex7remis7", | |
"extremist", "extrem1st", "extremi5t", "r|ot", "r1ot", "rio7", "r!ot", "ri0t", "traff|ck|ng", | |
"tr@fficking", "traff!ck!ng", "traff1ck1ng", "7rafficking", "tr4fficking", "traffi(king", | |
"trafficking", "traffickin9", "k|dnap", "ki|)nap", "kidn@p", "kidn4p", "k!dnap", "k1dnap", | |
"arson", "ar5on", "ar$on", "4rson", "ars0n", | |
# New Harmful Content keywords and variations (sixth block) | |
"s3lf-harm", "se|f-harm", "self-h4rm", "self-h@rm", "5elf-harm", "self-#arm", "$elf-harm", | |
"se1f-harm", "self-harm", "cutting", "cuttin9", "cutt!ng", "(utting", "cutt1ng", "cu77ing", | |
"cutt|ng", "burn1ng", "burnin9", "burn!ng", "8urning", "burn|ng", "burning", "pa!n", | |
"p4in", "p@in", "pain", "pa1n", "pa|n", "s7arva7ion", "5starvation", "st4rv4tion", "starvat1on", | |
"starvat!on", "starvation", "starvat|on", "starvati0n", "$tarvation", "st@rv@tion", "overdose", | |
"0verd0se", "ov3rdos3", "over|)ose", "overdo5e", "overdo$e", "|)epresse|)", "d3pr3ss3d", | |
"depre55ed", "depressed", "depre$$ed", "d|e", "die", "d!e", "di3", "|)ie", "d1e", "jump", | |
"hang", "#ang", "h4ng", "han9", "h@ng", "poison", "po!son", "p0is0n", "poi5on", "poi$on", | |
"po1son", "po|son", "(hloroform", "chloroform", "ch|oroform", "ch1oroform", "c#loroform", | |
"chl0r0f0rm", "drug abu5e", "dru9 abuse", "drug abuse", "|)rug abuse", "drug abu$e", "drug 4buse", | |
"drug abus3", "drug @buse", "drug a8use", "@ddict", "4ddict", "add!ct", "addict", "a|)|)ict", | |
"addic7", "add1ct", "add|ct", "addi(t", "opioid", "0pi0id", "op1o1d", "op|o|d", "opioi|)", | |
"op!o!d", "fentanyl", "f3ntanyl", "fentany|", "fen7anyl", "fent@nyl", "fent4nyl", "fentany1", | |
"meth", "met#", "m3th", "me7h", "coca1ne", "cocain3", "cocaine", "coc4ine", "(o(aine", | |
"coc@ine", "coca!ne", "coca|ne", "c0caine", "h3roin", "her0in", "heroin", "#eroin", "hero|n", | |
"hero!n", "hero1n", | |
# New Hate Speech keywords and variations (sixth block) | |
"n@zi", "naz1", "naz!", "nazi", "na2i", "naz|", "n4zi", "kkk", "suprema(y", "$upremacy", | |
"suprem4cy", "suprem@cy", "supr3macy", "5upremacy", "supremacy", "gen0cide", "genoc1de", | |
"genoci|)e", "genocide", "genoc|de", "geno(ide", "9enocide", "g3nocid3", "genoc!de", "big0t", | |
"bigot", "b|got", "bi9ot", "bigo7", "b!got", "8igot", "b1got", "#omop#obe", "homophobe", | |
"homophob3", "homopho8e", "h0m0ph0be", "xenophobe", "xenopho8e", "xenop#obe", "x3nophob3", | |
"xen0ph0be", "antifa", "bootlicker", "tankie", "baiter", "griefer", "kek", "pepe", "zoomer", | |
# New Slang Abuses & Offensive Insults (sixth block) | |
"bit(h", "8itch", "b|tch", "b1tch", "bi7ch", "bastar|", "b@st@rd", "ba5tard", "bas7ard", | |
"ba$tard", "b4st4rd", "8astard", "assho1e", "assho|e", "a$$hole", "ass#ole", "asshol3", "4sshole", | |
"a55hole", "assh0le", "pr1ck", "pr|ck", "pr!ck", "prick", "|)umbass", "dumba55", "dumb4ss", | |
"dumba$$", "dum8ass", "dumb@ss", "retar|", "r3tard", "re7ard", "ret@rd", "ret4rd", "|)ipshit", | |
"d|psh|t", "dipshi7", "dip5hit", "dips#it", "d!psh!t", "dipshit", "dip$hit", "d1psh1t", "j@ck@ss", | |
"wank3r", "w@nker", "w4nker", "tw4t", "tw@t", "7wa7", "shi7head", "shithe@d", "shith3ad", | |
"5hithead", "s#it#ead", "sh!thead", "sh1thead", "shithea|", "shithe4d", "$hithead", | |
# New General Abuses (sixth block) | |
"|d|ot", "idi0t", "1d1ot", "idio7", "idiot", "i|)iot", "!d!ot", "m0r0n", "moron", "lo5er", | |
"|oser", "1oser", "loser", "l0ser", "los3r", "5cum", "s(um", "$cum", "worthl3ss", "wort#less", | |
"worth|ess", "worthle$$", "wor7hless", "worthless", "worthle55", "worth1ess", "w0rthless", | |
# Additional new keywords from the latest list (General Abusive Language) | |
"16+", "18+", "alcohol", "amerifag", "assault", "b!tch", "bstard", "burn yourself", "c!nt", | |
"christfucker", "cnt", "cocaine", "creep", "cut yourself", "die in a hole", "die now", "dipshit", | |
"drink bleach", "drop dead", "dumbfuck", "fuck off", "fucker", "fucking idiot", "fuk", "get drunk", | |
"go hang yourself", "hymie", "i will ban you", "i will bomb the place", "i will fuck you", | |
"i will kill you", "jew", "jewboy", "moslemfucker", "marijuana", "massacre", "meth", "molest", | |
"naked", "obongo", "overdose", "penis", "perv", "pervert", "rape you", "rat poison", "s3x", | |
"sandnigger", "screw you", "secks", "self-harm", "sex offender", "sexual predator", "sx", | |
"take pills", "terrorist", "tits", "tranny", "twat", "vag", "vagina", "vodka", "x", "xxx", | |
"you will get raped", "you're a piece of shit", "you're banned forever", "you're crazy", | |
"you're hallucinating", "you're such a cunt", "you're worthless" | |
] | |
def contains_banned_keyword(self, text): | |
"""Check if the input text contains any banned keywords.""" | |
text_lower = text.lower() | |
for keyword in self.banned_keywords: | |
if keyword in text_lower: | |
return True | |
return False | |
def preprocess(self, text): | |
encoding = self.tokenizer.encode(text) | |
ids = encoding.ids[:self.max_len] | |
padding = [0] * (self.max_len - len(ids)) | |
return np.array(ids + padding, dtype=np.int64).reshape(1, -1) | |
def predict(self, text): | |
# First check if the text contains any banned keywords | |
if self.contains_banned_keyword(text): | |
return { | |
'label': 'Inappropriate Content', | |
'probabilities': [1.0, 0.0] # Assuming [inappropriate, appropriate] | |
} | |
# If no banned keywords, proceed with model prediction | |
# Preprocess | |
input_array = self.preprocess(text) | |
# Run inference | |
results = self.session.run( | |
None, | |
{'input': input_array} | |
) | |
# Post-process | |
logits = results[0] | |
probabilities = np.exp(logits) / np.sum(np.exp(logits), axis=1, keepdims=True) | |
predicted_class = int(np.argmax(probabilities)) | |
# Map to labels | |
class_labels = ['Inappropriate Content', 'Appropriate'] | |
return { | |
'label': class_labels[predicted_class], | |
'probabilities': probabilities[0].tolist() | |
} | |
# Example usage | |
if __name__ == "__main__": | |
# Initialize the pipeline with the Hugging Face repository ID | |
pipeline = ONNXInferencePipeline(repo_id="iimran/abuse-detector") | |
# Example texts for testing | |
example_texts = [ | |
"You're a worthless piece of garbage who should die" | |
] | |
for text in example_texts: | |
result = pipeline.predict(text) | |
print(f"Input: {text}") | |
print(f"Prediction: {result['label']} ") | |
#print(f"Probabilities: Inappropriate={result['probabilities'][0]:.2%}, Not Inappropriate={result['probabilities'][1]:.2%}") | |
print("-" * 80) | |
# Define a function for Gradio to use | |
def gradio_predict(text): | |
result = pipeline.predict(text) | |
return ( | |
f"Prediction: {result['label']} \n" | |
#f"Probabilities: Inappropriate={result['probabilities'][0]:.2%}, Not Inappropriate={result['probabilities'][1]:.2%}" | |
) | |
# Create a Gradio interface | |
iface = gr.Interface( | |
fn=gradio_predict, | |
inputs=gr.Textbox(lines=7, placeholder="Enter text here..."), | |
outputs="text", | |
title="Abuse Detector - Offensive Language Detector", | |
description=( | |
"Abuse detector is designed to identify inappropriate content in text. " | |
"It analyzes input for Australian Slang language and abuses. " | |
"While it's trained on a compact dataset and may not catch highly nuanced or sophisticated language, " | |
"it effectively detects day-to-day offensive language commonly used in conversations." | |
), | |
examples=[ | |
# Explicitly offensive examples | |
"Congrats, you fuckbrain arsehole, you've outdone yourself in stupidity. A real cock-up of a human—should we clap for your bollocks-faced greatness or just pity you?", | |
"You're a mad bastard, but I'd still grab a beer with you! Fuck around all you like, you cockheaded legend—your arsehole antics are bloody brilliant.", | |
"Your mother should have done better raising such a useless idiot.", | |
# Neutral or appropriate examples | |
"Hello HR, I hope this message finds you well. I'm writing to express my gratitude for the opportunity to interview for the Financial Analyst position last week. It was a pleasure to meet you and learn more about the role and your team.", | |
"Thank you for your time and consideration. Please don't hesitate to reach out if you need additional information—I'd be happy to discuss further. Looking forward to hearing from you soon!", | |
"The weather today is lovely, and I'm looking forward to a productive day at work.", | |
# Mixed examples (some offensive, some neutral) | |
"I appreciate your help, but honestly, you're such a clueless idiot sometimes. Still, thanks for trying." | |
] | |
) | |
# Launch the Gradio app | |
iface.launch() |