Caso de uso
Moderação com IA para grupos do Telegram, em qualquer idioma
Os grandes grupos do Telegram atraem spam, burlas e discussões, muitas vezes em vários idiomas ao mesmo tempo. Um pequeno bot com a VigiMod verifica cada mensagem nas categorias habituais e nas regras do seu grupo, e apaga o que as quebra.
O que torna difícil
Vagas de spam e burlas
Contas novas publicam sem parar os mesmos links de cripto ou para adultos. Com user_id e o grupo como scope, as mensagens repetidas levam o spam a 1.
Grupos em muitos idiomas
Nos grupos do Telegram misturam-se português, espanhol, ucraniano, italiano e mais. O modelo foi treinado em 26 idiomas.
Regras de tema
«Só perguntas sobre o curso», «Sem compra e venda»: a VigiMod verifica regras escritas em palavras simples, em qualquer idioma.
Como funciona com a VigiMod
- 1
Crie um bot com o BotFather e adicione-o ao grupo como admin com a permissão «Apagar mensagens».
- 2
Para cada mensagem de texto, o bot envia à VigiMod o texto, as últimas dez mensagens do grupo, o id do autor e as suas regras.
- 3
Se a resposta vier assinalada, o bot apaga a mensagem; após várias marcações pode silenciar ou remover o utilizador.
Regras para copiar
Envie-as no campo rules: cada uma volta com a sua própria pontuação, como uma categoria integrada.
{
"rules": {
"no-ads": "Sem publicidade nem links para outros grupos ou canais",
"no-trading": "Sem compra, venda ou troca",
"on-topic": "Só mensagens sobre aprender espanhol",
"no-crypto": "Sem ofertas de investimento em cripto nem sinais de trading"
}
}Exemplo
Um bot em Python com python-telegram-bot: guarda as últimas dez mensagens de cada grupo e apaga as assinaladas.
Python
# pip install python-telegram-bot httpx
# The bot must be an admin of the group with the "Delete messages" permission.
import os
from collections import defaultdict, deque
import httpx
from telegram import Update
from telegram.ext import Application, ContextTypes, MessageHandler, filters
RULES = {"no-ads": "No advertising or links to other groups or channels"}
history = defaultdict(lambda: deque(maxlen=10)) # last messages of each group, sent as context
vigimod = httpx.AsyncClient(base_url="https://api.vigimod.com", timeout=3,
headers={"X-API-Key": os.environ["VIGIMOD_KEY"]})
async def check(update: Update, context: ContextTypes.DEFAULT_TYPE) -> None:
msg, chat = update.effective_message, str(update.effective_chat.id)
text = msg.text[:2000]
try:
r = await vigimod.post("/moderate", json={
"text": text, "context": list(history[chat]), "rules": RULES,
"user_id": str(msg.from_user.id), "scope": chat,
})
flagged = r.is_success and r.json()["flagged"]
except httpx.HTTPError:
flagged = False # slow or down: let the message through
history[chat].append(text)
if flagged:
await msg.delete()
app = Application.builder().token(os.environ["TELEGRAM_TOKEN"]).build()
app.add_handler(MessageHandler(filters.TEXT & ~filters.COMMAND & filters.ChatType.GROUPS, check))
app.run_polling()Dicas
- Os bots do Telegram só veem todas as mensagens de um grupo se forem admins (ou com o modo de privacidade desligado no BotFather).
- Verifique com mais rigor as primeiras mensagens dos membros novos: baixe para eles os limiares de spam e publicidade.
- Registe as mensagens apagadas para os admins as reverem: uma verificação rápida mantém a confiança do grupo no bot.
Perguntas
- O bot tem de ser admin?
- Sim. Para ler todas as mensagens e apagá-las, o bot tem de ser admin do grupo com a permissão «Apagar mensagens».
- Pode moderar também canais do Telegram?
- Os canais são escritos pelos seus admins; o que costuma precisar de moderação é o grupo de discussão ligado ao canal, que funciona como qualquer grupo.
- As mensagens são guardadas?
- Não. A VigiMod verifica cada mensagem e descarta-a; só se guardam contadores de uso por hora e por chave API.
- Quanto custa?
- É grátis durante a beta, com 120 mensagens por minuto por chave API, o suficiente para a maioria dos grupos.
Continue a aprender
Todos os guias- Básico · 5 min de leituraFalsos positivos e falsos negativos na moderação de conteúdosQualquer sistema de moderação comete dois tipos de erros. O que são, quanto custa cada um a uma comunidade e como manter ambos baixos.
- Básico · 5 min de leituraPorque é que o contexto importa na moderação de chatsA mesma frase pode ser inofensiva ou nociva conforme o que veio antes. Como o contexto da conversa muda a moderação, com exemplos reais.
- Intermédio · 7 min de leituraClassificação zero-shot: como um modelo percebe regras escritas por palavrasComo aplica um modelo «Nada de spoilers» sem ter sido treinado com essa regra? Inferência em linguagem natural e regras de moderação personalizadas.
Experimente na sua comunidade
Crie uma chave API gratuita em dois minutos. Sem cartão, sem período de teste.