Moderar uma comunidade no Telegram parece um problema resolvido até você de fato administrar uma. Um grupo de dez mil pessoas gera uma enxurrada de mensagens, e enterrados nela estão spammers que passaram anos aprendendo a driblar cada filtro ingênuo que você pudesse escrever. Eles misturam alfabetos, inserem caracteres de largura zero, traduzem seu discurso para trinta idiomas e trocam as palavras mais rápido do que uma lista de bloqueio consegue acompanhar.

O Telm é a nossa resposta a isso. O princípio de design por trás dele é que detectar spam são dois problemas de uma vez: precisa ser rápido o bastante para agir antes de a mensagem ser vista, e preciso o bastante para não punir membros de verdade. Esses objetivos puxam em direções opostas — a verificação mais precisa é também a mais lenta — então, em vez de escolher um, construímos um pipeline de três camadas, cada uma pegando o que a anterior não conseguiu e passando adiante apenas os casos difíceis.

Camada um: o motor de regras

A primeira camada é um motor de regras ajustado à mão, e é ele que faz a maior parte do trabalho. Ele carrega mais de 200 padrões que cobrem o spam que nunca muda de verdade: convites para pump de cripto, ofertas de emprego falsas, "me chama no privado para ganhar dinheiro fácil", links de phishing e os truques de ofuscação usados para contrabandeá-los pelos filtros.

As duas coisas que o tornam eficaz são abrangência e velocidade.

  • Ele normaliza o texto antes de comparar — unificando caracteres Unicode parecidos, removendo espaços de largura zero, desfazendo os truques de homóglifos que transformam "invista" em uma sequência que parece idêntica, mas não é. Os spammers contam com o fato de sua regex enxergar algo diferente do que o olho humano vê; a normalização fecha essa brecha.
  • Ele cobre mais de 30 idiomas, porque uma regra que só conhece inglês é cega para a maior parte do spam do mundo.
  • Ele roda em menos de 10 milissegundos. Esse é o número que permite ao Telm apagar uma mensagem antes de a sala tê-la realmente visto, em vez de depois de o estrago estar feito.

O motor de regras pega, sozinho, a esmagadora maioria do spam. Mas regras têm um teto: elas só sabem o que lhes foi ensinado, e um golpe genuinamente inédito não corresponderá a padrão nenhum. É para isso que servem as camadas seguintes.

Camada dois: o classificador de IA

Quando uma mensagem sobrevive às regras mas ainda parece suspeita — um link incomum, um padrão de postagem estranho, um usuário de primeira viagem com uma mensagem em formato de "isca" — ela vai para um classificador de aprendizado de máquina treinado com mensagens de spam e legítimas rotuladas.

O classificador pega aquilo que as regras não conseguem articular: o tom de um golpe, a estrutura de uma tentativa de manipulação, o formato de uma mensagem que é tecnicamente limpa, mas estatisticamente spam. O problema é que a inferência de modelo é cara, e rodá-la em toda mensagem estouraria o orçamento de latência que o motor de regras se esforça tanto para proteger.

Então o classificador fica atrás de um cache. O spam vem em ondas — a mesma campanha atinge muitos grupos com mensagens quase idênticas em questão de minutos. Indexamos o cache por uma impressão digital normalizada da mensagem, de modo que a primeira instância de uma campanha paga o custo total de inferência e cada cópia subsequente é um acerto de cache. Na prática, o cache absorve o grosso do tráfego repetido, e o modelo só roda de verdade em conteúdo genuinamente novo.

message ──▶ normalize ──▶ rule engine  (<10ms, 200+ patterns)
                              │ uncertain
                              ▼
                        fingerprint cache ──hit──▶ verdict
                              │ miss
                              ▼
                        AI classifier ──▶ verdict + cache write

Camada três: memória semântica

A terceira camada é a que torna o Telm difícil de driblar ao longo do tempo. Spammers não enviam a mesma mensagem duas vezes — eles parafraseiam. "Entre no nosso grupo exclusivo de sinais" vira "tenha acesso ao nosso canal privado de trading", que vira a mesma oferta em português. Um cache de impressão digital vê três strings diferentes. Um humano vê um único golpe.

A memória semântica fecha essa brecha ao trabalhar com significado em vez de texto. Quando uma mensagem é confirmada como spam, o Telm armazena um embedding — um vetor numérico que captura o que a mensagem significa, e não como ela é escrita. Mensagens novas também são convertidas em embeddings e comparadas com essa memória por similaridade. Uma paráfrase, uma tradução, um discurso reformulado, todos caem perto do original no espaço vetorial, mesmo que quase não compartilhem caracteres literais.

É isso que permite ao Telm pegar a segunda, a terceira e a centésima variação de um golpe que lhe foi mostrado uma única vez. O motor de regras cuida do conhecido, o classificador cuida do inédito, e a memória semântica cuida do mutado — a longa cauda de spam que sobrevive justamente porque nunca se repete palavra por palavra.

A lista de bloqueio CAS

Nem toda defesa precisa ser computada localmente. O Telm integra a lista de bloqueio do Combot Anti-Spam (CAS), um registro global e mantido pela comunidade de contas já confirmadas como spammers em todo o ecossistema do Telegram.

O valor do CAS é que ele age antes de a mensagem existir. Quando uma conta reconhecidamente maliciosa tenta entrar ou postar, o Telm pode bani-la de imediato — sem conteúdo para analisar, sem inferência para rodar, porque a própria identidade é o sinal. É a verificação mais barata possível e remove uma fatia significativa de agentes maliciosos antes mesmo de o pipeline de detecção ter que pensar neles.

Modo de Monitoramento: agir só depois que você confia

Um bot de moderação que toma uma decisão errada é pior do que bot nenhum. Apague a mensagem de um membro de verdade no primeiro dia e você terá ensinado a comunidade a não confiar na ferramenta. Por isso, todo grupo novo começa com o Telm em Modo de Monitoramento.

Nesse modo, o Telm observa e reporta, mas não mexe em nada. Para cada mensagem, ele registra a ação que *teria* tomado — apagar, silenciar, banir — e mostra para você, sem de fato executar nenhuma delas. Você consegue ver exatamente como o pipeline se comporta diante do tráfego real da sua comunidade, com seus membros reais, antes de ele ter permissão para agir.

Isso faz duas coisas. Constrói uma confiança justificada: você só coloca o Telm em modo ativo depois de ver as decisões dele baterem com o seu julgamento. E é uma rede de segurança para ajustes — se uma regra específica é agressiva demais para a cultura do seu grupo, você descobre em um relatório, e não em uma mensagem irritada de um membro que foi banido por dizer "dá uma olhada no meu projeto".

O Modo de Monitoramento é, de certo modo, toda a filosofia em um único recurso. A detecção pode ser agressiva porque a ativação é conservadora. Você vê antes de ele agir e, quando ele age, você já sabe que está certo.