# 📖 Guide d'Installation et d'Utilisation

## 🎯 Deux Scripts Différents

### `setup.sh` - Installation Complète (À faire UNE FOIS)

**Ce qu'il fait** :
- ✅ Crée l'environnement virtuel (`venv/`)
- ✅ Installe toutes les dépendances (`requirements.txt`)
- ✅ Vérifie Ollama
- ✅ Télécharge les modèles
- ✅ Crée les répertoires de données

**Quand l'utiliser** :
- Première installation
- Après avoir cloné le repo
- Après avoir supprimé le venv

**Commande** :
```bash
cd geniusia2
./setup.sh
```

### `run.sh` - Lancement de l'Application (À chaque utilisation)

**Ce qu'il fait** :
- ✅ Vérifie que le venv existe
- ✅ Vérifie que FAISS est installé
- ✅ Vérifie qu'Ollama tourne
- ✅ Lance l'application

**Ce qu'il NE fait PAS** :
- ❌ Ne crée PAS le venv
- ❌ N'installe PAS les dépendances
- ❌ N'installe PAS FAISS automatiquement

**Quand l'utiliser** :
- Pour lancer l'application
- Après avoir fait `setup.sh`

**Commande** :
```bash
cd geniusia2
./run.sh
```

## 📋 Workflow Complet

### Première Installation

```bash
# 1. Installation complète
cd geniusia2
./setup.sh

# 2. Installer FAISS (si pas fait par setup.sh)
./install_faiss.sh

# 3. Reconstruire l'index FAISS (si des tâches existent)
cd ..
./rebuild_index.sh

# 4. Lancer l'application
cd geniusia2
./run.sh
```

### Utilisation Quotidienne

```bash
# 1. Démarrer Ollama (si pas déjà lancé)
ollama serve &

# 2. Lancer l'application
cd geniusia2
./run.sh
```

## 🔧 Scripts Disponibles

### Dans `geniusia2/`

| Script | Description | Quand l'utiliser |
|--------|-------------|------------------|
| `setup.sh` | Installation complète | Une fois au début |
| `run.sh` | Lance l'application | À chaque utilisation |
| `install_faiss.sh` | Installe FAISS | Si FAISS manque |

### À la racine

| Script | Description | Quand l'utiliser |
|--------|-------------|------------------|
| `rebuild_index.sh` | Reconstruit l'index FAISS | Si index manquant/corrompu |
| `test_task_replay.py` | Test de rejeu | Pour tester |
| `example_complete_workflow.py` | Workflow complet | Pour démo |
| `diagnostic_data.py` | Diagnostic | Pour vérifier l'état |
| `read_pkl.py` | Lecture des tâches | Pour explorer |

## ⚠️ Problèmes Courants

### "Environnement virtuel non trouvé"

**Symptôme** : `./run.sh` dit que le venv n'existe pas

**Solution** :
```bash
cd geniusia2
./setup.sh
```

### "FAISS n'est pas installé"

**Symptôme** : `./run.sh` propose d'installer FAISS

**Solution 1** : Accepter l'installation (taper 'o')

**Solution 2** : Installer manuellement
```bash
cd geniusia2
./install_faiss.sh
```

### "Ollama ne semble pas être en cours d'exécution"

**Symptôme** : Message d'avertissement au lancement

**Solution** :
```bash
# Dans un terminal séparé
ollama serve
```

### Scripts Python ne fonctionnent pas

**Symptôme** : `ModuleNotFoundError` ou `ImportError`

**Solution** : Utiliser le Python du venv
```bash
# ❌ Mauvais
python3 test_task_replay.py

# ✅ Bon
geniusia2/venv/bin/python test_task_replay.py
```

## 📊 Vérification de l'Installation

### Checklist

```bash
# 1. Vérifier que le venv existe
ls geniusia2/venv/

# 2. Vérifier que FAISS est installé
geniusia2/venv/bin/python -c "import faiss; print('✅ FAISS OK')"

# 3. Vérifier que l'index FAISS existe
ls -lh geniusia2/data/faiss_index/

# 4. Vérifier qu'Ollama tourne
pgrep -x ollama && echo "✅ Ollama OK" || echo "❌ Ollama non lancé"

# 5. Diagnostic complet
geniusia2/venv/bin/python diagnostic_data.py
```

### Résultat Attendu

```
✅ FAISS OK
✅ Ollama OK
✅ Index FAISS : 595 KB
✅ 99 tâches disponibles
```

## 🎯 Résumé

### Pour Installer (Une fois)

```bash
cd geniusia2
./setup.sh
./install_faiss.sh
```

### Pour Utiliser (À chaque fois)

```bash
# Terminal 1 : Ollama
ollama serve

# Terminal 2 : Application
cd geniusia2
./run.sh
```

### Pour Tester

```bash
geniusia2/venv/bin/python test_task_replay.py
```

## 📝 Notes Importantes

1. **`setup.sh` ne lance PAS l'application** - Il installe seulement
2. **`run.sh` ne fait PAS l'installation** - Il lance seulement
3. **Toujours utiliser le Python du venv** pour les scripts
4. **Ollama doit tourner** avant de lancer l'application

## 🆘 En Cas de Doute

```bash
# Tout réinstaller
cd geniusia2
rm -rf venv
./setup.sh
./install_faiss.sh

# Vérifier
cd ..
geniusia2/venv/bin/python diagnostic_data.py

# Lancer
cd geniusia2
./run.sh
```

**Tout devrait fonctionner ! 🚀**
