Benchmark
· 5 min di lettura

Presidio alla prova: cosa resta leggibile in 48 documenti

Di Amine Gaaliche · bozza scritta con Claude, riletta e corretta a mano

Per giudicare uno strumento di anonimizzazione si conta quante parole contenenti dati personali lascia leggibili. Nell'ottobre 2026 lo abbiamo fatto su 48 documenti in 8 lingue, con ogni dato personale etichettato parola per parola. Presidio, nell'installazione predefinita con i modelli grandi di spaCy, ha lasciato leggibili 1.327 parole sensibili su 4.489, contro le 92 di promptShield 1.4.1. Documenti, etichette, risultati grezzi e script sono pubblici: chiunque può ripetere il test.

Che cosa conviene misurare

La cifra utile, per uno strumento di anonimizzazione, è il numero di parole sensibili che lascia leggibili. Accanto a questo dato conta anche il numero di porzioni di testo innocue che segnala per errore. Ciascuna va poi controllata e tolta a mano.

Un semplice conteggio delle rilevazioni non dice nulla di tutto questo: mette insieme dati personali veri e segnalazioni sbagliate, senza distinguerli. Dieci evidenziazioni possono coprire dieci dati personali oppure nessuno.

Il nostro primo confronto, nel maggio 2026, contava proprio le rilevazioni, senza un elenco di riferimento dei dati da trovare. Poiché era la misura sbagliata, lo abbiamo rifatto su un corpus in cui ogni parola sensibile è etichettata.

Il corpus e le condizioni del test

I 48 documenti sono fittizi e sono stati scritti per questo test. Per ciascuna lingua ci sono un contratto, una fattura, un estratto conto, una lettera del medico, una comunicazione dell'ufficio del personale e una lettera fra studi legali. Nessuno contiene dati di clienti reali.

Le etichette coprono nomi, organizzazioni, indirizzi postali, numeri identificativi, IBAN, numeri di telefono, date di nascita e indirizzi e-mail. Fra i numeri identificativi rientrano i numeri dei documenti d'identità, i codici fiscali, i numeri di registrazione delle imprese, i numeri di conto e i codici paziente. In un documento italiano sono, per esempio, il codice fiscale, la partita IVA o il numero di tessera sanitaria.

I due strumenti hanno letto lo stesso testo estratto. Presidio 2.2.364 è stato eseguito con i riconoscitori integrati e un modello spaCy per lingua. Nessun riconoscitore personalizzato, nessuna soglia di confidenza. promptShield 1.4.1 ha usato le impostazioni predefinite del pulsante "Rileva".

Le parole sensibili rimaste leggibili

Con i modelli grandi di spaCy, Presidio ha individuato il 70,4% delle parole sensibili e ne ha lasciate leggibili 1.327. Con i modelli piccoli la quota scende al 64,7% e le parole leggibili salgono a 1.583. promptShield ne ha lasciate leggibili 92, cioè ne ha individuato il 98,0%.

Documento per documento, la differenza è netta. promptShield ha restituito 24 documenti su 48 senza alcuna parola sensibile leggibile, Presidio nessuno.

Ecco la percentuale di dati individuati per categoria, con Presidio (modelli grandi) a confronto con promptShield 1.4.1:

CategoriaPresidio (modelli grandi)promptShield 1.4.1
Nomi87%98%
Organizzazioni57%98%
Indirizzi postali50%98%
Numeri identificativi37%95%
IBAN79%100%
Numeri di telefono78%98%
Date di nascita72%100%
Indirizzi e-mail100%99%

Le lacune di Presidio si concentrano sui numeri identificativi e sugli indirizzi. Sono i dati più rischiosi: un codice fiscale leggibile basta a identificare una persona. Sugli indirizzi e-mail, invece, Presidio fa leggermente meglio.

Il lavoro di revisione

Il secondo dato da misurare sono le evidenziazioni errate. Abbiamo contato le porzioni di testo innocue segnalate come dati personali, ciascuna una sola volta. Presidio ne produce 9,8 per documento con i modelli grandi e 13,7 con i piccoli. promptShield ne produce 1,9.

In promptShield la revisione resta obbligatoria. Un file con aree protette non si può scaricare finché le aree non sono state verificate nella Revisione. Se si tenta il download prima, l'app spiega che cosa blocca il file e apre la finestra di revisione.

I limiti del test

Presidio è stato usato così come si presenta appena installato. Una versione messa a punto, con riconoscitori personalizzati e una soglia di punteggio, farebbe meglio. Di quanto, questo test non lo dice.

Documenti ed etichette sono stati scritti da agenti di IA, uno per lingua, a partire da una specifica di etichettatura pubblicata. Gli agenti non avevano accesso al codice di rilevamento di promptShield. Le etichette sono state controllate con uno script, non da un annotatore umano.

Il corpus è composto da PDF puliti, generati direttamente in digitale e non scansionati. Le scansioni e gli errori di OCR non sono misurati: per questi casi c'è un articolo sulle scansioni. Nessuno strumento individua ogni dato, il nostro compreso: 92 parole sono rimaste leggibili, e per questo è prevista la revisione.

Per il polacco è stato necessario un adattamento. Presidio legge le entità polacche di spaCy solo se si aggiunge una tabella che collega le etichette del modello polacco a quelle di Presidio. Senza questa tabella non trova alcun nome polacco e individua il 20,5%. Con la tabella arriva al 64%, promptShield al 97%.

Come si è arrivati al 98%

La versione 1.0.14 di promptShield, del giugno 2026, individuava il 74,3% sulle sette lingue di allora. Le evidenziazioni errate erano 4,5 per documento. Era più o meno la quota di Presidio, ma con meno segnalazioni errate.

Fra il 30 settembre e il 2 ottobre 2026, quattro interventi successivi sul rilevamento hanno cambiato il quadro. Con la versione 1.3.4 la quota è salita al 98,1% e le evidenziazioni errate sono scese a 2,0 per documento. Da allora il livello è stabile. Il polacco è escluso da questa serie, perché è arrivato con la 1.4.0.

Il rilevamento procede per livelli. Le espressioni regolari trovano i formati precisi, come IBAN e codice fiscale. Un modello di riconoscimento delle entità (spaCy, BERT o GLiNER, secondo la configurazione) cerca nomi, organizzazioni e indirizzi. A questi si può aggiungere un livello LLM facoltativo, disattivato per impostazione predefinita.

I risultati vengono uniti, privati dei doppioni ed estesi alle altre pagine: un nome trovato a pagina 1 viene contrassegnato anche a pagina 4. Infine un filtro elimina le segnalazioni superflue. Le ragioni per cui abbiamo sviluppato un nostro motore sono spiegate in un altro articolo.

Quando scegliere Presidio

Presidio è un buon software. È nato in casa Microsoft e oggi è gestito dalla comunità open source. Per molti progetti resta la scelta giusta.

Conviene sceglierlo per analizzare flussi di testo in una pipeline Python. È adatto anche quando si vuole controllare ogni passaggio direttamente nel codice, o usare analizzatori cloud attraverso un'unica interfaccia. Se Lei ha già Presidio in produzione e un team che scrive riconoscitori, otterrà risultati migliori di quelli misurati qui.

promptShield ha uno scopo più circoscritto: anonimizza singoli documenti su un solo computer. Il documento non lascia il computer, quindi per la fase di anonimizzazione non serve un responsabile del trattamento esterno, né il contratto previsto dall'art. 28 GDPR.

Il titolare del trattamento può così dimostrare al Garante per la protezione dei dati personali dove sono passati i dati. Per un avvocato, l'atto coperto da segreto professionale resta nello studio.

Che cosa fa promptShield

Dopo il rilevamento, promptShield propone due azioni. "Codifica" sostituisce ogni valore con un codice breve e reversibile, la cui prima lettera indica il tipo: P per una persona, B per un IBAN. "Rimuovi" elimina il valore in modo definitivo.

All'interno di una cartella lo stesso valore riceve sempre lo stesso codice. Solo un codice assegnato manualmente vale in tutte le cartelle. Nell'esportazione, anche le parti nascoste del PDF contengono il codice, se il valore è stato codificato, oppure un segnaposto neutro, se è stato rimosso. I piani disponibili sono descritti nella pagina dei prezzi.

Ripetere il test

Tutto il materiale è nel repository pubblico promptshield-Inc/pii-detection-benchmarks su GitHub. Contiene i documenti, le etichette, l'output grezzo dei due strumenti e lo script di calcolo. Presidio si può rieseguire senza installare promptShield.

Grafici, cronologia delle versioni e metodo sono nella pagina di confronto con Presidio. I risultati di questo articolo si possono verificare con le etichette e lo script pubblicati.

Domande frequenti

Presidio è abbastanza preciso per anonimizzare documenti?

Nel nostro test dell'ottobre 2026 Presidio, installato con le impostazioni predefinite e i modelli grandi di spaCy, ha lasciato leggibili 1.327 parole sensibili su 4.489. Le lacune maggiori riguardano numeri identificativi e indirizzi. Con riconoscitori personalizzati farebbe meglio.

Quando conviene scegliere Presidio?

Quando si lavora in Python su flussi di testo e si vuole controllare ogni passaggio nel codice, o usare analizzatori cloud attraverso un'unica interfaccia. Per anonimizzare un documento su un solo computer, promptShield è lo strumento più diretto.

Posso ripetere il test da solo?

Sì, tutto il materiale è pubblico nel repository GitHub promptshield-Inc/pii-detection-benchmarks: documenti, etichette, output grezzi e script di calcolo. Presidio si può rieseguire senza installare promptShield.

Configurando Presidio si colmerebbe il divario?

Presidio otterrebbe risultati migliori di quelli misurati qui, dove lavorava solo con i riconoscitori integrati e senza alcuna soglia. Quanto meglio, questo test non lo misura. Con lo script pubblicato lo si può verificare sulla propria installazione di Presidio.

Ti è stato utile? Faccelo sapere.

Condividi