O problema real por trás da classificação linguística
Quem trabalha com moderação de conteúdo ou processamento de linguagem natural acaba se deparando com uma armadilha constante: a diferença entre linguagem imprópria e linguagem associada a certos contextos sociais ou profissionais. No Brasil, essas duas categorias são frequentemente confundidas em ferramentas de filtragem, e o resultado são falsos positivos que bloqueiam conteúdo legítimo ou deixam passar o que deveria ser sinalizado. O conceito de baixo calão ou baixo escalão não é uma expressão formal — é mais uma forma como o mercado chama a situação em que sistemas automáticos tratam registros de fala informais como se fossem apenas vulgaridade, ignorando o contexto sociolinguístico por trás do que está sendo dito. E isso gera problemas reais.
Como distinguir baixo calão ou baixo escalão na prática
Vou direto ao ponto. A primeira coisa que precisa ficar clara é que "baixo calão" se refere a vocabulárioconsiderado obsceno, vulgar ou impróprio segundo padrões sociais estabelecidos. Já "baixo escalão" remete a registros linguísticos associados a grupos com menor acesso a educação formal ou a positions hierárquicas mais baixas em determinada organização. O erro mais comum em filtros automáticos é tratar qualquer variação linguística não padrão como calão. Eu já vi sistemas bloquearem mensagens de colaboradores de call centers porque usavam expressões regionais ou termos técnicos do setor que o modelo treinado em português formal simplesmente não reconhecia. O filtro marcava como impróprio algo que era perfeitamente válido no contexto daquela equipe.
A solução que funcionou no meu caso foi implementar uma camada adicional de classificação antes do filtro de calão propriamente dito. Em vez de enviar o texto direto para a lista de palavras proibidas, eu passo primeiro por um modelo que detecta o registro linguístico — formal, informal, técnico, regional. Só depois, se o registro for confirmado como informal sem caráter ofensivo, o texto segue para análise de vulgaria. Isso reduziu os falsos positivos em cerca de 70% no nosso ambiente. Antes, tínhamos que revisar manualmente cerca de 40 tickets por dia. Depois dessa mudança, caímos para menos de 10.
A arquitetura que funciona
A pipeline básica que uso tem três etapas. A primeira é a detecção de domínio ou contexto. Se o texto vem de um chat interno da empresa, as regras são diferentes do que seria para uma rede social aberta. O mesmo termo pode ser aceitável num grupo de colegas e inaceitável num atendimento ao público. A segunda etapa é a classificação sociolinguística. Aqui você precisa de um modelo que saiba diferenciar gírias, regionalismos, jargões setoriais e, de fato, linguagem vulgar. Ferramentas como o detect-lingua-model baseado em Transformers funcionam bem para essa camada, desde que você ajuste o threshold de confiança. Um score baixo de confiança no classificador de registro deve ser encaminhado para revisão humana, não para bloqueio automático.
A terceira etapa é o filtro de calão em si. Lista de palavras, modelos de classificação binária, ou uma combinação dos dois. O ponto importante é que este filtro deve ser configurado de forma diferente dependendo do resultado da etapa anterior. Texto classificado como informal mas não ofensivo recebe um threshold mais permissivo. Texto classificado como formal mas contendo termos impróprios é sinalizado com prioridade alta.
👉 Clique no botão abaixo para saber mais sobre o assunto!
Onde a coisa dá errado
Vou ser direto sobre as limitações, porque muita gente vende isso como se fosse solução perfeita. Primeiro: modelos de classificação sociolinguística são intrinsicamente enviesados. Eles foram treinados majoritariamente em textos de autores com maior escolaridade, o que significa que variedades linguísticas de grupos marginalizados tendem a ser classificadas incorretamente como "informais" ou "impróprias" com maior frequência. Se a sua equipe não incluir pessoas de diferentes origens na validação dos resultados, você vai acabar discriminando inadvertidamente certos falantes. Segundo: a manutenção da lista de calão é. Novas gírias surgem constantemente, especialmente em comunidades online. O que era considerado apenas informal hoje pode se tornar vulgar dentro de alguns meses, ou vice-versa. Eu recomendo revisar a lista de termos bloqueados pelo menos a cada trimestre, e manter um log dos falsos positivos para ajustar os thresholds.
Terceiro: contexto digital muda tudo. Em fóruns de jogos, certos termos que seriam considerados calão em outros ambientes são usados de forma completamente neutra entre os jogadores. Em grupos de mães no Facebook, expressões que soariam agressivas num contexto corporacional são perfeitamente normais. Um sistema que trata todos os ambientes da mesma forma vai falhar miseravelmente.
Um exemplo concreto do dia a dia
Tivemos um caso recente em que um colaborador escreveu num chat interno: "cara, isso tá um lixo, não funciona pra nada". O filtro de calão tradicional teria bloqueado "lixo" como termo ofensivo. Com a pipeline que descrevi, o classificador de registro identificou o tom informal mas não hostil, e o contexto de chat interno foi detectado como ambiente com tolerância moderada. O texto passou sem sinalização. Se tivéssemos usado apenas a lista de palavras, aquele colaborador teria recebido uma notificação por algo que era claramente uma reclamação técnica, não um ataque pessoal. O inverso também acontece. Um comentário como "seu filho da puta" pode ser usado entre amigos de forma jocosa em alguns contextos, mas em um ticket de suporte dirigido a um cliente é claramente abusivo. O contexto é absolutamente determinante.
Alternativas quando o orçamento é apertado
Se você não tem condições de implementar uma pipeline completa com múltiplos modelos, pelo menos não use listas estáticas de palavras como única camada de proteção. Uma alternativa mínima é combinar uma lista básica de termos com uma regra simples de contexto: se o termo aparece em combinação com palavras como "por favor", "obrigado" ou em frases que têm estrutura de pedido, considere reduzir a severidade da classificação. Não é perfeito, mas é significativamente melhor do que bloquear tudo cegamente. Também vale a pena considerar ferramentas como o Perspective API do Google para análise de toxicidade, que leva em conta o contexto de forma mais sofisticada do que uma simples lista negra. Ele não é perfeito — tem seus próprios vieses documentados — mas funciona como uma camada extra útil, especialmente para ambientes multiidioma.
O essencial é nunca confiar cegamente em nenhuma ferramenta de classificação automática. Sempre mantenha um mecanismo de apelação e revisão humana. A pior coisa que pode acontecer é um sistema decidir sozinho quem pode ou não falar de determinada forma numa organização.