Caso de uso

Moderação com IA para fóruns, com o tópico como contexto

Os moderadores de fóruns passam horas com denúncias, publicações fora do tema e discussões que fogem ao controlo. A VigiMod verifica cada nova publicação antes de sair, lendo as anteriores do tópico e as regras do fórum: os casos claros ficam resolvidos e só os duvidosos chegam a uma pessoa.

O que torna difícil

As respostas só fazem sentido no tópico

«É óbvio que não leste» é normal ou malcriado conforme o que veio antes. A VigiMod lê até dez publicações anteriores.

Fora do tema e vendas

Muitos fóruns proíbem vendas, política ou outros temas. As regras em palavras simples apanham-nos como qualquer categoria.

Denúncias a mais

Reter as publicações assinaladas para revisão faz com que os moderadores vejam uma fila curta em vez do fórum inteiro.

Como funciona com a VigiMod

  1. 1

    Antes de guardar uma nova publicação, o fórum envia-a à VigiMod com as últimas publicações do tópico e as suas regras.

  2. 2

    Se nada for assinalado, a publicação sai como sempre.

  3. 3

    Se algo for assinalado, a publicação espera na fila de moderação com a categoria que a ativou.

Regras para copiar

Envie-as no campo rules: cada uma volta com a sua própria pontuação, como uma categoria integrada.

{
  "rules": {
    "no-selling": "Sem compra e venda de objetos",
    "no-politics": "Sem discussões sobre política ou eleições",
    "on-topic": "Aqui só se fala de fotografia",
    "no-personal-attacks": "Sem comentários sobre outros membros em vez dos seus argumentos"
  }
}

Exemplo

Uma função em Python para chamar antes de guardar uma publicação: as assinaladas esperam por um moderador em vez de sair.

Python

# pip install requests
# Call this before saving a new post: flagged posts wait for a moderator instead of going live.
import os
import requests

RULES = {
    "no-selling": "No buying or selling items",
    "on-topic": "Only photography talk here",
}

def check_post(text: str, author_id: str, thread: list[str]) -> dict:
    r = requests.post(
        "https://api.vigimod.com/moderate",
        headers={"X-API-Key": os.environ["VIGIMOD_KEY"]},
        json={
            "text": text[:2000],
            "context": [p[:2000] for p in thread[-10:]],   # the previous posts of the thread
            "rules": RULES,
            "user_id": author_id,
            "scope": "forum",
        },
        timeout=5,
    )
    r.raise_for_status()
    return r.json()

# in your "new post" handler
result = check_post(post.body, str(post.author_id), [p.body for p in thread.posts])
post.status = "pending_review" if result["flagged"] else "published"
post.flagged_by = [name for name, hit in result["flags"].items() if hit]

Dicas

  • Retenha as publicações assinaladas para revisão em vez de as apagar: a última palavra fica com os moderadores.
  • Uma mensagem pode ter até 2000 caracteres: em publicações mais longas, verifique a primeira e a última parte.
  • Use regras diferentes por secção: a secção de vendas permite vender, a secção geral não.

Perguntas

Funciona com Discourse, phpBB, Flarum ou NodeBB?
Sim, com um pequeno plugin ou webhook: qualquer fórum que faça uma chamada HTTP ao criar uma publicação pode usar a VigiMod.
E as publicações longas?
Cada mensagem pode ter até 2000 caracteres. Verifique as publicações mais longas por partes, ou o início e o fim.
Cada secção pode ter as suas regras?
Sim. As regras vão com cada pedido, por isso cada secção, categoria ou etiqueta pode enviar as suas.
É grátis?
Durante a beta, sim: 120 mensagens por minuto por chave API e todas as funções incluídas.

Experimente na sua comunidade

Crie uma chave API gratuita em dois minutos. Sem cartão, sem período de teste.