OpenAI Privacy Filter - Masquez vos données perso en local
OpenAI vient de sortir un modèle open source qui repère et masque les données perso dans un texte, et le plus marrant, c'est qu'il tourne chez vous, pas chez eux. Ça nous change ^^.
Ça s'appelle Privacy Filter , c'est sous licence Apache 2.0, et ce modèle chope les infos sensibles : noms, emails, téléphones, adresses, numéros de compte, dates perso, et même les secrets genre clés d'API ou tokens.
Il se compose de 1,5 milliard de paramètres au total, ce qui est tout petit, du coup ça tient sur un laptop et peut même tourner dans un navigateur via transformers.js. Et à chaque token, seulement 50 millions de paramètres bossent vraiment, puisque le modèle pioche dans ses "experts" au lieu de tout activer... donc c'est ultra rapide. Et vos données, elles, ne partent jamais en ligne, donc pour de la donnée sensible, c'est tip top !
Côté usage, c'est 3 lignes :
import { pipeline } from "@huggingface/transformers";
const filter = await pipeline("token-classification", "openai/privacy-filter");
await filter("My name is Korben and my email is [email protected]");
Au premier appel, transformers.js télécharge le modèle, et après localement, le modèle vous ressort chaque bout de texte étiqueté comme perso (ça c'est un nom, ça un email...etc) et comme ça, vous n'avez plus qu'à les remplacer par des balises avant de balancer le tout dans un LLM ou dans des logs par exemple.
La classification "secret" attrape les clés d'API et les tokens qui traînent, bref, tout ce qu' un dev peut oublier dans son code (oui, ça arrive ^^ hein). C'est la classification qui me semble la plus utile au quotidien.
Alors comment ça fonctionne ? Hé bien le modèle lit toute la phrase d'un coup au lieu de cracher du texte mot par mot comme un ChatGPT, puis recolle les morceaux avec un décodeur Viterbi pour éviter de couper un nom en deux. Il avale jusqu'à 128 000 tokens de contexte, et vous pouvez régler le curseur précision/rappel via des presets fournis : soit il masque large, quitte à raturer un mot innocent, soit il la joue finement. Pratique donc selon que vous bossiez sur du dossier médical ou un ticket de support random.
Notez que c'est pas le premier sur le créneau. Par exemple Microsoft Presidio fait du masquage PII depuis des années, gère plus de langues, et sait même bosser sur les images et les données structurées. Là où Privacy Filter marque des points, je trouve, c'est le contexte car il distingue mieux un nom de famille du même mot employé autrement, alors qu'une simple regex se vautre à 100%.
Après c'est surtout calibré pour l'anglais, donc sur du français ou des formats régionaux ça peut louper des trucs. Donc vérifiez bien le résultat avant de vous reposer entièrement dessus. Mais ça reste un bon filet de sécurité même si c'est pas une garantie d'anonymat béton.
Sachez aussi que pour changer la liste des catégories détectées c'est possible, mais faudra repasser par du fine-tuning.
Bref, voir que de temps en temps OpenAI continue de publier des outils open source qui tournent en local, c'est toujours une bonne surprise !
Bref, si vous manipulez de la donnée perso, allez jeter un œil, c'est par ici .
