# 📦 Guide d'Installation ## Vue d'ensemble Ce guide décrit l'installation complète de l'infrastructure Effi, du serveur Ubuntu au premier démarrage des services. **Temps estimé** : 2-3 heures **Difficulté** : Intermédiaire --- ## Prérequis ### Matériel **effi-server (serveur principal)** : - CPU : Intel J5040 ou équivalent (4 cœurs) - RAM : 8 GB minimum - Stockage : 50 GB SSD minimum - OS : Ubuntu Server 22.04 LTS **folzo-Corp (PC Gaming)** : - CPU : AMD Ryzen 5 ou supérieur - RAM : 32 GB recommandé - GPU : AMD RX 7800 XT (16 GB VRAM) - OS : Bazzite (Fedora) ou Ubuntu 22.04 ### Logiciels requis **Sur effi-server** : - Docker Engine 24.x+ - Docker Compose v2+ - curl, git **Sur folzo-Corp** : - Ollama - ROCm 6.3.4 (pour AMD GPU) - Docker Engine --- ## Étape 1 : Préparation du serveur (effi-server) ### 1.1 Installation de Docker ```bash # Mettre à jour le système sudo apt update && sudo apt upgrade -y # Installer les dépendances sudo apt install -y ca-certificates curl gnupg lsb-release # Ajouter la clé GPG officielle de Docker sudo mkdir -p /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg # Ajouter le repository Docker echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null # Installer Docker sudo apt update sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin # Vérifier l'installation sudo docker --version sudo docker compose version # Ajouter l'utilisateur au groupe docker (déconnexion/reconnexion nécessaire) sudo usermod -aG docker $USER ``` ### 1.2 Création de la structure de dossiers ```bash # Créer le dossier principal mkdir -p ~/effi cd ~/effi # Créer les sous-dossiers mkdir -p mcpo-config mkdir -p qdrant-storage mkdir -p couchdb-data mkdir -p n8n-data mkdir -p wol-proxy mkdir -p tts-voices mkdir -p tts-config mkdir -p obsidian-vault ``` --- ## Étape 2 : Configuration du PC Gaming (folzo-Corp) ### 2.1 Installation d'Ollama ```bash # Installer Ollama curl -fsSL https://ollama.com/install.sh | sh # Vérifier l'installation ollama --version # Télécharger les modèles nécessaires ollama pull qwen2.5:14b ollama pull qwen2.5:3b ollama pull bge-m3 # Vérifier les modèles installés ollama list ``` ### 2.2 Configuration de Ollama pour le réseau ```bash # Créer le fichier de service systemd sudo systemctl edit ollama.service ``` Ajouter : ```ini [Service] Environment="OLLAMA_HOST=0.0.0.0:11434" ``` ```bash # Redémarrer Ollama sudo systemctl daemon-reload sudo systemctl restart ollama # Vérifier que Ollama écoute sur toutes les interfaces sudo ss -tlnp | grep 11434 ``` ### 2.3 Installation de ROCm (pour AMD GPU) ```bash # Sur Bazzite/Fedora sudo dnf install -y rocm-dev rocm-smi # Vérifier l'installation rocm-smi --showproductname rocminfo | grep gfx ``` ### 2.4 Configuration des services Docker sur folzo-Corp Créer les dossiers : ```bash mkdir -p ~/speaches mkdir -p ~/openedai-speech/tts-voices mkdir -p ~/openedai-speech/tts-config ``` --- ## Étape 3 : Configuration de la mémoire persistante Voir le guide détaillé dans [Configuration Mémoire](./memoire.md). --- ## Étape 4 : Premier démarrage ### 4.1 Configuration du fichier .env ```bash cd ~/effi cp .env.example .env nano .env ``` Remplir toutes les variables : - `WEBUI_SECRET_KEY` : Générer une clé aléatoire - `OLLAMA_HOST` : IP de folzo-Corp - `PC_GAMING_MAC` : Adresse MAC de folzo-Corp - `COUCHDB_USER/PASSWORD` : Identifiants CouchDB - `N8N_USER/PASSWORD` : Identifiants n8n ### 4.2 Initialisation de CouchDB ```bash # Démarrer uniquement CouchDB docker compose up -d couchdb # Attendre 10 secondes sleep 10 # Créer les bases nécessaires curl -X PUT http://master:VOTRE_MOT_DE_PASSE@192.168.1.27:5984/_users curl -X PUT http://master:VOTRE_MOT_DE_PASSE@192.168.1.27:5984/_replicator curl -X PUT http://master:VOTRE_MOT_DE_PASSE@192.168.1.27:5984/obsidian-livesync ``` ### 4.3 Démarrage complet ```bash # Démarrer tous les services docker compose up -d # Vérifier l'état docker compose ps # Voir les logs docker compose logs -f ``` --- ## Étape 5 : Configuration STT/TTS sur folzo-Corp ### 5.1 Build de speaches (ROCm) ```bash cd ~ git clone https://github.com/speaches-ai/speaches.git cd speaches/src # Modifier pour gfx1100 sed -i 's/gfx1101/gfx1100/g' Dockerfile.rocm-ct2 # Build (prend ~50 min) docker build -f Dockerfile.rocm-ct2 -t speaches:rocm-ct2 . ``` ### 5.2 Téléchargement des voix TTS ```bash cd ~/openedai-speech/tts-voices # Voix française Piper wget https://huggingface.co/rhasspy/piper-voices/resolve/main/fr/fr_FR/upmc/medium/fr_FR-upmc-medium.onnx wget https://huggingface.co/rhasspy/piper-voices/resolve/main/fr/fr_FR/upmc/medium/fr_FR-upmc-medium.onnx.json # Configuration mkdir -p ../tts-config cat > ../tts-config/config.yaml << 'EOF' tts-1: alloy: model: voices/fr_FR-upmc-medium.onnx speaker: 0 EOF ``` ### 5.3 Démarrage des services audio ```bash cd ~/speaches docker compose up -d cd ~/openedai-speech docker compose up -d ``` --- ## Étape 6 : Vérification finale ### 6.1 Test des services ```bash # Test OpenWebUI curl http://192.168.1.27:3000 # Test Ollama curl http://192.168.1.11:11434/api/tags # Test STT curl http://192.168.1.11:8200/v1/models # Test TTS curl http://192.168.1.11:8100/v1/models # Test CouchDB curl http://192.168.1.27:5984 # Test n8n curl http://192.168.1.27:5678 ``` ### 6.2 Accès aux interfaces | Service | URL | |---------|-----| | Open WebUI | http://192.168.1.27:3000 | | n8n | http://192.168.1.27:5678 | | CouchDB | http://192.168.1.27:5984/_utils | | Qdrant | http://192.168.1.27:6333 | --- ## Prochaines étapes Après l'installation, suivre le guide de [Première Configuration](./premiere-config.md) pour : - Créer le compte admin - Configurer les connexions - Installer les filtres de mémoire - Tester le pipeline vocal --- ## Dépannage initial ### Les conteneurs ne démarrent pas ```bash # Voir les logs d'erreur docker compose logs [nom-du-service] # Vérifier les ports utilisés sudo ss -tlnp # Vérifier les variables d'environnement docker compose config ``` ### Erreur de permissions ```bash # Fixer les permissions des volumes sudo chown -R $USER:$USER ~/effi/*-data sudo chown -R $USER:$USER ~/effi/*-storage ``` ### Wake-on-LAN ne fonctionne pas ```bash # Vérifier que wol-proxy est configuré docker logs wol-proxy # Tester le WoL manuellement sudo apt install wakeonlan wakeonlan XX:XX:XX:XX:XX:XX # MAC de folzo-Corp ```