Sostituzione diretta ·
Un'alternativa a Perspective API che si sostituisce senza riscrivere nulla
Perspective API di Google smette di rispondere il 31 dicembre 2026. VigiMod risponde alle stesse richieste sullo stesso percorso: cambi host e chiave e il tuo codice, plugin o script continua a funzionare. Gratis durante la beta, addestrato su 26 lingue.
Cambi host e chiave, nient'altro
Stesso percorso (/v1alpha1/comments:analyze), stesso JSON in entrata e in uscita, la chiave in ?key= come prima (o nell'header X-API-Key).
Prima: Perspective API
import requests
r = requests.post(
"https://commentanalyzer.googleapis.com/v1alpha1/comments:analyze",
params={"key": PERSPECTIVE_KEY},
json={
"comment": {"text": message},
"languages": ["it"],
"requestedAttributes": {"TOXICITY": {}, "INSULT": {}, "THREAT": {}},
},
)
scores = {k: v["summaryScore"]["value"] for k, v in r.json()["attributeScores"].items()}
flagged = scores["TOXICITY"] >= 0.8Dopo: VigiMod
import requests
r = requests.post(
"https://api.vigimod.com/v1alpha1/comments:analyze", # the only changes:
params={"key": VIGIMOD_KEY}, # host and key
json={
"comment": {"text": message},
"languages": ["it"],
"requestedAttributes": {"TOXICITY": {}, "INSULT": {}, "THREAT": {}},
},
)
scores = {k: v["summaryScore"]["value"] for k, v in r.json()["attributeScores"].items()}
flagged = scores["TOXICITY"] >= 0.8curl
curl -s "https://api.vigimod.com/v1alpha1/comments:analyze?key=$VIGIMOD_KEY" \
-H "Content-Type: application/json" \
-d '{"comment": {"text": "sei proprio un idiota"},
"requestedAttributes": {"TOXICITY": {}, "SEVERE_TOXICITY": {}}}'
# {"attributeScores": {
# "TOXICITY": {"summaryScore": {"value": 1.0, "type": "PROBABILITY"}},
# "SEVERE_TOXICITY": {"summaryScore": {"value": 0.6, "type": "PROBABILITY"}}}}
# an insult: toxic, but not hate or a threat, so not severeNode.js
const r = await fetch(
`https://api.vigimod.com/v1alpha1/comments:analyze?key=${process.env.VIGIMOD_KEY}`,
{
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
comment: { text: message },
requestedAttributes: { TOXICITY: {}, PROFANITY: {} },
}),
},
);
const { attributeScores } = await r.json();
const toxicity = attributeScores.TOXICITY.summaryScore.value;Strumenti basati su Perspective
Coral
Admin → Configure → Moderation → filtro dei commenti tossici di Perspective: imposta l'endpoint su https://api.vigimod.com/v1alpha1 e come chiave la tua chiave VigiMod. Alza il timeout a 3000 ms: se la risposta arriva tardi, Coral pubblica il commento senza punteggio.
Discourse
Il plugin ufficiale di Perspective chiama direttamente l'host di Google e non ha un'impostazione per cambiarlo: nella tua copia del plugin sostituisci commentanalyzer.googleapis.com con api.vigimod.com e metti la chiave VigiMod in perspective_google_api_key.
Drupal, WordPress e i tuoi script
Funziona qualsiasi modulo o script che permette di impostare l'URL di Perspective: usa https://api.vigimod.com/v1alpha1/comments:analyze con la tua chiave VigiMod. Se l'URL è scritto nel codice, è una riga da cambiare.
Come viene calcolato ogni attributo di Perspective
| Attributo Perspective | VigiMod usa | Nota |
|---|---|---|
| TOXICITY | toxic | Messaggi maleducati, irrispettosi o aggressivi, insulti, odio e minacce compresi. |
| SEVERE_TOXICITY | hate, threat, toxic (al massimo 0,6) | Odio e minacce; un messaggio solo maleducato resta sotto 0,7. |
| IDENTITY_ATTACK | hate | Attacchi alle persone per quello che sono. |
| INSULT | insult | Insulti rivolti a una persona. |
| THREAT | threat | Minacce di violenza o di danno. |
| SEXUALLY_EXPLICIT | sexual | Contenuti sessuali. |
| PROFANITY | regola integrata | Parolacce e linguaggio volgare, in qualsiasi lingua (è accettato anche OBSCENE). |
| FLIRTATION | regola integrata | Flirt e avances sessuali (sperimentale in Perspective). |
| SPAM | advertising | Pubblicità non richiesta. |
| Altri | — | ATTACK_ON_AUTHOR, INCOHERENT, INFLAMMATORY, LIKELY_TO_REJECT, UNSUBSTANTIAL e gli attributi bridging restituiscono un errore 400 che li nomina. |
Cosa sapere prima di passare
- I punteggi vengono dal modello di VigiMod, non da quello di Perspective. Sono riscalati in modo che 0,7 sia la soglia tarata di VigiMod per ogni attributo: le soglie tra 0,7 e 0,9 si comportano in modo sensato, ma verifica le tue su qualche giorno di messaggi reali.
- Un attributo che VigiMod non calcola dà un errore 400 esplicito, mai un numero inventato. I nomi _EXPERIMENTAL sono accettati.
- context.entries viene usato: i messaggi precedenti cambiano i punteggi, quindi risposte, battute e citazioni vengono lette insieme a ciò che le precede.
- I commenti più lunghi di 1.000 caratteri vengono valutati a parti, fino a 10.000 caratteri; ogni parte conta come un messaggio per il limite di frequenza e spanScores riporta il punteggio di ogni parte.
- Non viene salvato nulla: i commenti vengono valutati e scartati, e comments:suggestscore è accettato ma i suoi punteggi non vengono conservati.
- Tutte le lingue sono accettate: il modello è addestrato su 26 e funziona meglio in inglese, italiano, spagnolo, francese, tedesco e portoghese.
Quando vuoi più di Perspective
L'endpoint compatibile è il passaggio rapido. L'endpoint nativo /moderate, con la stessa chiave, aggiunge:
- Regole personalizzate in linguaggio naturale, come “Vietato vendere account”, ognuna con il suo punteggio.
- Punteggi per autolesionismo, pubblicità e spam per utente, e liste di insulti discriminatori per categoria.
- Policy create nella dashboard, con azioni se/allora (elimina, timeout, ban), coda di revisione e webhook.
- La stessa privacy: i messaggi vengono controllati e scartati, non usati per addestrare modelli.
Migra in tre passi
- 1
Crea un account gratuito e una chiave API.
- 2
Sostituisci commentanalyzer.googleapis.com con api.vigimod.com e la chiave di Perspective con quella di VigiMod.
- 3
Osserva qualche giorno di messaggi reali e, se serve, regola le soglie.
Domande
Quando smette di funzionare Perspective API?
Secondo l'avviso di Jigsaw non accetta nuove richieste di accesso da febbraio 2026 e continua a rispondere agli utenti esistenti fino al 31 dicembre 2026.
Perspective API è gratis?
Era gratuita, con una quota per progetto. Dopo il 31 dicembre 2026 smette di rispondere a tutti, quindi un piano gratuito non serve più. VigiMod è gratis durante la beta.
Cosa ha sostituito Perspective API?
Google non ha rilasciato un successore diretto. VigiMod risponde alle stesse richieste comments:analyze, quindi il codice scritto per Perspective continua a funzionare con un nuovo host e una nuova chiave.
Devo cambiare il codice?
Solo host e chiave. Richiesta e risposta hanno la stessa forma; un attributo che VigiMod non calcola restituisce un errore 400 che lo nomina.
I punteggi sono uguali a quelli di Perspective?
Nessun modello dà gli stessi numeri. Entrambi restituiscono una probabilità da 0 a 1 per attributo, e quelli di VigiMod sono riscalati in modo che 0,7 sia la sua soglia. Verifica le soglie sui tuoi messaggi.
Quali lingue supporta?
È addestrato su 26 lingue e funziona meglio in inglese, italiano, spagnolo, francese, tedesco e portoghese. Ogni codice lingua è accettato.
VigiMod è gratis?
Sì, durante la beta: tutte le funzioni, 120 messaggi al minuto per chiave, fino a 10 chiavi.
Continua a imparare
Tutte le guide- Intermedio · 6 min di letturaIl bias nei modelli di moderazione: perché i messaggi innocenti con nomi stranieri vengono segnalatiUn modello può segnalare «Mohammed ha perso il treno» come odio. Da dove nasce questo bias, come si misura e come si elimina.
- Intermedio · 7 min di letturaClassificazione zero-shot: come un modello capisce regole scritte a paroleCome fa un modello a far rispettare «Niente spoiler» se non è mai stato addestrato su quella regola? Inferenza in linguaggio naturale e regole personalizzate.
- Avanzato · 7 min di letturaFar girare l'IA su CPU: quantizzazione, ONNX e perché i modelli piccoli vinconoNon serve sempre una GPU. Come la quantizzazione int8, ONNX Runtime e la taglia giusta fanno rispondere un modello di moderazione in millisecondi su CPU.
Passa prima del 31 dicembre
Una chiave API si crea in un minuto. Poi cambi una riga.