149 lines
3.8 KiB
Markdown
149 lines
3.8 KiB
Markdown
# 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 |