Executando verificação de segurança...
1

[PITCH] Uma lib de moderaçao de chat toxico 100% open source

O problema

Eu estou desenvolvendo um app que conecta pessoas com problema de vicio em pornografia (diaum).

Em algum momento eu bati em um problema que parece simples na teoria, mas na pratica é bem mais chato de resolver por que a maioria das soluçoes sao em ingles.

Repositorio.
Github

Live do projeto.
Teste o chat: Browser

Implementaçao web do ToxiBr
Teste o chat: ToxiBr web

Moderaçao de chat.
Nao é sobre bloquear palavrao. Isso qualquer lista de palavras resolve.
O problema real é entender o contexto. O Diaum é um app que lida com um tema sensivel e uma coisa que acontece com frequencia é o usuario se colocar para baixo.

"eu me sinto um lixo"
"eu sou um bosta"

Se eu simplesmente bloqueasse essas palavras eu estaria silenciando exatamente o momento onde o usuario mais precisa falar.
Mas ao mesmo tempo eu nao posso permitir que um usuario ofenda o outro, foi daqui que nasceu a ToxiBR para resolver o meu problema e talvez o teu.

Voce pode ver a implementaçao dela no navegador aqui: ToxiBr web

O que é a ToxiBR?
A ToxiBR é uma biblioteca em JavaScript focada em moderaçao de conteudo em português com analise de contexto.
A ideia central é simples:

Nem toda palavra toxica deve ser bloqueada
Nem toda frase aparentemente inocente deve passar

Como funciona?
A ToxiBR trabalha com classificaçao de palavras e analise de contexto.

Cada palavra pode ter:

  1. Um peso
  2. Uma categoria
  3. Uma regra de bloqueio

Categorias

  1. Ofensa direta
  2. Conteudo sexual
  3. Racismo
  4. Homofobia
  5. Apologia
  6. Dados pessoais

Tipos de tratamento

  1. Hard block
  2. Palavras que sao bloqueadas independente do contexto
  3. Soft block

Palavras que dependem do contexto
Exemplo

"caralho hoje ta quente"

Aqui nao tem ataque a ninguem. É expressao.

Agora

"Pega no meu caralho"

Aqui muda completamente.

A ToxiBR tenta entender isso olhando o entorno da frase e a intencao.

Nao é perfeito.
Mas é muito melhor do que um if com lista de palavroes.

Proteçao de dados no chat

Outro problema que precisei resolver foi troca de informaçao pessoal.

  1. Telefone
  2. Endereco
  3. Rede social

Em um ambiente anonimo isso quebra completamente a proposta.

Entao a ToxiBR tambem faz parsing de padroes:

  1. Detecta numero de telefone
  2. Detecta tentativa de enviar arroba de rede social
  3. Detecta padroes de endereco
  4. Analisa as ultimas 5 mensagens para detectar envio fracionado de dados

Tudo isso entra como categoria separada e pode gerar bloqueio ou alerta dependendo da regra.

Por que nao usar IA?
Essa pergunta sempre vem.
Por que nao usar uma LLM para moderar o chat?

Resposta curta
Privacidade e controle.
O Diaum é 100% anonimo. Nao existe log de conversa, nao existe armazenamento de mensagem

Enviar isso para um serviço externo quebraria tudo.
Principalmente a confiança do usuario.
Mesmo usando algo como o moderate: Ainda existe dependencia externa, Risco juridico, LGPD, Perda de controle

Casos de uso

  1. Jogos online com chat
  2. Comunidades anonimas
  3. Apps de suporte emocional
  4. Marketplaces com interaçao entre usuarios
  5. Qualquer sistema com chat em tempo real

Se existe interaçao humana, existe necessidade de moderaçao.

Voce pode ver a implementaçao dela no navegador aqui: ToxiBr web

Limitaçoes
Nao existe soluçao perfeita.
Contexto é dificil,Ironia é dificil, sarcasmo é dificil, usuarios mal intencionados tambem
A ToxiBR resolve uma grande parte dos problemas mas ainda depende de evoluçao constante. Por isso é open source.
Se voce esta criando qualquer produto com interaçao entre pessoas voce vai enfrentar esse problema.

Mais cedo ou mais tarde e a pior coisa que voce pode fazer é ignorar isso no inicio.
A ToxiBR nasceu de um problema real dentro de um contexto sensivel com uma necessidade muito clara. Talvez ela resolva o seu tambem.

Carregando publicação patrocinada...