--- license: mit language: - it base_model: rizzoaiacademy/rizzo-pii-0.3B pipeline_tag: token-classification library_name: transformers.js tags: - token-classification - pii - ner - italian - anonymization - privacy - onnx - faberia --- # faberia-riservatezza-it Rilevatore locale dei dati personali italiani usato dalla **Riservatezza** di [Faberia](https://github.com/MORPHEUS-MDC/FABERIA): trova nomi e cognomi, aziende, email, telefoni, indirizzi, codice fiscale, partita IVA, IBAN, targhe e documenti nei testi, prima che una richiesta parta verso un'AI cloud. Gira sul computer con [transformers.js](https://huggingface.co/docs/transformers.js) e ONNX Runtime: il testo non lascia mai il computer. ## Da dove viene È **[rizzo-pii-0.3B](https://huggingface.co/rizzoaiacademy/rizzo-pii-0.3B)** di Simone Rizzo — Rizzo AI Academy (MIT, base mmBERT/ModernBERT, 22 etichette), revisione `d4f989333bcda1fcb188785a12937b0f52b52580`, convertito in ONNX senza modifiche ai pesi. Il merito del modello è degli autori originali; questa copia esiste solo per poterlo usare dentro Faberia. ## Conversione verificata Conversione e prove: `scripts/faberia/riservatezza/converti_rizzo.py` nel repository di Faberia. Il modello ONNX è stato confrontato con l'originale PyTorch su testi italiani di prova: | Variante | Etichette uguali all'originale | Esito | | --- | --- | --- | | fp32 (`onnx/model.onnx` + `onnx/model.onnx_data`, 1,2 GB) | 100% (differenza massima dei logit 0,00025) | **pubblicata** | | int8 | 98,4% | scartata (sbagliava casi limite) | I pesi stanno in un file a parte (`model.onnx_data`, «external data» di ONNX): sono gli stessi byte del modello verificato, ma ONNX Runtime li legge dal disco invece di tenerne due copie in memoria (circa 3 GB → meno di 1 GB). Esito completo in `verifica.json`. Faberia usa i file solo se le loro impronte SHA-256 coincidono con quelle scritte nel proprio codice: ``` onnx/model.onnx ccb9cf4dfe109ac5202993943d17e1fa45ba55ae890ae775cdb9e1866f8f3b58 onnx/model.onnx_data dc7dbe401863292ebf1e7e396fd438424891b83fc6f2b877247b2550a7418b24 ``` ## Uso con transformers.js ```js import { pipeline } from "@huggingface/transformers"; const rileva = await pipeline("token-classification", "MORPHEUS-MDC/faberia-riservatezza-it", { dtype: "fp32", use_external_data_format: true }); await rileva("Il signor Mario Rossi, CF RSSMRA80A01H501U, abita in via Roma 12.", { aggregation_strategy: "simple" }); ``` ## Limiti Come ogni rilevatore automatico può non trovare tutto: Faberia lo affianca a un elenco di nomi, regole fisse, un secondo modello e un secondo controllo prima dell'invio. Non usarlo come unica garanzia per dati sensibili. ## Licenza e citazione MIT — © 2026 Simone Rizzo, Rizzo AI Academy (modello originale); conversione © 2026 Studio De Carlo. Vedi `LICENSE`. ```bibtex @software{rizzo_pii_2026, author = {Simone Rizzo}, title = {rizzo-pii: local reversible PII anonymization for Italian legal text}, year = {2026}, url = {https://huggingface.co/rizzoaiacademy/rizzo-pii-0.3B} } ```