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

149 lines
3.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Guide: Génération de Tâches de Démonstration
## Objectif
Créer automatiquement des tâches de démonstration pour tester le système de suggestions sans avoir à répéter manuellement des actions.
## Problème Rencontré
Le script `generer_taches_demo.py` crée des tâches mais elles ne sont pas correctement persistées dans la base de données.
### Causes
1. **Structure des tâches**: Les `TaskProfile` ont une structure spécifique
2. **Sauvegarde**: La méthode `_save_task()` est privée et peut avoir des dépendances
3. **Embeddings**: Les embeddings doivent être indexés dans FAISS avec les bonnes métadonnées
## Solution Alternative: Utiliser le Mode Shadow
Au lieu de générer des tâches artificiellement, la meilleure approche est d'utiliser le système normalement :
### Méthode 1: Apprentissage Manuel Rapide
1. **Lancez en mode Shadow**:
```bash
cd geniusia2
./venv/bin/python main.py --mode shadow
```
2. **Effectuez des actions répétitives** (3x chacune):
- Ouvrir la calculatrice (Super → "calc" → Entrée) × 3
- Cliquer sur "1" puis "+" puis "1" puis "=" × 3
- Fermer la fenêtre (Alt+F4) × 3
3. **Les tâches seront automatiquement créées** et sauvegardées
4. **Passez en mode Assist**:
```bash
cd geniusia2
./venv/bin/python main.py --mode assist
```
### Méthode 2: Mode Progressif (Recommandé)
1. **Lancez en mode progressif**:
```bash
cd geniusia2
./run.sh
```
2. **Effectuez des actions répétitives**
3. **Acceptez la proposition** de passer en mode Assist
4. **Les suggestions apparaîtront** automatiquement
## Script de Génération (À Améliorer)
Le script `generer_taches_demo.py` existe mais nécessite des améliorations :
### Problèmes à Résoudre
1. ✅ Création des signatures → Fonctionne
2. ✅ Génération des embeddings → Fonctionne
3. ❌ Sauvegarde des tâches → Ne fonctionne pas correctement
4. ❌ Indexation FAISS → Pas synchronisée
### Améliorations Nécessaires
```python
# Au lieu de:
learning_manager._save_task(task)
# Il faudrait:
# 1. Sauvegarder la tâche avec toutes ses métadonnées
# 2. Indexer chaque signature dans FAISS
# 3. Associer les métadonnées correctement
# 4. Vérifier que tout est persisté
```
## Recommandation
**Pour l'instant, utilisez l'apprentissage manuel** :
1. C'est plus fiable
2. C'est plus rapide (quelques minutes)
3. Ça teste le système réel
4. Ça garantit que tout fonctionne correctement
## Workflow Complet de Test
### Étape 1: Apprentissage (Mode Shadow)
```bash
# Terminal 1: Lancer l'application
cd geniusia2
./venv/bin/python main.py --mode shadow
# Effectuer des actions répétitives
# - Ouvrir calculatrice × 3
# - Faire un calcul × 3
# - Fermer fenêtre × 3
```
### Étape 2: Vérification
```bash
# Terminal 2: Vérifier les tâches créées
ls -lh geniusia2/data/tasks/
# Devrait montrer des fichiers task_*.json
# Vérifier l'index FAISS
ls -lh geniusia2/data/embeddings/
# Devrait montrer faiss_index.bin et metadata.pkl
```
### Étape 3: Test des Suggestions (Mode Assist)
```bash
# Relancer en mode Assist
cd geniusia2
./venv/bin/python main.py --mode assist
# Effectuer une action similaire
# → Une suggestion devrait apparaître !
```
## Prochaines Améliorations du Script
Pour rendre le script `generer_taches_demo.py` fonctionnel :
1. **Étudier la structure exacte** de `TaskProfile`
2. **Comprendre le format** de sauvegarde JSON
3. **Implémenter correctement** l'indexation FAISS
4. **Tester la récupération** des tâches
## Conclusion
Le script de génération automatique est une bonne idée mais nécessite plus de travail.
**Pour l'instant** : Utilisez l'apprentissage manuel, c'est rapide et fiable.
**Pour plus tard** : Améliorez le script pour qu'il fonctionne correctement.
---
**Date**: 2025-11-22
**Statut**: ⏳ En cours d'amélioration
**Alternative**: ✅ Apprentissage manuel fonctionnel
I