Files
rpa_vision_v3/examples/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

4.9 KiB

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:

  1. Vérifier qu'Ollama est installé: ollama --version
  2. Démarrer Ollama: ollama serve
  3. 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=True pour analyser par zones

Support

Pour plus d'informations, consultez :

Contribution

Pour ajouter de nouveaux exemples :

  1. Créer un nouveau fichier Python dans ce dossier
  2. Ajouter une section dans ce README
  3. Inclure des commentaires explicatifs dans le code
  4. Tester avec différents screenshots