# Spec : Optimisation de la Qualité d'Anonymisation ## Vue d'Ensemble Cette spécification détaille le projet d'optimisation de la qualité d'anonymisation du système de pseudonymisation de documents PDF médicaux. **Objectif** : Atteindre un équilibre optimal entre rappel (détection des PII) et précision (éviter les faux positifs) pour garantir la conformité RGPD tout en préservant la lisibilité médicale. ## Métriques Cibles - **Rappel** : ≥ 99.5% (maximum 0.5% de PII manqués) - **Précision** : ≥ 97% (maximum 3% de faux positifs) - **F1-Score** : ≥ 0.98 - **Temps de traitement** : < 30 secondes par PDF ## Corpus de Travail - **Source** : 59 dossiers OGC dans `/home/dom/Téléchargements/II-1 Ctrl_T2A_2025_CHCB_DocJustificatifs (1)/` - **Sortie existante** : 130 fichiers anonymisés + audits dans `anonymise/` - **Dataset de test** : 30 documents annotés manuellement (à créer) ## Contraintes - ✅ Utilisation de documents réels uniquement (pas de mocks) - ✅ CPU uniquement (pas de GPU) - ✅ RAM limitée (< 4 GB par processus) - ✅ Conformité RGPD stricte ## Structure de la Spec 1. **requirements.md** : Exigences fonctionnelles et non-fonctionnelles 2. **design.md** : Architecture technique et composants détaillés 3. **tasks.md** : Plan d'implémentation en 4 phases ## Phases du Projet ### Phase 1 : Mesure et Baseline (2 semaines) - Création du dataset de test annoté (30 documents) - Implémentation du système d'évaluation - Mesure des performances actuelles ### Phase 2 : Amélioration de la Détection (3 semaines) - Amélioration des regex (téléphones, emails, adresses, NIR) - Implémentation de la détection contextuelle - Approche hybride multi-détecteurs ### Phase 3 : Validation et Reporting (1 semaine) - Validation post-anonymisation - Génération de rapports de qualité - Tests de régression automatiques ### Phase 4 : Documentation et Finalisation (3 jours) - Documentation complète - Validation finale sur corpus complet - Livrables ## Livrables Attendus 1. Dataset de test annoté (30+ documents) 2. Système d'évaluation automatique 3. Détecteurs améliorés (regex + contextuel + hybride) 4. Suite de tests de régression 5. Rapports de qualité (HTML + JSON) 6. Documentation (guides + API) 7. Métriques baseline et finales ## Démarrage Rapide ### Prérequis ```bash # Installer les dépendances pip install pytest pytest-cov pydantic structlog jinja2 matplotlib # Créer les répertoires mkdir -p tests/ground_truth mkdir -p reports/quality ``` ### Étape 1 : Créer le Dataset Annoté ```bash # Sélectionner 30 documents représentatifs python tools/select_test_documents.py \ --source "/home/dom/Téléchargements/II-1 Ctrl_T2A_2025_CHCB_DocJustificatifs (1)/" \ --output tests/ground_truth/ \ --count 30 # Annoter les documents python tools/annotation_tool.py tests/ground_truth/ ``` ### Étape 2 : Mesurer la Baseline ```bash # Évaluer le système actuel python evaluation/quality_evaluator.py \ --ground-truth tests/ground_truth/ \ --output reports/baseline_report.html # Benchmarker les performances python evaluation/benchmark.py \ --test-dir tests/ground_truth/ \ --output reports/baseline_benchmark.json ``` ### Étape 3 : Implémenter les Améliorations Suivre les tâches dans `tasks.md` phase par phase. ### Étape 4 : Valider ```bash # Tests de régression pytest tests/regression/ --benchmark # Validation sur corpus complet python scripts/validate_full_corpus.py \ --source "/home/dom/Téléchargements/II-1 Ctrl_T2A_2025_CHCB_DocJustificatifs (1)/" \ --output reports/final_validation.html ``` ## Ressources - **Documentation** : `docs/` - **Tests** : `tests/` - **Configuration** : `config/quality_config.yml` - **Rapports** : `reports/` ## Contact Pour toute question sur cette spécification, consulter les documents détaillés : - `requirements.md` pour les exigences - `design.md` pour l'architecture - `tasks.md` pour le plan d'implémentation ## Statut - [x] Requirements définis - [x] Design validé - [x] Tasks planifiées - [ ] Implémentation en cours - [ ] Tests validés - [ ] Documentation complète - [ ] Livraison finale --- **Version** : 1.0.0 **Date de création** : 2024-01-15 **Dernière mise à jour** : 2024-01-15