Commit Graph

3 Commits

Author SHA1 Message Date
Dom
0bd0fbb8c5 fix: SomEngine sur CPU pour cohabiter avec Qwen2.5-VL GPU
Qwen2.5-VL occupe 9.8 GB de VRAM → plus de place pour YOLO.
SomEngine passe en CPU (1.4s au lieu de 0.1s, acceptable car
utilisé uniquement pendant le build_replay, pas le replay).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 09:30:00 +02:00
Dom
a92d04621a refactor: nettoyage agent + fix SomEngine review (singleton partagé, cache, thread-safe)
Nettoyage Windows agent :
- Suppression lea_ui inutilisés (chat_widget, overlay, styles, etc. — -1991 lignes)
- Suppression window_info*.py dupliqués (racine + core/ — -494 lignes)
- build/ + dist/ supprimés (48 MB PyInstaller abandonné, gitignorés)

Fix SomEngine (review quality guardian) :
- Singleton GPU partagé via get_shared_engine() (1 instance au lieu de 2)
- Thread-safe avec threading.Lock (double-checked locking)
- Cache SomResult par screenshot_id (max 50, évite YOLO+OCR redondants)
- Fuite fichier temp docTR corrigée (finally block)
- Chemin YOLO configurable via SOM_YOLO_WEIGHTS env var
- Guard som_image None avant VLM
- Match texte partiel : len(label) >= 3

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 10:04:27 +02:00
Dom
2ddccff108 feat: SomEngine — Set-of-Mark avec YOLO + docTR pour détection UI
- SomEngine : détecte et numérote tous les éléments UI d'un screenshot
- YOLO v8 (OmniParser) : détection icônes/boutons (~15ms GPU)
- docTR : OCR pour le texte visible
- Annotation visuelle : numéros rouges sur chaque élément
- find_element_at(x, y) : trouve l'élément cliqué par coordonnées
- Fix Florence-2 / transformers 4.57 incompatibilité (past_key_values)
- Testé : 107 éléments détectés sur screenshot Windows 2560x1600

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 08:26:07 +02:00