- 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>
Exemples RPA Vision V3
Ce dossier contient des exemples d'utilisation des différents composants de RPA Vision V3.
Prérequis
Installation d'Ollama
# Linux
curl -fsSL https://ollama.ai/install.sh | sh
# macOS
brew install ollama
# Démarrer Ollama
ollama serve
# Télécharger le modèle VLM
ollama pull qwen3-vl:8b
Exemples Disponibles
1. Test d'Intégration Ollama
Fichier: test_ollama_integration.py
Test basique de la connexion à Ollama et des fonctionnalités du client.
python rpa_vision_v3/examples/test_ollama_integration.py
2. Test de Détection VLM Réelle
Fichier: test_real_vlm_detection.py
Test complet de la détection d'éléments UI avec le VLM. Crée un screenshot de test et détecte automatiquement les éléments.
python rpa_vision_v3/examples/test_real_vlm_detection.py
Résultat attendu:
- ✅ Détection de 4 éléments UI
- ✅ Classification correcte des types (button, text_input, checkbox)
- ✅ Classification correcte des rôles (primary_action, cancel, form_input)
3. Détection Simple sur Screenshot
Fichier: simple_vlm_detection.py
Exemple simple pour analyser vos propres screenshots.
python rpa_vision_v3/examples/simple_vlm_detection.py /path/to/screenshot.png
Exemple de sortie:
✓ Ollama est disponible
✓ UIDetector initialisé avec qwen3-vl:8b
Analyse du screenshot: screenshot.png
✓ Détection terminée: 5 éléments trouvés
================================================================================
ÉLÉMENTS UI DÉTECTÉS
================================================================================
1. BUTTON - primary_action
Label: Submit
Position: x=300, y=200
Taille: w=150, h=50
Centre: (375, 225)
Confiance: 85.00%
2. TEXT_INPUT - form_input
Label: Enter text...
Position: x=300, y=100
Taille: w=200, h=40
Centre: (400, 120)
Confiance: 85.00%
...
Structure des Exemples
examples/
├── README.md # Ce fichier
├── test_ollama_integration.py # Test de connexion Ollama
├── test_real_vlm_detection.py # Test complet de détection
└── simple_vlm_detection.py # Exemple simple d'utilisation
Utilisation Programmatique
Détection Basique
from rpa_vision_v3.core.detection.ui_detector import UIDetector
# Créer le détecteur
detector = UIDetector()
# Détecter les éléments
elements = detector.detect("screenshot.png")
# Utiliser les éléments
for elem in elements:
print(f"{elem.type} at {elem.center}")
Configuration Personnalisée
from rpa_vision_v3.core.detection.ui_detector import UIDetector, DetectionConfig
# Configuration personnalisée
config = DetectionConfig(
vlm_model="qwen3-vl:8b",
confidence_threshold=0.8, # Plus strict
max_elements=100
)
detector = UIDetector(config)
elements = detector.detect("screenshot.png")
Classification d'Élément Individuel
from PIL import Image
# Charger une image d'élément
element_img = Image.open("button.png")
# Classifier le type
elem_type, confidence = detector.classify_type(element_img)
print(f"Type: {elem_type} ({confidence:.2%})")
# Classifier le rôle
elem_role, confidence = detector.classify_role(element_img, elem_type)
print(f"Rôle: {elem_role} ({confidence:.2%})")
Modèles VLM Supportés
| Modèle | Taille | Vitesse | Précision | Recommandé |
|---|---|---|---|---|
| qwen3-vl:8b | 6.1GB | ⚡⚡⚡ | ⭐⭐⭐⭐⭐ | ✅ Meilleur |
| granite3.2-vision:2b | 2.4GB | ⚡⚡⚡⚡ | ⭐⭐⭐⭐ | ✅ Rapide |
| pixtral | ~12GB | ⚡⚡ | ⭐⭐⭐⭐⭐ | ⚠️ Si RAM OK |
Dépannage
Ollama n'est pas disponible
❌ Ollama n'est pas disponible!
Solution:
- Vérifier qu'Ollama est installé:
ollama --version - Démarrer Ollama:
ollama serve - Vérifier que le port 11434 est libre
Modèle non trouvé
Warning: Model 'qwen3-vl:8b' not found in Ollama
Solution:
ollama pull qwen3-vl:8b
Détection lente
La première détection peut être lente (chargement du modèle). Les détections suivantes sont plus rapides grâce au cache d'Ollama.
Optimisations:
- Utiliser un modèle plus petit (granite3.2-vision:2b)
- Réduire la résolution des screenshots
- Activer
detect_regions=Truepour analyser par zones
Support
Pour plus d'informations, consultez :
Contribution
Pour ajouter de nouveaux exemples :
- Créer un nouveau fichier Python dans ce dossier
- Ajouter une section dans ce README
- Inclure des commentaires explicatifs dans le code
- Tester avec différents screenshots