Sviluppatori

Come Verificare la Similarità tra Due Testi (Similarità Coseno Spiegata)

7 min di lettura

La similarità coseno tra due testi è un numero da 0 a 100% che misura quante parole rilevanti i due testi hanno in comune, non quanto si somigliano nel significato. Un punteggio del 74% segnala che due pagine condividono quasi tutto il vocabolario che conta, il classico sintomo di un contenuto riscritto in fretta. Un punteggio del 6%, invece, può uscire anche da due testi che dicono esattamente la stessa cosa con parole completamente diverse. Qui sotto vedi entrambi i casi con numeri veri, verificabili incollandoli tu stesso nello strumento più in basso.

Come viene calcolato il punteggio

Il procedimento è più semplice di quanto suoni. Prima il testo viene messo in minuscolo e ripulito dalla punteggiatura, poi diviso in singole parole. Le parole di una sola lettera e le parole più comuni della lingua (articoli, preposizioni, congiunzioni) vengono scartate, perché comparirebbero ovunque e non aiutano a distinguere un testo dall’altro.

Quello che resta diventa un vettore di frequenza: per ogni testo si conta quante volte compare ciascuna parola rimasta. A questo punto lo strumento calcola la similarità coseno tra i due vettori, cioè il prodotto scalare diviso per il prodotto delle due lunghezze (in termini pratici: quanto i due elenchi di parole, con i loro conteggi, puntano nella stessa direzione). Il risultato è sempre tra 0 e 1, e viene mostrato come percentuale da 0 a 100%.

Un punto da tenere a mente: questo non è un modello di embedding vero e proprio, non capisce il significato delle frasi. Conta solo parole letterali condivise. Il calcolo gira interamente nel browser, quindi il testo che incolli non viene mai inviato a nessun server.

Esempio 1: due annunci di prodotto riscritti

Immagina di controllare se hai accidentalmente duplicato la tua stessa scheda prodotto. Incolla questi due testi nello strumento (restano in inglese perché sono l’esempio verificato di questo articolo: lo strumento funziona con testo in qualsiasi lingua, italiano compreso).

Testo A: “Buy affordable wireless bluetooth headphones with active noise cancellation and thirty hour battery life. Free shipping on every order today.”

Testo B: “Shop cheap wireless bluetooth headphones featuring active noise cancellation and a thirty hour battery. Enjoy free shipping on every order this week.”

Il risultato è 74% di similarità, fascia “alta”. Ecco perché:

CategoriaParole
Condivise (13)active, battery, bluetooth, cancellation, every, free, headphones, hour, noise, order, shipping, thirty, wireless
Solo nel testo A (4)affordable, buy, life, today
Solo nel testo B (5)cheap, enjoy, featuring, shop, week

I due annunci sembrano diversi a una lettura veloce: cambia il verbo iniziale (Buy contro Shop), qualche aggettivo (affordable contro cheap), il finale (today contro this week). Ma la sostanza, il prodotto descritto e le sue caratteristiche, resta identica parola per parola. Tredici termini condivisi su un totale relativamente piccolo di parole significative bastano a spingere il punteggio al 74%, sopra la fascia “moderata” e vicino alla soglia con cui lo strumento segna la similarità “alta”. Questo è esattamente lo scenario che il punteggio cattura bene: una riscrittura pigra, fatta cambiando poche parole di superficie.

Esempio 2: stesso contenuto, vocabolario diverso

Ora il caso opposto, quello che mostra il limite dello strumento. Il testo C è identico al testo A qui sopra. Il testo D dice, in sostanza, la stessa cosa, ma con parole completamente diverse:

“Our over ear audio devices block outside sound automatically and last more than a full day per charge, and delivery costs nothing no matter what you order.”

Il risultato tra testo C e testo D è 6% di similarità, fascia “bassa”. L’unica parola condivisa è “order”.

Un lettore umano riconosce subito che parlano della stessa cosa: cuffie che bloccano il rumore esterno, batteria che dura tutto il giorno, spedizione gratuita. Ma “wireless bluetooth headphones” contro “over ear audio devices”, “noise cancellation” contro “block outside sound”, “thirty hour battery” contro “last more than a full day per charge”: non c’è quasi nessuna parola letterale in comune, quindi il punteggio crolla al 6%, anche se il contenuto è praticamente lo stesso.

Il confronto tra i due esempi è il punto centrale da portarsi a casa: un punteggio alto è un segnale forte di sovrapposizione, ma un punteggio basso non significa affatto che il contenuto sia originale. Significa solo che le parole usate sono diverse. Per questo lo strumento è ottimo per intercettare duplicazioni sciatte, come nell’esempio 1, ma non va usato come rilevatore di plagio contro un testo riscritto bene, come nell’esempio 2.

Le fasce di punteggio

Lo strumento classifica il risultato in quattro fasce:

PunteggioFasciaSignificato pratico
70% e oltreAltaVocabolario quasi identico, controlla se è una riscrittura minima
40-69%ModerataOverlap significativo, vale la pena leggere quali parole coincidono
1-39%BassaPoche parole in comune, ma non garantisce che i testi siano diversi nel contenuto
0%NessunaNessuna parola significativa condivisa dopo la rimozione delle parole comuni

Controlla i tuoi testi

Incolla due testi qualsiasi e vedi il punteggio in tempo reale, insieme all’elenco delle parole condivise e uniche a ciascun testo:

Inserisci entrambi i testi per calcolare la similarità

Similarità coseno TF · stop words rimosse · gira nel browser

Calcolatore di Similarità Testuale
Gratis, senza registrazione, su qualsiasi dispositivo.
Apri lo strumento completo

Errori comuni e casi limite

Trattarlo come un modello di embedding vero. Non capisce il significato, conta solo parole letterali condivise. L’esempio 2 qui sopra lo dimostra con numeri reali: stesso contenuto, punteggio bassissimo, perché il vocabolario è diverso.

Fidarsi di un punteggio basso per concludere che un testo è originale. Una parafrasi ben fatta può scendere vicino allo 0% pur essendo, di fatto, una copia nei contenuti. Il punteggio dice quanto le parole coincidono, non quanto le idee coincidono.

Confrontare un testo breve con una pagina molto più lunga e aspettarsi un punteggio alto. Anche se lo snippet è contenuto per intero dentro la pagina lunga, tutto il vocabolario extra della pagina diluisce il punteggio complessivo. Un frammento di tre frasi contro un articolo di duemila parole raramente supera il 20-30%, anche se quelle tre frasi sono state copiate parola per parola.

Non considerare che le parole comuni vengono rimosse prima del calcolo. Articoli, preposizioni e congiunzioni non contano. Un testo molto breve composto quasi solo da parole comuni può legittimamente dare 0%, anche se a occhio le due frasi sembrano vagamente simili.

Domande frequenti

In cosa differisce da un vero modello di embedding, tipo text-embedding-3 di OpenAI? Un modello di embedding vero trasforma il testo in un vettore che rappresenta il significato, allenato su enormi quantità di testo, e riesce a riconoscere che “cuffie wireless” e “auricolari senza fili” parlano della stessa cosa anche senza parole in comune. Questo strumento conta solo parole condivise dopo aver rimosso quelle più comuni: è più semplice, gira istantaneamente nel browser, ma non ha alcuna comprensione del significato. L’esempio 2 di questo articolo mostra esattamente dove finisce la sua capacità.

Che punteggio dovrebbe preoccuparmi per un problema di contenuto duplicato in ottica SEO? La fascia “alta”, dal 70% in su, è quella da prendere sul serio: di solito indica una riscrittura minima dello stesso testo di partenza. Detto questo, non fermarti al numero: guarda anche l’elenco delle parole condivise e uniche che lo strumento mostra, così capisci se la sovrapposizione riguarda termini centrali del contenuto o solo parole generiche di contorno.

Riesce a scoprire un plagio riscritto bene? No. Nell’esempio 2 di questo articolo, un testo che dice praticamente la stessa cosa dell’originale, ma con vocabolario diverso, ottiene solo il 6% di similarità. Per rilevare plagio parafrasato serve un modello di embedding semantico vero, non un confronto basato su parole condivise.

Le parole comuni vengono conteggiate nel punteggio? No, vengono rimosse prima del calcolo insieme alle parole di una sola lettera. Il punteggio si basa solo sulle parole ritenute significative, quelle che effettivamente distinguono un testo dall’altro.

Il mio testo viene inviato a un server? No. Tutto il calcolo avviene localmente nel tuo browser. Il testo che incolli non lascia mai il tuo dispositivo.

Posso condividere un link con i miei testi già inseriti? Da questa pagina no, il widget qui sopra è incorporato nell’articolo. Per ottenere un link che precompila entrambi i testi, apri la pagina completa dello strumento: lì trovi anche l’opzione per generare un link condivisibile.

Similarità TestualeContenuto DuplicatoSimilarità CosenoSEO
Calcolatore di Similarità Testuale
Ora provalo tu stesso con lo strumento completo.
Prova ora