spec: Architecture complète avec VLM (5 couches détection)
- Ajout documentation VLM (Ollama qwen2.5vl:7b) - Pipeline complet: Regex → VLM → EDS-Pseudo → CamemBERT → Contextuel - Nouvelles exigences REQ-013/REQ-014 pour optimisation VLM - Tâches Phase 2.5: amélioration prompt, validation croisée, perf - Document ARCHITECTURE_REELLE.md avec détails complets - Matériel: AMD Ryzen 9 9950X, 128GB RAM, RTX 5070 12GB - Objectifs: Rappel ≥99.5%, Précision ≥97%, F1 ≥0.98
This commit is contained in:
151
.kiro/specs/anonymization-quality-optimization/README.md
Normal file
151
.kiro/specs/anonymization-quality-optimization/README.md
Normal file
@@ -0,0 +1,151 @@
|
||||
# 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
|
||||
Reference in New Issue
Block a user