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>
This commit is contained in:
235
examples/CAPTURE_README.md
Normal file
235
examples/CAPTURE_README.md
Normal file
@@ -0,0 +1,235 @@
|
||||
# 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
|
||||
Reference in New Issue
Block a user