# 📓 Journal Historique ## Chronologie du projet Effi --- ## 2026-02-19 : Installation de la stack initiale **Machine :** effi-server (192.168.1.27) **Services installés :** - ✅ Open WebUI (port 3000) - ✅ WOL Proxy (port 3011) - ✅ Qdrant (port 6333) - ✅ CouchDB (port 5984) - ✅ n8n (port 5678) - ✅ mcpo (port 8000) **Statut :** Infrastructure opérationnelle --- ## 2026-02-21 : Configuration ROCm et Whisper **Machine :** folzo-Corp (192.168.1.11) **Réalisations :** - Installation ROCm sur Bazzite - Recherche d'images Docker AMD - Choix du modèle `bofenghuang/whisper-large-v3-french` - Configuration OpenWebUI pour pointer vers STT **Notes :** Projet de faire tourner Whisper sur GPU AMD --- ## 2026-02-23 : Intégration MCP Obsidian **Réalisations :** - Intégration MCP Obsidian fonctionnelle - Tests de synchronisation - Configuration des outils MCP **Projets futurs identifiés :** - Intégration Home Assistant - Workflows n8n pour domotique - Commandes vocales --- ## Mars 2026 : Migration et optimisations ### Migration STT/TTS vers folzo-Corp **Motivation :** Réduire la charge CPU sur effi-server **Actions :** - Migration de openedai-speech vers folzo-Corp - Build CTranslate2 ROCm pour speaches - Configuration group_add avec GID numériques (44, 991) - Firewall ports ouverts sur folzo-Corp ### Build CTranslate2 ROCm **Problème rencontré :** - `gfx1101` (dans Dockerfile) incompatible avec RX 7800 XT (`gfx1100`) - `hipErrorInvalidDeviceFunction` **Solution :** ```bash sed -i 's/gfx1101/gfx1100/g' Dockerfile.rocm-ct2 docker build -f Dockerfile.rocm-ct2 -t speaches:rocm-ct2 . ``` **Statut :** Rebuild ROCm en cours, fonctionnement en CPU (int8) temporairement ### Configuration mémoire persistante **Installation :** - Filtre "Auto Memory" par nokodo - Filtre "Memory Injection Filter" par Raphael - Patch du code pour gestion JSON markdown - Tests d'enregistrement et restitution réussis ### Problèmes résolus 1. **wol-proxy** : Build local depuis code Python maison 2. **Interface réseau** : Fix NetworkManager + udev rules 3. **Whisper** : Correction repo HuggingFace 4. **speaches** : Suppression PRELOAD_MODELS, utilisation speaches-init 5. **openedai-speech** : group_add avec GID numériques 6. **CTranslate2** : WHISPER__COMPUTE_TYPE=int8 en CPU 7. **mcpo** : Création config.json vide 8. **Open WebUI** : Ajout restart: unless-stopped à tous les services --- ## Avril 2026 : Documentation et organisation **Actions :** - Réorganisation complète de la documentation - Création dépôt Git sur Gitea - Structuration en sections logiques - Fusion et nettoyage des notes dispersées **Structure créée :** ``` effi/ ├── README.md ├── docker-compose.yml ├── .env.example ├── .gitignore └── docs/ ├── 01-architecture/ ├── 02-configuration/ ├── 03-guides/ ├── 04-depannage/ └── 05-journal/ ``` --- ## État actuel (Avril 2026) ### Services opérationnels | Service | Hôte | État | |---------|------|------| | Open WebUI | effi-server | ✅ Fonctionnel | | Ollama | folzo-Corp | ✅ qwen2.5:14b | | Qdrant | effi-server | ✅ Running | | CouchDB | effi-server | ✅ Running | | n8n | effi-server | ✅ Running | | speaches | folzo-Corp | ✅ CPU (GPU pending) | | openedai-speech | folzo-Corp | ✅ ROCm gfx1100 | | wol-proxy | effi-server | ✅ Fonctionnel | | mcpo | effi-server | ✅ Running | | pipelines | effi-server | ✅ Running | ### Fonctionnalités actives - ✅ Chat textuel avec mémoire persistante - ✅ RAG avec Qdrant - ✅ STT (Whisper CPU, ~10s/phrase) - ✅ TTS (Piper FR, ~300ms) - ✅ Sync Obsidian LiveSync - ✅ Wake-on-LAN automatique ### En cours / À venir - 🔧 Finaliser build speaches ROCm gfx1100 - 🔧 Configurer RAG avec fichiers Nextcloud - 🔧 Workflows n8n avancés - 🔧 Intégration Home Assistant - 🔧 Voice control complet --- ## Leçons apprises ### Ce qui a bien fonctionné 1. **Architecture multi-machines** : Séparation logique CPU/GPU 2. **Docker Compose** : Gestion simplifiée des services 3. **Mémoire persistante** : Filtres OpenWebUI efficaces 4. **Wake-on-LAN** : Solution élégante pour économie d'énergie ### Difficultés rencontrées 1. **ROCm AMD** : Complexité du build, documentation dispersée 2. **Groupes Docker** : Nécessité d'utiliser GID vs noms 3. **Networking** : Conflits DHCP, interfaces qui tombent 4. **Documentation** : Notes dispersées, doublons ### Bonnes pratiques identifiées 1. Toujours utiliser `restart: unless-stopped` 2. Documenter les erreurs ET les solutions 3. Versionner les configurations 4. Sauvegarder avant toute modification majeure 5. Utiliser des IPs fixes ou réservations DHCP --- *Dernière mise à jour : Avril 2026*