O padrão da indústria para moderar conteúdo gerado por usuário é reativo: publica primeiro, denuncia depois, remove se alguém reclamar. Funciona em escala, e falha exatamente nas primeiras horas — que são as horas em que o conteúdo circula.
No EuRi invertemos isso.
Como funciona
Quando alguém cria um post, uma Cloud Function chama o Gemini com o conteúdo. O post só vai ao ar se passar. Não existe janela entre publicar e moderar, porque não existe publicação antes da moderação.
usuário cria post
-> Cloud Function
-> Gemini analisa
-> passou? sim -> vai ao ar
não -> não vai
A ideia é atacar o problema na origem, em vez de depender de denúncia depois do dano feito.
O que custou mais caro do que esperávamos
Latência. Chamar um modelo no caminho crítico da publicação não é de graça. O usuário sente. Foi preciso trabalhar a percepção de espera na interface para que não parecesse que o app travou.
Falso positivo. As primeiras versões do prompt bloqueavam humor legítimo com uma frequência inaceitável. Meme é ambíguo por natureza — ironia, sarcasmo e autodepreciação parecem agressão para um classificador ingênuo. Foram várias rodadas de ajuste até chegar num ponto em que o filtro pega o que precisa pegar sem estragar a piada.
A lição: moderação por IA não é um interruptor. É um parâmetro que você calibra contra o seu conteúdo, e o custo de errar para o lado restritivo é perder o produto.
O que ficou
Um feed onde o conteúdo que chega já passou por um filtro, e onde o problema não é resolvido pedindo para a vítima denunciar.
Se você já construiu moderação pré-publicação com modelo de linguagem, o que mais gostaríamos de saber é onde a sua erra.