feat: Add data quality verification & cleanup scripts

## Data Quality & Cleanup (Priorities 1-6)

Added comprehensive data quality verification and cleanup system:

**Scripts créés**:
- verify_data_quality.py: Analyse qualité complète œuvre par œuvre
- clean_duplicate_documents.py: Nettoyage doublons Documents
- populate_work_collection.py/clean.py: Peuplement Work collection
- fix_chunks_count.py: Correction chunksCount incohérents
- manage_orphan_chunks.py: Gestion chunks orphelins (3 options)
- clean_orphan_works.py: Suppression Works sans chunks
- add_missing_work.py: Création Work manquant
- generate_schema_stats.py: Génération stats auto
- migrate_add_work_collection.py: Migration sûre Work collection

**Documentation**:
- WEAVIATE_GUIDE_COMPLET.md: Guide consolidé complet (600+ lignes)
- WEAVIATE_SCHEMA.md: Référence schéma rapide
- NETTOYAGE_COMPLETE_RAPPORT.md: Rapport nettoyage session
- ANALYSE_QUALITE_DONNEES.md: Analyse qualité initiale
- rapport_qualite_donnees.txt: Output brut vérification

**Résultats nettoyage**:
- Documents: 16 → 9 (7 doublons supprimés)
- Works: 0 → 9 (peuplé + nettoyé)
- Chunks: 5,404 → 5,230 (174 orphelins supprimés)
- chunksCount: Corrigés (231 → 5,230 déclaré = réel)
- Cohérence parfaite: 9 Works = 9 Documents = 9 œuvres

**Modifications code**:
- schema.py: Ajout Work collection avec vectorisation
- utils/weaviate_ingest.py: Support Work ingestion
- utils/word_pipeline.py: Désactivation concepts (problème .lower())
- utils/word_toc_extractor.py: Métadonnées Word correctes
- .gitignore: Exclusion fichiers temporaires (*.wav, output/*, NUL)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-01 11:57:26 +01:00
parent 845ffb4b06
commit 04ee3f9e39
26 changed files with 6945 additions and 16 deletions

View File

@@ -0,0 +1,133 @@
# Guide d'Installation TTS - Après Redémarrage Windows
## 📋 Contexte
Vous avez installé **Microsoft Visual Studio Build Tools avec composants C++**.
Après redémarrage de Windows, ces outils seront actifs et permettront la compilation de TTS.
---
## 🔄 Étapes Après Redémarrage
### 1. Vérifier que Visual Studio Build Tools est actif
Ouvrir un **nouveau** terminal et tester :
```bash
# Vérifier que le compilateur C++ est disponible
where cl
# Devrait afficher un chemin comme :
# C:\Program Files\Microsoft Visual Studio\...\cl.exe
```
### 2. Installer TTS (Coqui XTTS v2)
```bash
# Aller dans le dossier du projet
cd C:\GitHub\linear_coding_library_rag\generations\library_rag
# Installer TTS (cela prendra 5-10 minutes)
pip install TTS==0.22.0
```
**Attendu** : Compilation réussie avec "Successfully installed TTS-0.22.0"
### 3. Vérifier l'installation
```bash
# Test d'import
python -c "import TTS; print(f'TTS version: {TTS.__version__}')"
# Devrait afficher : TTS version: 0.22.0
```
### 4. Redémarrer Flask et Tester
```bash
# Lancer Flask
python flask_app.py
# Aller sur http://localhost:5000/chat
# Poser une question
# Cliquer sur le bouton "Audio"
```
**Premier lancement** : Le modèle XTTS v2 (~2GB) sera téléchargé automatiquement (5-10 min).
---
## ⚠️ Si TTS échoue encore après redémarrage
### Solution Alternative : edge-tts (Déjà installé ✅)
**edge-tts** est déjà installé et fonctionne immédiatement. C'est une excellente alternative avec :
- ✅ Voix Microsoft Edge haute qualité
- ✅ Support français excellent
- ✅ Pas de compilation nécessaire
- ✅ Pas besoin de GPU
**Pour utiliser edge-tts**, il faudra modifier `utils/tts_generator.py`.
---
## 📊 Comparaison des Options
| Critère | TTS (XTTS v2) | edge-tts |
|---------|---------------|----------|
| Installation | ⚠️ Complexe (compilation) | ✅ Simple (pip install) |
| Qualité | ⭐⭐⭐⭐⭐ Excellente | ⭐⭐⭐⭐⭐ Excellente |
| GPU | ✅ Oui (4-6 GB VRAM) | ❌ Non (CPU uniquement) |
| Vitesse (100 mots) | 2-5 secondes (GPU) | 3-8 secondes (CPU) |
| Offline | ✅ Oui (après download) | ⚠️ Requiert Internet |
| Taille modèle | ~2 GB | Aucun téléchargement |
| Voix françaises | Oui, naturelles | Oui, Microsoft Azure |
---
## 🎯 Recommandation
1. **Essayer TTS après redémarrage** (pour profiter du GPU)
2. **Si échec** : Utiliser edge-tts (déjà installé, fonctionne immédiatement)
---
## 📝 Commandes de Diagnostic
Si TTS échoue encore :
```bash
# Vérifier Python
python --version
# Vérifier pip
pip --version
# Vérifier torch (déjà installé)
python -c "import torch; print(f'CUDA: {torch.cuda.is_available()}')"
# Vérifier Visual Studio
where cl
```
---
## 🔧 Fichiers Modifiés
-`requirements.txt` - TTS>=0.22.0 ajouté
-`utils/tts_generator.py` - Module TTS créé (pour XTTS v2)
-`flask_app.py` - Route /chat/export-audio ajoutée
-`templates/chat.html` - Bouton Audio ajouté
**Commit** : `d91abd3` - "Ajout de la fonctionnalité TTS"
---
## 📞 Contact après redémarrage
Après redémarrage, exécutez simplement :
```bash
pip install TTS==0.22.0
```
Et dites-moi le résultat (succès ou erreur).