Files
rpa_vision_v3/examples/CAPTURE_README.md
Dom a27b74cf22 v1.0 - Version stable: multi-PC, détection UI-DETR-1, 3 modes exécution
- Frontend v4 accessible sur réseau local (192.168.1.40)
- Ports ouverts: 3002 (frontend), 5001 (backend), 5004 (dashboard)
- Ollama GPU fonctionnel
- Self-healing interactif
- Dashboard confiance

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 11:23:51 +01:00

236 lines
5.4 KiB
Markdown

# Script de Capture et Test Automatique
## 🎯 Objectif
Script tout-en-un qui :
1. ✅ Capture automatiquement l'écran pendant 1 minute
2. ✅ Enregistre les screenshots dans `data/sessions/`
3. ✅ Crée une RawSession JSON
4. ✅ Teste le GraphBuilder avec la session capturée
## 🚀 Utilisation
### Lancement Simple
```bash
cd rpa_vision_v3
python examples/capture_and_test.py
```
### Ce qui se passe
```
1. Compte à rebours de 3 secondes
2. Capture pendant 60 secondes (1 screenshot toutes les 2s)
3. Sauvegarde dans data/sessions/session_YYYYMMDD_HHMMSS/
4. Crée session.json
5. Teste GraphBuilder
6. Affiche les résultats
```
## 📸 Pendant la Capture
**Conseils pour obtenir de bons patterns:**
1. **Répétez les mêmes actions 3-4 fois**
- Ex: Ouvrir/fermer une fenêtre
- Ex: Cliquer sur le même bouton
- Ex: Naviguer entre 2-3 écrans
2. **Attendez 2-3 secondes entre chaque action**
- Laisse le temps de capturer l'état stable
3. **Utilisez des actions simples**
- Cliquer sur des boutons
- Taper du texte
- Changer de fenêtre
## 📊 Sortie Attendue
```
🚀 CAPTURE ET TEST AUTOMATIQUE
======================================================================
CAPTURE DE SESSION
======================================================================
Session ID: session_20241123_143022
Durée: 60s
Intervalle: 2s
Screenshots attendus: ~30
Répertoire: data/sessions/session_20241123_143022
🎬 Démarrage de la capture dans 3 secondes...
Effectuez des actions répétées pour créer des patterns!
📸 Screenshot 1 capturé - Reste 58s
📸 Screenshot 2 capturé - Reste 56s
...
📸 Screenshot 30 capturé - Reste 0s
✅ Capture terminée: 30 screenshots
📝 Création du fichier session.json...
✅ Session sauvegardée: data/sessions/session_20241123_143022/session.json
======================================================================
TEST CONSTRUCTION DE WORKFLOW
======================================================================
[1/3] Initialisation du GraphBuilder
✅ GraphBuilder initialisé
[2/3] Construction du workflow
✅ Workflow construit: workflow_session_20241123_143022
- Nodes: 3
- Edges: 2
[3/3] Analyse des résultats
📊 3 patterns détectés:
• node_000: 10 observations
• node_001: 12 observations
• node_002: 8 observations
🔗 2 transitions détectées:
• node_000 → node_001 (5x)
• node_001 → node_002 (4x)
💾 Index FAISS: 30 vecteurs
📁 Session: data/sessions/session_20241123_143022/session.json
======================================================================
✅ TEST RÉUSSI - Patterns détectés!
======================================================================
```
## 📁 Structure des Fichiers Créés
```
data/sessions/session_20241123_143022/
├── session.json # Métadonnées de la session
└── screenshots/
├── screen_0000.png
├── screen_0001.png
├── screen_0002.png
└── ...
```
## ⚙️ Configuration
### Modifier la Durée
Éditer le fichier `capture_and_test.py` ligne 138:
```python
session_dir, screenshots, session_id = capture_session(
duration_seconds=120, # 2 minutes au lieu de 1
interval_seconds=2
)
```
### Modifier l'Intervalle
```python
session_dir, screenshots, session_id = capture_session(
duration_seconds=60,
interval_seconds=1 # 1 screenshot par seconde
)
```
### Ajuster la Détection de Patterns
Éditer ligne 125:
```python
builder = GraphBuilder(
min_pattern_repetitions=3, # Plus strict (défaut: 2)
clustering_eps=0.15 # Plus strict (défaut: 0.18)
)
```
## 🔧 Dépannage
### Erreur: "mss n'est pas installé"
```bash
pip install mss
```
### Aucun Pattern Détecté
**Causes possibles:**
- Actions trop variées (pas de répétitions)
- Intervalle trop court (états pas stables)
- Clustering trop strict
**Solutions:**
- Répéter les mêmes actions 3-4 fois
- Augmenter `clustering_eps` à 0.20-0.25
- Diminuer `min_pattern_repetitions` à 2
### Trop de Patterns Détectés
**Solution:**
- Augmenter `min_pattern_repetitions` à 4-5
- Diminuer `clustering_eps` à 0.12-0.15
## 🎯 Cas d'Usage
### Test Rapide
```bash
# Capture 30 secondes
python examples/capture_and_test.py
# Modifier duration_seconds=30 dans le code
```
### Test Complet
```bash
# Capture 2 minutes
python examples/capture_and_test.py
# Modifier duration_seconds=120 dans le code
```
### Test avec Interface GUI
Si tu préfères utiliser ton interface GUI:
```bash
# 1. Lance le GUI
google-chrome http://127.0.0.1:5000
# 2. Capture manuellement
# 3. Teste avec la session capturée
python examples/test_workflow_construction.py
```
## 📈 Métriques de Qualité
**Bonne session:**
- 3-5 patterns détectés
- 2-4 transitions par pattern
- Chaque pattern avec 3+ observations
**Session à améliorer:**
- 0-1 pattern détecté → Répéter plus d'actions
- 10+ patterns détectés → Actions trop variées
## 🎓 Conseils
1. **Pour tester la détection de patterns:**
- Ouvre/ferme la même application 3-4 fois
- Clique sur le même bouton plusieurs fois
- Navigue entre 2-3 écrans répétitivement
2. **Pour tester les transitions:**
- Fais une séquence A → B → C
- Répète cette séquence 3-4 fois
- Le GraphBuilder devrait détecter les 3 nodes et 2 edges
3. **Pour tester la robustesse:**
- Mélange actions répétées et actions uniques
- Change légèrement la position des clics
- Varie le timing entre actions