# 🎯 OBJECTIF FINAL DE RPA VISION V2 ## Vision Globale **RPA Vision V2** est un **assistant d'automatisation intelligent** qui **apprend en observant** tes actions répétitives sur l'ordinateur, puis te propose de les automatiser progressivement. ## Le Concept en 3 Phrases 1. **Tu travailles normalement**, le système observe en silence 2. **Il détecte tes habitudes** (ex: "Tu cliques 3 fois sur Rafraîchir chaque matin") 3. **Il te propose de le faire automatiquement** à ta place, avec ton contrôle --- ## Les 3 Modes d'Évolution ### 👀 Mode Shadow (Observation) **"Je regarde et j'apprends"** - Le système observe **tout** ce que tu fais - Capture screenshots, positions de clics, fenêtres actives - Détecte les **patterns répétitifs** (ex: 3 clics identiques) - Crée des "signatures visuelles" avec l'IA - **N'exécute RIEN** - juste observation pure **Objectif** : Apprendre tes habitudes sans risque --- ### 🤝 Mode Assisté (Suggestion) **"Je te propose, tu valides"** Après 20 observations d'une même tâche : - Le système **suggère** l'action suivante - Affiche une **superposition visuelle** sur l'élément à cliquer - Tu valides (Entrée) ou refuses (Échap) - Si tu corriges (Alt+C), il apprend de son erreur **Objectif** : Gagner du temps tout en gardant le contrôle --- ### 🤖 Mode Autopilot (Automatique) **"Je le fais tout seul"** Après 20 observations + 95% de réussite : - Le système **exécute automatiquement** la tâche - Affiche une notification de succès/échec - Tu peux arrêter d'urgence (Ctrl+Pause) - Rollback possible (annule les 3 dernières actions) **Objectif** : Automatisation complète des tâches stables --- ## La Stack Technologique ### 🧠 Intelligence Artificielle 1. **Qwen3-VL** (via Ollama) - Comprend ce que tu fais visuellement - Génère des descriptions intelligentes - "Rafraîchir la page" au lieu de "Clic à (42, 1048)" 2. **OWL-v2 / DINO / YOLO** - Détectent les boutons, icônes, champs - "C'est un bouton Rafraîchir" pas juste "un rectangle bleu" 3. **OpenCLIP + FAISS** - Crée des "empreintes visuelles" des éléments - Retrouve le même bouton même si l'UI change légèrement - Recherche ultra-rapide dans des milliers d'images 4. **OpenCV** - Traitement d'images en temps réel - Template matching pour retrouver des éléments --- ## Le Flux Complet ``` 1. TU TRAVAILLES ↓ 2. SYSTÈME OBSERVE (Mode Shadow) - Capture screenshots - Détecte patterns répétitifs - Crée signatures visuelles ↓ 3. SYSTÈME APPREND - Qwen3-VL analyse: "C'est un rafraîchissement de page" - OWL-v2 détecte: "Bouton circulaire en haut à gauche" - FAISS indexe: Empreinte visuelle stockée ↓ 4. APRÈS 20 OBSERVATIONS - Transition vers Mode Assisté - "Je pense que tu veux rafraîchir, je le fais ?" ↓ 5. TU VALIDES 20 FOIS (95% succès) - Transition vers Mode Autopilot - "Je le fais automatiquement maintenant" ↓ 6. AUTOMATISATION COMPLÈTE - Le système exécute seul - Tu supervises via le dashboard - Corrections possibles si erreur ``` --- ## Sécurité & Contrôle ### 🛡️ Liste Blanche - Tu choisis les applications autorisées - Rien ne s'exécute ailleurs (ex: pas dans ta banque en ligne) ### 📝 Logs Chiffrés - Tout est enregistré (AES-256) - Traçabilité complète pour audit - Qui a fait quoi, quand, pourquoi ### 🔄 Rollback - Annule les 3 dernières actions - Restaure l'état précédent - Sécurité en cas d'erreur ### ⏸️ Arrêt d'Urgence - Ctrl+Pause = Stop immédiat - Retour au Mode Assisté - Contrôle total à tout moment --- ## Adaptation Continue ### 📊 Détection de Changements UI - Si l'interface change (mise à jour logiciel) - Le système détecte la différence (similarité < 70%) - Demande une ré-observation - Réapprend automatiquement ### 🎯 Scores de Confiance Dynamiques - Chaque action a un score 0-100% - Formule: 60% vision + 30% LLM + 10% historique - Si score < 90% → Retour Mode Assisté - Adaptation automatique ### 📈 Métriques en Temps Réel - Taux de succès par tâche - Latence moyenne - Nombre de corrections - Dashboard live --- ## Cas d'Usage Concrets ### Exemple 1: Rafraîchir une Page Web ``` Jour 1-5: Tu rafraîchis manuellement (Mode Shadow observe) Jour 6: "Je peux le faire pour toi ?" (Mode Assisté) Jour 10: Automatique (Mode Autopilot) ``` ### Exemple 2: Remplir un Formulaire ``` Observation: Tu remplis le même formulaire chaque jour Apprentissage: Nom, prénom, date dans les bons champs Suggestion: "Je remplis pour toi ?" Automatisation: Formulaire rempli en 2 secondes ``` ### Exemple 3: Workflow Multi-Étapes ``` 1. Ouvrir Excel 2. Copier données 3. Ouvrir navigateur 4. Coller dans formulaire web 5. Cliquer Enregistrer → Tout automatisé après apprentissage ``` --- ## Performance Cible - ⚡ **Latence** : < 400ms observation → suggestion - ✅ **Précision** : > 95% de réussite en Autopilot - 🔧 **Corrections** : < 3% d'erreurs nécessitant correction - 💾 **Mémoire** : ~150 MB RAM pour 50 screenshots - 🖥️ **GPU** : 8 GB VRAM pour Qwen3-VL --- ## L'Innovation Clé **Apprentissage Visuel Pur** : Pas besoin de programmer, pas de sélecteurs CSS, pas de scripts. Le système **voit** comme toi et **apprend** comme toi. C'est comme avoir un assistant qui regarde par-dessus ton épaule, mémorise tes habitudes, et te propose gentiment : *"Je peux faire ça pour toi la prochaine fois ?"* --- ## Architecture Technique ### Composants Principaux 1. **EventCapture** : Capture clavier/souris en temps réel 2. **VisionAnalysis** : Analyse visuelle avec IA 3. **LearningManager** : Gestion de l'apprentissage et des transitions de mode 4. **Orchestrator** : Coordination de tous les composants 5. **EmbeddingsManager** : Gestion FAISS et OpenCLIP 6. **LLMManager** : Interface avec Qwen3-VL via Ollama 7. **VisionUtils** : Détection avec OWL-v2/DINO/YOLO ### Stockage - **FAISS Index** : `data/faiss_index/` - Embeddings visuels - **Tâches Apprises** : `data/user_profiles/` - Signatures + métadonnées - **Logs Chiffrés** : `data/logs/` - Historique complet - **Screenshots** : En mémoire uniquement (50 derniers) ### Technologies - **Python 3.12** : Langage principal - **PyQt6** : Interface graphique - **PyTorch** : Modèles de vision - **Transformers** : OWL-v2, DINO - **Ultralytics** : YOLO-World - **Ollama** : Qwen3-VL - **FAISS** : Recherche de similarité - **OpenCV** : Traitement d'images - **pynput** : Capture événements système --- ## État Actuel (MVP Fonctionnel) ✅ **Implémenté** : - Capture d'événements (clics, touches) - Détection de patterns répétitifs - Analyse visuelle avec signatures - Création de tâches apprises - Intégration Qwen3-VL - Modèles de détection (OWL-v2, DINO, YOLO) - Index FAISS - Interface GUI basique 🚧 **À Compléter** : - Mode Assisté (suggestions avec validation) - Mode Autopilot (exécution automatique) - Rejeu des tâches apprises - Dashboard de métriques - Rollback d'actions - Détection de changements UI - Transitions de mode automatiques --- ## Prochaines Étapes 1. **Implémenter le rejeu** : Exécuter les tâches apprises 2. **Ajouter les suggestions** : Mode Assisté avec superposition visuelle 3. **Créer le dashboard** : Métriques en temps réel 4. **Implémenter les transitions** : Shadow → Assisté → Autopilot 5. **Ajouter le rollback** : Annulation d'actions 6. **Tester en conditions réelles** : Workflows utilisateur complets