YecoAI

Yeco-PII 2.0

Seconda generazione del nostro modello PII da 278M: 30 tipi di entità, F1 medio 0,97 su sei lingue europee contro 0,80 dell’OpenAI Privacy Filter (1,5B) e 0,67 di Rizzo-PII (0,3B). Release firmata crittograficamente.

Copertina Yeco-PII v2.0

Presentiamo Yeco-PII 2.0, la seconda generazione del nostro modello che riconosce e anonimizza i dati personali nei testi. È più preciso, riconosce più tipi di dati e batte modelli molto più grandi, soprattutto sull'italiano. Con questa versione apriamo anche il programma di fine-tuning dedicato: partendo da questa base addestriamo varianti su misura per i campi specifici di ogni azienda.

Motivazione: chiudere i gap che la v1.0 aveva lasciato aperti

La v1.0 aveva dimostrato la tesi: il contesto batte i checksum. Ma l’analisi degli errori era onesta, e i gap erano documentati. Nei log tecnici gli indirizzi IPv6 passavano invisibili. Gli username generati senza struttura name-based (quelli veri, user447198, txgmssfpc284937) sfuggivano se non somigliavano a un nome.cognome. Le password in chiaro nei ticket di supporto non erano tipizzate. E in ambito bancario, l’“ultima carta terminante in 4821” veniva scambiata per un CAP.

La diagnosi è stata più interessante dei singoli fix: il dataset di addestramento della v1.0, basato su righe reali annotate da terzi, lasciava volutamente fuori proprio quelle categorie, e il modello aveva imparato a ignorarle. Non era un limite di architettura, ma di verità nel training data. La 2.0 nasce da un dataset ricostruito da zero (154.000 documenti, zero errori dopo validazione automatica di ogni span), in cui ogni categoria ha esempi reali, esempi sintetici contrastivi (stessa superficie, label opposta a seconda del contesto: “Via Roma 42” di un cliente vs “Via Roma” citata come esempio) e negativi ostili (MAC address, UUID, DOI e coefficienti tecnici che non vanno toccati). La 2.0 non è un aggiornamento incrementale: è la generazione su cui si è chiuso il cerchio della ricerca, con rilevazione contestuale pura, nessuna regex e copertura completa degli identificativi digitali e fisici che dominano i documenti reali.

Modello e metodologia

Yeco-PII 2.0 è un encoder da 278M di parametri, fine-tuned per il riconoscimento di entità a livello di token su 30 tipi protetti: nomi, organizzazioni, codici fiscali, partite IVA, IBAN, carte di credito e ultime 4 cifre, email, telefoni, date di nascita vs date di riferimento, indirizzi completi, CAP, province, paesi, età, genere, importi, riferimenti documento, targhe, dati catastali, URL, IPv4 e IPv6, username, password in chiaro, coordinate GPS e altro. Il modello è un full fine-tuning di XLM-RoBERTa base, usato come punto di partenza. È distribuito in formato HuggingFace standard (~1,1 GB), con una versione ONNX quantizzata int8 (278 MB) per CPU, e un motore di policy che trasforma la detection in redazione pronta per la produzione.

La novità più richiesta dai nostri partner enterprise: ogni file del pacchetto release è firmato crittograficamente (ECDSA). Con la chiave pubblica che forniamo, il vostro reparto IT verifica con un solo comando che il modello installato è esattamente quello validato da YecoAI: immutato, senza sostituzioni lungo la catena di distribuzione. Provenienza dimostrabile, non dichiarata.

Benchmark: stesso test per ogni modello, protocollo esteso

La valutazione usa righe reali mai viste in training, annotate da terzi (Ai4Privacy), con lo stesso set per ogni modello, ora con il gold esteso ai 30 tipi, incluso ciò che la generazione precedente non vedeva.

Il risultato: F1 medio 0,97 su sei lingue europee contro 0,80 dell’OpenAI Privacy Filter (1,5B, 5,4× più grande) e 0,67 di Rizzo-PII (0,3B), e 0,98 sull’italiano, la nostra lingua primaria.

  • Vittorie su tutte e sei le lingue, con italiano nativo a 0,98.
  • Il confronto con OpenAI è type-agnostic: al modello concorrente viene accreditata l’entità corretta anche quando sbaglia il tipo, il protocollo più favorevole possibile, e vincevamo comunque di 18 punti.
  • Sui tipi digitali il salto è netto: IP detection 1.00 (era 0.00 nella v1.0 su dati reali), username 0.99, orari 0.99, email 1.00.
  • Suite avversariale con valori rigenerati a ogni esecuzione (out-of-sample, mai visti in addestramento): F1 0,95, precisione 0,985, con soli 3 falsi positivi su 220+ predizioni.
F1 di detection PII su sei lingue europee
Benchmark Ai4Privacy, più alto è meglio, media su sei lingue inclusa
YecoAI
Annotazioni indipendenti, stesso set di test per ogni modello.
Risultati completi dei benchmark
F1 sul benchmark Ai4Privacy, stesso set di test per ogni modello
LinguaYeco-PII 2.0 (278M)Rizzo-PII (0.3B)OpenAI Privacy Filter (1.5B)
Italian0.980.680.80
English0.960.690.79
French0.990.670.80
German0.990.670.80
Spanish0.990.720.81
Dutch0.940.600.78
Media 6 lingue0.970.670.80

Cosa rileva (30 tipi) e con che accuratezza

Rispetto alla v1.0 i tipi passano da 24 a 30: aggiunti indirizzi IPv6, username, password in chiaro, paese, coordinate GPS e ultime 4 cifre della carta.

F1 per tipo di entità
30 tipi protetti; * e n/c spiegati nella nota sotto la tabella
EntitàF1
Nome e cognome0.97
Codice fiscale*1.00
Partita IVA*1.00
IBAN*1.00
Carta di credito*1.00
Ultime 4 cifre carta*1.00
Codice catastale*1.00
Targa*1.00
Documento/pratica0.98
Email1.00
Telefono/fax0.98
Indirizzo IP v4/v61.00
Username0.99
URL*1.00
Via/piazza0.96
Numero civico0.96
CAP0.96
Città0.96
Provincia0.95
Paese0.94
Coordinate GPS0.90
Data di riferimento0.97
Data di nascita0.96
Orario0.99
Età*1.00
Genere0.99
Organizzazione*1.00
Importo*1.00

* Tipo non presente nel set reale Ai4Privacy: valore dalla suite avversariale v2 (campioni sintetici, indicativi). n/c = non ancora certificato (Password in chiaro, Riferimento documento): password e riferimenti documento sono i tipi più rari nel training; se sono critici per il vostro caso d'uso, richiedete una valutazione dedicata.

Analisi degli errori: ciò che il modello perde ancora

Il resoconto onesto include i mancati. Restano tre aree: contesti ultracorti (un IBAN isolato in una frase di tre parole scende sotto la soglia di confidenza; nei documenti reali non accade), date verbali parzialmente strutturate in prosa legale complessa, ed entità spezzate da artefatti di formattazione (un “M. Greco” riconosciuto come singolo token). Nessuno è un limite di architettura: tutti sono nel pool hard del prossimo ciclo di dati, e il primo è documentato come comportamento noto nella model card.

Dalla detection alla policy di anonimizzazione

Come nella v1.0, il motore di policy trasforma gli span in azioni: mascheramento con tag di tipo ([IBAN], [FULLNAME]), sostituzione con surrogati che preservano il formato, o mappature coerenti per cliente su interi corpus. Le policy si definiscono in JSON o in linguaggio naturale e si applicano senza riaddestramento.

Il programma di fine-tuning: la base è questa, i vostri campi si aggiungono

Questa è la parte che ci differenzia da chi vende un modello chiuso. Yeco-PII 2.0 è, con ogni probabilità, il nostro modello PII finale come generazione: la base (architettura, dataset multilingua, i 30 tipi) resta questa e rimane la fondazione di tutte le varianti. Da qui in avanti il miglioramento arriverà dalla specializzazione, non dalla generazione: le aziende e le banche che ci contattano ci indicano i campi specifici che mancano al loro dominio. Ciò che varia è la coda, e la coda è vostra:

  • Una banca può aver bisogno di riconoscere numeri di pratica interni, codici filiale o formati di conti correnti propri.
  • Un’assicurazione avrà numeri di polizza e sinistri.
  • Un HR-tech avrà matricole, badge, referenze contrattuali.

Contattateci a [email protected]: raccogliamo i campi specifici che il vostro dominio richiede, generiamo il dataset di specializzazione e addestriamo una variante fine-tuned della base 2.0, consegnata firmata, con i vostri tipi di dato come entità di prima classe. Un ciclo di specializzazione costa poche ore di GPU: iterare è economico, e il modello resta vostro, nel vostro perimetro.

Deployment e licenza

Il primo passo è un trial API sui documenti del cliente; la licenza è a pagamento una tantum con consegna on-premises (HuggingFace, ONNX, ONNX int8 o GGUF, tutti firmati). Il modello gira interamente nel perimetro del cliente, senza costi a richiesta e senza egress dei dati. Dentro YecoAI, Yeco-PII resta il layer di privacy di DeskNexo.

Limitazioni

  • Sei lingue certificate (IT/EN/FR/DE/ES/NL); fuori da queste, la qualità non è testata.
  • I documenti immagine senza OCR sono fuori scope: la pipeline è testuale.
  • Le “categorie particolari” ex art. 9 GDPR (salute, biometria, opinioni) non sono tipizzate: Yeco-PII rileva identificativi di persone fisiche. Supporta la compliance; non è una certificazione.
  • Titoli onorifici e unità indirizzo secondarie non sono tipizzati.
  • L’F1 medio 0,97 copre sei lingue e 30 tipi; le performance per tipo e per lingua sono documentate nella model card per i clienti con licenza.

Conclusione

La v1.0 aveva dimostrato che il problema della PII premia la comprensione più della scala. La 2.0 chiude il cerchio: 30 tipi di dato, F1 0,97 su sei lingue, robustezza avversariale misurata, provenienza firmata crittograficamente, e un modello di evoluzione dichiarato: la base è definitiva, la specializzazione è del cliente. Per le organizzazioni con obbligo di compliance, hosting, sanità, banking, PA, il risultato è pratico: anonimizzazione di livello GDPR che sta in una VM, licenziata una volta, in esecuzione dove i dati già vivono.

Il contesto batte i checksum, e un buon dataset batte un modello più grande. La privacy è un problema di linguaggio: questa è la nostra risposta, e probabilmente l’ultima che vi servirà dalla serie PII. Portateci i vostri campi mancanti: la base è pronta.

Contenuti correlati