Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
privacy-filter — Modèle de classification de tokens bidirectionnel pour la détection et le masquage des données personnelles (PII) dans le texte, avec une interface en ligne de commande pour la rédaction, l'évaluation et l'affinage sur site. | Kitploit
Outils/GitHubGitHub/openai/privacy-filter
Outils DéfensifsExfiltration de DonnéesCollecte d'InformationsProtection de la Vie PrivéeDétection de SecretsApprentissage AutomatiqueSécurité de l'IA
GitHubopenai/privacy-filter

privacy-filter

Modèle de classification de tokens bidirectionnel pour la détection et le masquage des données personnelles (PII) dans le texte, avec une interface en ligne de commande pour la rédaction, l'évaluation et l'affinage sur site.

Voir le dépôt
2.7k24527il y a 5 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

OpenAI Privacy Filter

OpenAI Privacy Filter est un modèle de classification de tokens bidirectionnel pour la détection et le masquage d'informations personnellement identifiables (PII) dans le texte. Il est destiné aux flux de travail de désinfection de données à haut débit où les équipes ont besoin d'un modèle qu'elles peuvent exécuter sur site, rapide, sensible au contexte et ajustable.

OpenAI Privacy Filter est pré-entraîné de manière autorégressive pour aboutir à un checkpoint dont l'architecture est similaire à gpt-oss, bien que de taille plus réduite. Nous avons ensuite converti ce checkpoint en un classificateur de tokens bidirectionnel sur une taxonomie de labels de confidentialité, puis effectué un post-entraînement avec une perte de classification supervisée. (Pour les détails d'architecture concernant gpt-oss, veuillez consulter la fiche modèle gpt-oss.) Au lieu de générer du texte token par token, ce modèle étiquette une séquence d'entrée en une seule passe avant, puis décode des spans cohérents avec une procédure de Viterbi contrainte. Pour chaque token d'entrée, le modèle prédit une distribution de probabilité sur la taxonomie de labels, qui se compose de 8 catégories de sortie décrites ci-dessous.

Points forts :

  • Licence permissive Apache 2.0 : idéale pour l'expérimentation, la personnalisation et le déploiement commercial.
  • Taille réduite : fonctionne dans un navigateur web ou sur un ordinateur portable – 1,5 milliard de paramètres au total et 50 millions de paramètres actifs.
  • Ajustable : adaptez le modèle à des distributions de données spécifiques grâce à un finetuning simple et économe en données.
  • Contexte long : une fenêtre de contexte de 128 000 tokens permet de traiter de longs textes avec un haut débit et sans découpage.
  • Contrôle à l'exécution : configurez les compromis précision/rappel et les longueurs de spans détectés via des points de fonctionnement prédéfinis.

Ce dépôt

Ce dépôt contient le code local, la CLI et les ressources d'exemple utilisés pour exécuter, évaluer et finetuner les checkpoints Privacy Filter. Il est destiné aux équipes qui souhaitent inspecter directement l'implémentation et exploiter le modèle dans leur propre environnement.

Ressources du dépôt : Licence et Politique de sécurité.

Comment l'utiliser

  1. Installez le paquet localement :
pip install -e .

Après cela, vous disposerez d'un script Python opf qui peut être exécuté directement ou via python -m opf. Le script peut être utilisé de 3 manières distinctes, comme décrit ci-dessous.

  1. Exécuter une rédaction ponctuelle :

Par défaut, opf recherche un modèle dans le répertoire pointé par la variable OPF_CHECKPOINT, ou ~/.opf/privacy_filter. Si aucun modèle n'est trouvé à l'emplacement ~/.opf/privacy_filter, il sera téléchargé.

opf "Alice was born on 1990-01-02."

Le code prend en charge l'exécution à la fois sur GPU (par défaut) et sur CPU. Pour exécuter sur CPU, utilisez le flag --device cpu :

opf --device cpu "Alice was born on 1990-01-02."

Pour remplacer le checkpoint par défaut, passez --checkpoint :

opf --checkpoint /path/to/checkpoint_dir "Alice was born on 1990-01-02."

Le mode rédaction prend en charge la rédaction d'un fichier entier en une seule fois

opf -f /path/to/file

La rédaction peut également être effectuée via des pipes, pour prendre en charge des one-liners complexes :

cat /path/to/file | grep -e 'some_pattern' | opf

Si aucune entrée n'est fournie, opf démarrera en mode interactif. Dans ce mode, pour chaque exemple d'entrée, la CLI affiche une sortie JSON structurée, en utilisant des aperçus colorés par codes ANSI si le terminal les prend en charge. Ces options peuvent être contrôlées par des flags.

Consultez opf redact --help pour plus de flags et d'informations sur le mode rédaction.

  1. Exécuter une évaluation sur un jeu de données étiqueté :
opf eval examples/data/sample_eval_five_examples.jsonl

Les fixtures d'évaluation d'exemple sous examples/data/sample_eval_five_examples*.jsonl sont uniquement des données d'exemple synthétiques et ne décrivent pas de personnes réelles ni d'enregistrements sensibles réels. Voir examples/data/README.md.

Consultez opf eval --help pour plus de flags et d'informations sur le mode évaluation.

  1. Finetuner sur votre propre jeu de données étiqueté :
opf train /path/to/train.jsonl --output-dir /path/to/finetuned_checkpoint

Consultez opf train --help pour plus de flags et d'informations sur le mode finetuning.

Structure

  • opf/__main__.py : point d'entrée CLI unifié pour les modes redact, eval et train.
  • opf/_api.py : API orientée Python au-dessus de la pile d'exécution et de décodage.
  • opf/_cli/ : analyse des arguments en ligne de commande et aides au rendu terminal.
  • opf/_core/ : chargement à l'exécution, conversion de spans et logique de décodage partagée.
  • opf/_eval/ : chargement de jeux de données, prétraitement, métriques et exécuteurs d'évaluation.
  • opf/_train/ : analyse des arguments de finetuning local et exécuteurs d'entraînement.
  • opf/_model/ : implémentation du transformer, configuration du checkpoint et chargement des poids.
  • examples/data/ : fichiers d'évaluation d'exemple ainsi que jeux de données de démonstration de finetuning reproductibles.
  • examples/scripts/finetuning/ : harnais de démonstration de finetuning exécutables.
  • FINETUNING.md : guide ciblé sur le flux de travail de finetuning et les scripts de démonstration.
  • OUTPUT_SCHEMAS.md : formats de réponse JSON et de charge utile d'export.
  • EVAL_AND_OUTPUT_MODES.md : description des modes de sortie pour la rédaction et l'évaluation.

Détails du modèle

Description du modèle

Privacy Filter est un modèle de classification de tokens bidirectionnel avec décodage de spans. Il est entraîné par phases, en commençant par un pré-entraînement autorégressif. Le modèle de langage pré-entraîné est ensuite modifié et post-entraîné comme un classificateur de tokens à attention bandée bidirectionnelle avec une taille de bande de 128 (fenêtre d'attention effective : 257 tokens, soi-même inclus). Cela signifie :

  • Le modèle de base est un checkpoint pré-entraîné de manière autorégressive.
  • La tête de sortie du modèle de langage est remplacée par une tête de classification de tokens sur des labels de confidentialité.
  • Le post-entraînement est une classification supervisée au niveau des tokens plutôt qu'une prédiction du token suivant.
  • L'inférence applique un décodage de séquence contraint pour produire des labels de spans BIOES (Begin, Inside, Outside, End, Single) cohérents.

Sur le plan architectural, l'implémentation dans ce dépôt est une pile de type encodeur transformer pre-norm avec :

  • des embeddings de tokens
  • 8 blocs transformer répétés
  • une attention à requêtes groupées avec des embeddings positionnels rotatifs, avec 14 têtes de requête et 2 têtes KV (taille de groupe = 7 requêtes par tête KV)
  • des blocs feed-forward à mélange d'experts creux avec 128 experts au total (routage top-4 par token)
  • une tête finale de classification de tokens sur des labels de confidentialité (plutôt que des tokens de vocabulaire en langage naturel), avec une largeur de flux résiduel d_model = 640.

Par rapport aux approches autorégressives itératives, cette conception permet d'étiqueter tous les tokens en une seule passe, ce qui améliore le débit. Par rapport aux approches classiques de pré-entraînement de type masked-language-model, il s'agit d'une conversion post-entraînement d'un modèle autorégressif plutôt que d'une configuration masked-LM native.

Forme de sortie

Privacy Filter peut détecter 8 catégories de spans de confidentialité :

Télécharger l’outil