# Guide de Déploiement : ZimLocal AI sur une nouvelle machine

Ce document explique comment transférer l'application ZimLocal AI vers un ordinateur plus puissant pour obtenir des performances optimales (réponses plus rapides, meilleure fluidité).

## 1. Préparation sur l'ordinateur actuel (Machine A)

Assurez-vous que tous les éléments nécessaires sont bien présents dans votre dossier `zim` sur le disque externe.

### Éléments à copier :
*   **Le dossier complet `zim`** :
    *   `main.py`, `qa_engine.py`, `indexer.py` (les scripts)
    *   `static/` (l'interface web)
    *   `zim_index.db` (l'index de 28h de travail - **CRITIQUE**)
    *   `data/` (contenant vos fichiers .zim de 54 Go)
    *   `indexer_status.json` (pour conserver l'état d'indexation terminé)

> [!TIP]
> Si vous avez déjà tout cela sur votre disque externe, vous êtes prêt.

---

## 2. Installation sur le nouvel ordinateur (Machine B)

### Étape 1 : Prérequis système
Installez les composants de base (si non présents) :
1.  **Python 3.10 ou supérieur**.
2.  **Ollama** : Téléchargez-le sur [ollama.com](https://ollama.com).

### Étape 2 : Copie des fichiers
Branchez votre disque externe sur la nouvelle machine et copiez le dossier `zim` à l'emplacement de votre choix (par exemple dans votre dossier personnel `/home/utilisateur/zim`).

### Étape 3 : Installation d'Ollama et du Modèle
Une fois Ollama installé, ouvrez un terminal et téléchargez le modèle utilisé par l'application :
```bash
ollama pull llama3
```

### Étape 4 : Configuration de l'environnement Python
Dans le dossier `zim` sur la nouvelle machine, recréez l'environnement virtuel pour garantir la compatibilité :

1.  Ouvrez un terminal dans le dossier `zim`.
2.  Supprimez l'ancien environnement (si copié par erreur) : `rm -rf .venv`
3.  Créez le nouveau : `python3 -m venv .venv`
4.  Activez-le : `source .venv/bin/activate`
5.  Installez les dépendances :
```bash
pip install fastapi uvicorn httpx psutil libzim beautifulsoup4 lxml jinja2
```

---

## 3. Lancement et Vérification

### Lancement du serveur
Toujours dans le terminal avec l'environnement activé :
```bash
python3 main.py
```

### Accès à l'application
Ouvrez votre navigateur à l'adresse suivante :
[http://localhost:8000](http://localhost:8000)

---

## 4. Pourquoi ce sera plus rapide ?
1.  **RAM** : Si la nouvelle machine a 16 Go ou 32 Go de RAM, le modèle `Llama 3` restera en mémoire vive au lieu d'utiliser le disque (swap), ce qui divise le temps de réponse par 10 ou 20.
2.  **GPU (Carte graphique)** : Si la nouvelle machine possède une carte NVIDIA, Ollama l'utilisera automatiquement. Les réponses seront alors quasi instantanées.
3.  **Processeur (CPU)** : Un processeur plus récent traitera les données beaucoup plus vite.

## 5. Dépannage
*   **Erreur `ModuleNotFoundError`** : Relancez l'installation des dépendances (Etape 4.5).
*   **Ollama introuvable** : Assurez-vous que l'application Ollama est lancée en arrière-plan sur la machine.
*   **Fichiers ZIM non trouvés** : Vérifiez que vos fichiers `.zim` sont bien dans le dossier `data/` à l'intérieur du dossier de l'application.
