Eddiebot: Does not flag offensive words

Created on 5 Jan 2021  路  18Comments  路  Source: EddieJaoudeCommunity/EddieBot

Description


Eddie bot flags non-inclusive pronouns, but does not flag many offensive words. It will be better if EddieBot can do it.

Screenshots


I can add screenshots but I will refrain from doing so as the words can be offensive. Head over to the Discord Server's #bot-chat channel to find live examples.

Additional Context


Will add the screenshots if someone explicitly requests for it.

Join Eddie's discord community here

bug

All 18 comments

It's great having you contribute to this project

Feel free to raise an Issue! Welcome to the community :nerd_face:

If you would like to continue contributing to open source and would like to do it with an awesome inclusive community, you should join our Discord chat and our GitHub Organisation - we help and encourage each other to contribute to open source little and often 馃 . Any questions let us know.

We could perhaps use a second library for this?
(personally, I was thinking, if we could run the message content through some sentiment classifier lib, to get more context and then send the interpretation through to alex, I think we could somehow account for this in that too 馃 )

We could perhaps use a second library for this?
(personally, I was thinking, if we could run the message content through some sentiment classifier lib, to get more context and then send the interpretation through to alex, I think we could somehow account for this in that too 馃 )

Would be too heavy to do that according to me. A bot should not be burdened with so much as we need quick responses especially in this case.

oh :+1:
Maybe (though I'm not sure about this), we could add an extra RESTRICTED_WORDS_LIST, in the config.ts file, and regex these to the message content, in order to check text that isn't flagged by alex?

(*Is there a way to add a project-specific word to alexjs-ban-list?)

What about something like this https://github.com/web-mech/badwords#readme

That looks interesting :+1:
Though, since we're considering adding another library, it reminds me of something @nhcarrigan said in the discord server
Screenshot 2021-01-06 at 5 17 00 PM
Is that a viable option? 馃

Whatever we use, we need to have a distinction between non-inclusive pronouns and profane language. Can't judge them the same neither can we react to them similarly.

  • We can flag non-inclusive language and issue a request to the user to be more inclusive.
  • With profanity, we should issue warnings and delete the message, or at least the offensive content immediately. I would recommend an absolute no-toleration policy in this regard.

we used to have one that was custom built, but I think using library that has been used before is probably a better starting point.

I agree with @dumbcoder7 that "no tolerance" is best for bad language and there are 2 actions.

My thoughts are:

  • leave the alexjs feature as it is, it is warning and no action is taken (I think it is orange the bot response)
  • add another feature that uses a library to check for bad words, which removes the message (similar to standup command) and puts a red bot response saying something like "please do not use bad language here"
  • add another feature that uses a library to check for bad words, which removes the message (similar to standup command) and puts a red bot response saying something like "please do not use bad language here"

We can code this ourselves as well as use the Bad Words library here that you mentioned before. What do you recommend?

We will have to integrate the library, so we will have to write code, but the less code we right about the profanity part the better and let the library do the heavy lifting

I meant coding the entire mechanism and only picking the 'bad' words from the library. But sure, no reason to overwork ourselves.

To clarify, if we scrap Alex.js and write our own parser, we could:

  • Have full control over the response for each flagged word (so the bot could respond to profanity one way and gender exclusive language another)
  • Have full control over which words are flagged

We originally started off with our own parser. Now seeing both ways of doing it, I definitely believe using AlexJS is the better options - then we can add to its ignore config for the ones we don't want flagged (this is a great green square for people too)

There's a new discussion #656 that discusses about using nlp, (I'm linking here, so that perhaps we could get some context from there as well)

Guys, I appreciate the discussion, but a methodology to remove obviously offensive words needs to be put in place ASAP. EddieHub is growing and with more members, we don't want exposed vulnerabilities. NLP and contextual flagging can be a secondary issue but the bad words library should be implemented quickly in my opinion.

I think we could look at alex(or the library it uses retext) and implement the bad-word-flags from there
or we could look at:

What about something like this https://github.com/web-mech/badwords#readme

I prefer the latter, but sadly I currently do not have the time or knowledge to implement this feature. Would request whoever can, to add it as soon as possible.

Yep, something simple and sooner is best 馃憤

Was this page helpful?
0 / 5 - 0 ratings

Related issues

BOLT04 picture BOLT04  路  36Comments

Akshu-on-github picture Akshu-on-github  路  14Comments

mstanciu552 picture mstanciu552  路  10Comments

RaisinTen picture RaisinTen  路  24Comments

GoluffyxD picture GoluffyxD  路  12Comments