Files
Geniusia_v2/geniusia2/INSTALLATION_FIXES.md
2026-03-05 00:20:25 +01:00

6.0 KiB

Corrections d'Installation - RPA Vision V2

Date: 13 Novembre 2025
Statut: Résolu

Problèmes Rencontrés et Solutions

1. Environnement Virtuel Manquant

Problème: PyTorch et les dépendances n'étaient pas installés.

Solution:

cd geniusia2
python3 -m venv venv
./venv/bin/pip install --upgrade pip
./venv/bin/pip install -r requirements.txt

Résultat: Toutes les dépendances installées (~3.5 GB)


2. Erreur d'Import Config

Problème: main.py importait Config (classe) mais config.py exportait CONFIG (dictionnaire).

Erreur:

ImportError: cannot import name 'Config' from 'core.config'

Solution: Correction de l'import dans main.py:

# Avant
from core.config import Config

# Après
from core.config import CONFIG

Résultat: Import corrigé


3. Mauvaise Initialisation des Composants

Problème: Les composants étaient initialisés avec des paramètres incorrects.

Erreurs:

  • Logger(config_dict) → attendait Logger(log_dir)
  • VisionUtils(model_type=..., logger=...) → attendait VisionUtils(config=...)
  • Etc.

Solution: Correction de toutes les initialisations dans main.py:

# Logger
self.logger = Logger()  # Utilise les valeurs par défaut

# EmbeddingsManager
self.embeddings_manager = EmbeddingsManager(
    model_name=CONFIG["models"]["clip"],
    logger=self.logger
)

# LLMManager
self.llm_manager = LLMManager(
    model_name=CONFIG["models"]["llm"],
    logger=self.logger
)

# VisionUtils
self.vision_utils = VisionUtils(config=CONFIG)

# InputUtils
self.input_utils = InputUtils(logger=self.logger, config=CONFIG)

# ReplayEngine
self.replay_engine = ReplayEngine(
    input_utils=self.input_utils,
    logger=self.logger,
    config=CONFIG
)

# WhitelistManager
self.whitelist_manager = WhitelistManager(logger=self.logger)

# UIChangeDetector
self.ui_change_detector = UIChangeDetector(
    embeddings_manager=self.embeddings_manager,
    logger=self.logger,
    config=CONFIG
)

# MetricsCollector
self.metrics_collector = MetricsCollector(logger=self.logger, config=CONFIG)

# LearningManager
self.learning_manager = LearningManager(
    embeddings_manager=self.embeddings_manager,
    logger=self.logger,
    config=CONFIG
)

# Orchestrator
self.orchestrator = Orchestrator(
    learning_manager=self.learning_manager,
    vision_utils=self.vision_utils,
    llm_manager=self.llm_manager,
    logger=self.logger,
    config=CONFIG,
    whitelist_manager=self.whitelist_manager,
    input_utils=self.input_utils
)

Résultat: Tous les composants s'initialisent correctement


4. Conflit Qt entre PyQt5 et OpenCV

Problème: OpenCV et PyQt5 ont des plugins Qt conflictuels.

Erreur:

qt.qpa.plugin: Could not load the Qt platform plugin "xcb"

Solution: Remplacement d'opencv-python par opencv-python-headless:

cd geniusia2
./venv/bin/pip uninstall -y opencv-python
./venv/bin/pip install opencv-python-headless

Et création du script run.sh:

#!/bin/bash
cd "$(dirname "$0")"
export QT_QPA_PLATFORM_PLUGIN_PATH=""
unset QT_PLUGIN_PATH
./venv/bin/python main.py "$@"

Résultat: Conflit Qt résolu


5. Erreurs de Signaux GUI

Problème: Les noms de signaux ne correspondaient pas.

Erreur:

AttributeError: 'MinimalGUI' object has no attribute 'start_signal'

Solution: Correction des noms de signaux dans main.py:

# Avant
self.gui.start_signal.connect(...)
self.gui.stop_signal.connect(...)

# Après
self.gui.start_requested.connect(...)
self.gui.stop_requested.connect(...)

Résultat: Signaux corrigés


État Final

Composants Fonctionnels

  • Environnement virtuel créé
  • Toutes les dépendances installées
  • Imports corrigés
  • Initialisations corrigées
  • Conflits Qt résolus

Tests Validés

# Test du Learning Manager
./venv/bin/python ../test_learning_manager_simple.py
# ✅ TOUS LES TESTS RÉUSSIS!

🚀 Lancement de l'Application

Méthode 1: Script de Lancement (Recommandé)

cd geniusia2
./run.sh

Méthode 2: Manuelle

cd geniusia2
source venv/bin/activate
export QT_QPA_PLATFORM_PLUGIN_PATH=""
python3 main.py

Méthode 3: Depuis la Racine

./geniusia2/venv/bin/python geniusia2/main.py

📝 Notes Importantes

Dépendances Installées

  • PyTorch 2.9.1 avec support CUDA 12.8
  • Transformers 4.57.1 pour les modèles de langage
  • OpenCLIP 3.2.0 pour les embeddings visuels
  • FAISS 1.12.0 pour la recherche vectorielle
  • PyQt5 5.15.11 pour l'interface graphique
  • OpenCV 4.12.0 pour la vision par ordinateur
  • Ollama 0.6.0 pour l'intégration LLM

Taille Totale

  • Environnement virtuel: ~3.5 GB
  • Modèles téléchargés: Variable selon utilisation

Avertissements Normaux

UserWarning: QuickGELU mismatch between final model config

→ Cet avertissement est normal et n'affecte pas le fonctionnement.

Avertissement: Erreur lors de l'initialisation du client Ollama: 'name'

→ Normal si Ollama n'est pas encore démarré. L'application fonctionnera en mode dégradé.


🔧 Dépannage

Si l'application ne démarre pas

  1. Vérifier l'environnement virtuel:
cd geniusia2
source venv/bin/activate
python3 -c "import torch; print(torch.__version__)"
  1. Vérifier les permissions:
chmod +x run.sh
chmod +x setup.sh
  1. Réinstaller les dépendances:
./venv/bin/pip install --force-reinstall -r requirements.txt
  1. Vérifier Qt:
./venv/bin/python -c "from PyQt5.QtWidgets import QApplication; print('Qt OK')"

📚 Documentation

  • README.md: Guide complet d'utilisation
  • QUICKSTART.md: Démarrage rapide en 20 minutes
  • IMPLEMENTATION_COMPLETE.md: État du projet
  • INSTALLATION_FIXES.md: Ce document

Statut Final: PRÊT POUR UTILISATION

L'application est maintenant complètement fonctionnelle et prête à être testée !