docs: Update TODO with Fedora reinstallation context and voice/hearing plan

- Document reformatage folzo-Corp (Ubuntu → Fedora)
- Add detailed phases for TTS/STT installation
- Update status: Phase 1 complete, Phases 2-3 in progress
- Add references to new guide voix-ouie-fedora-install.md
- Restructure priorities with voice/hearing as current focus
- Add recap commands section for quick reference
This commit is contained in:
Folzo
2026-04-05 09:55:17 +02:00
parent 3ffa867c13
commit 05f9cb41f4
+212 -312
View File
@@ -1,392 +1,292 @@
# EFFI - THREAD SUIVANT : TODO LIST & CONTEXTE
**Date création :** 2026-04-05
**Mis à jour :** 2026-04-05
**Créé par :** OpenCode session 2026-04-05
**Status :** En attente traitement
**Status :** 🔄 EN COURS - Installation voix et ouïe (TTS/STT) sur folzo-Corp Fedora
---
## CONTEXTE RAPIDE
## 🚨 CONTEXTE ACTUEL (IMPORTANT)
**Infrastructure actuelle :**
- effi-server (192.168.1.27) : Intel J5040, 8GB RAM - Open WebUI, Qdrant, N8N, Whisper, Openedai-Speech
- folzo-Corp (192.168.1.11) : Ryzen 5800X3D, RX 7800 XT 16GB VRAM, 32GB RAM - Ollama avec qwen3.5:9b
- Modèle principal : Effi (qwen3.5:9b, contexte 32K)
- Sub Agent Tool : Installé et configuré
- Mémoire : Solution manuelle retenue (pas Knowledge Memory, trop lent)
- Web Search : Actif avec DDGS
### Changement majeur : Reformatage folzo-Corp
**Documentation créée :**
- `docs/04-depannage/openwebui-optimisation-top30.md` : Top 30 outils
- `docs/CONFIGURATION-RECAP-GITEA.md` : Configuration complète
**Ce qui s'est passé :**
- folzo-Corp (192.168.1.11) a été reformaté : Ubuntu → **Fedora**
- Tous les services précédemment installés ont été perdus
- Réinstallation complète nécessaire
**Ce qui est déjà fait :**
- ✅ Fedora installé et configuré
- ✅ ROCm fonctionnel (RX 7800 XT détectée)
- ✅ Docker v29.3.1 installé et fonctionnel
- ✅ Firewall configuré (ports 8100, 8200, 11434 ouverts)
**Architecture cible :**
```
folzo-Corp (192.168.1.11) - Fedora
├── openedai-speech (TTS) - Port 8100 - ROCm GPU ⏳ EN COURS
├── speaches (STT) - Port 8200 - CPU ⏳ EN COURS
├── Ollama - Port 11434 - ROCm GPU ✅ Déjà installé
└── qwen3.5:9b (32K context) ✅ Déjà installé
effi-server (192.168.1.27)
└── Open WebUI - Port 3000 ✅ Déjà configuré
└── Configuration Audio à mettre à jour après TTS/STT
```
---
## TODO LIST PRIORITAIRE
## 📋 TODO LIST - INSTALLATION VOIX & OUÏE (PRIORITÉ MAX)
### 1. OPTIMISATION RECHERCHE WEB ⭐⭐⭐
### PHASE 1 : Préparation Fedora ✅ TERMINÉE
**Configuration actuelle :**
- Moteur : DDGS (DuckDuckGo)
- Backend : Auto (Aléatoire)
- Nombre résultats : 5
- Requêtes concurrentes : 3
- Langue YouTube : en
- [x] Vérifier ROCm (`rocm-smi` fonctionne)
- [x] Installer Docker et docker-compose
- [x] Configurer groupes utilisateur (docker, video, render)
- [x] Ouvrir ports firewall (8100, 8200, 11434)
**Objectifs :**
- [ ] Tester d'autres backends (SearXNG auto-hébergé, Brave Search API)
- [ ] Augmenter nombre de résultats (10 ?)
- [ ] Vérifier paramètres concurrents
- [ ] Tester avec requêtes en anglais vs français
**Ressources :**
- Admin Panel → Settings → Web Search
- SearXNG peut être auto-hébergé sur effi-server
**Résultat :**
```bash
Docker version 29.3.1
ROCm: RX 7800 XT gfx1101 détectée
Firewall: 1025-65535/tcp ouverts
```
---
### 2. INTÉGRATION JOPLIN + OPENWEBUI ⭐⭐⭐⭐
### PHASE 2 : TTS (openedai-speech) ⏳ EN COURS
**Objectif :** Lier Joplin Server (sur NAS) avec OpenWebUI pour :
- RAG sur les notes Joplin existantes
- Copie des notes OpenWebUI vers Joplin
**Solutions possibles :**
**Option A : Joplin Data API**
- Joplin Server expose une API REST
- Créer un outil OpenWebUI qui interroge l'API Joplin
- Récupérer les notes via `/api/items` ou `/api/notes`
**Option B : Export/Import périodique**
- Script Python qui sync les notes OpenWebUI → Joplin
- Ou inverse : export Joplin → knowledge base OpenWebUI
**Option C : MCP (Model Context Protocol)**
- Si Joplin a un MCP server
- Ou créer un bridge Joplin ↔ OpenWebUI
**Configuration Joplin Server :**
- URL : http://[IP_NAS]:22300 (à vérifier)
- Auth : Token API nécessaire
- Docs : https://joplinapp.org/help/dev/spec/architecture/
**Objectif :** Déployer openedai-speech sur folzo-Corp avec ROCm
**Étapes :**
- [ ] Vérifier URL et accès Joplin Server
- [ ] Tester API Joplin avec curl
- [ ] Créer outil OpenWebUI ou script de sync
- [ ] Configurer knowledge base "joplin-notes" si besoin
#### 2.1 Structure et configuration
- [ ] Créer dossiers `~/openedai-speech/{tts-voices,tts-config}`
- [ ] Créer `docker-compose.yml` avec ROCm support
- [ ] Créer `voice_to_speaker.yaml` (config voix XTTS)
#### 2.2 Modèles de voix
- [ ] Télécharger modèles Piper (fallback)
- `en_US-libritts_r-medium.onnx`
- `en_US-libritts_r-medium.onnx.json`
- [ ] (Optionnel) Restaurer fichiers .wav personnalisés depuis backup
#### 2.3 Déploiement
- [ ] Lancer container : `docker compose up -d`
- [ ] Vérifier logs : `docker logs -f openedai-speech`
- [ ] Test local : `curl http://localhost:8100/v1/audio/speech`
- [ ] Test depuis effi-server : `curl http://192.168.1.11:8100/...`
**Fichiers à créer :**
```
~/openedai-speech/
├── docker-compose.yml
├── tts-config/
│ └── voice_to_speaker.yaml
└── tts-voices/
├── en_US-libritts_r-medium.onnx
├── en_US-libritts_r-medium.onnx.json
└── (nova.wav, alloy.wav...)
```
**Guide détaillé :** `docs/03-guides/voix-ouie-fedora-install.md`
---
### 3. GÉNÉRATION D'IMAGE ⭐⭐⭐⭐
### PHASE 3 : STT (speaches - Whisper) ⏳ EN COURS
**Matériel disponible :**
- folzo-Corp : RX 7800 XT 16GB VRAM
- Ollama : qwen3.5:9b (texte uniquement)
**Solutions :**
**Option A : ComfyUI + Stable Diffusion (RECOMMANDÉ)**
- Installation sur folzo-Corp (GPU AMD)
- Utilise ROCm pour accélération GPU
- Intégration OpenWebUI via API
**Installation ComfyUI :**
```bash
# Sur folzo-Corp
pip install comfyui
# Ou git clone https://github.com/comfyanonymous/ComfyUI
# Configurer pour ROCm (AMD GPU)
# Port par défaut : 8188
```
**Configuration OpenWebUI :**
- Admin Panel → Settings → Images
- Provider : ComfyUI
- URL : http://192.168.1.11:8188
**Modèles recommandés pour RX 7800 XT 16GB :**
- SDXL Base + Refiner (optimisé)
- SD 1.5 (plus rapide, moins gourmand)
- Pony Diffusion XL (si disponible)
**Option B : Ollama avec modèle vision**
- qwen3.5 a une version vision (si disponible)
- Mais moins performant que SD dédié
**Objectif :** Déployer speaches avec Whisper large-v3-turbo
**Étapes :**
- [ ] Installer ComfyUI sur folzo-Corp
- [ ] Configurer ROCm pour RX 7800 XT
- [ ] Télécharger modèle SDXL ou SD 1.5
- [ ] Tester génération image
- [ ] Configurer dans OpenWebUI
**Vérification capacité :**
```bash
# Sur folzo-Corp
rocm-smi # Vérifier GPU dispo
# ComfyUI avec ROCm devrait fonctionner sur 7800 XT
```
#### 3.1 Structure
- [ ] Créer dossier `~/speaches`
- [ ] Cloner repo : `git clone https://github.com/speaches-ai/speaches.git`
---
#### 3.2 Configuration
- [ ] Créer `Dockerfile` (image uv + speaches)
- [ ] Créer `docker-compose.yml` avec volume modèles
### 4. WHISPER (STT) - RÉPARATION ⭐⭐⭐
#### 3.3 Déploiement
- [ ] Builder image : `docker compose build`
- [ ] Lancer services : `docker compose up -d`
- [ ] Attendre téléchargement modèle (~1.5GB)
- [ ] Vérifier enregistrement modèle : `curl http://localhost:8200/v1/models`
**Problème :** Ne marche pas très bien
**Configuration actuelle :**
- Service : Whisper sur effi-server (port 8200)
- Modèle : Systran/faster-whisper-large-v3
- Langue : FR
- Device : CPU (Intel J5040)
**Solutions possibles :**
**Option A : Optimiser modèle actuel**
- Tester modèle plus petit (medium ou small) pour plus de vitesse
- Vérifier latence réseau entre effi-server et folzo-Corp
- Vérifier qualité micro/input audio
**Option B : Whisper sur folzo-Corp (GPU)**
- Déplacer whisper sur folzo-Corp pour utiliser GPU
- ROCm supporte whisper ?
- Ou utiliser CPU sur Ryzen 5800X3D (plus rapide que J5040)
**Option C : Alternative (faster-whisper-cpp)**
- Version C++ plus rapide
- Quantization INT8 pour vitesse
**Tests à faire :**
- [ ] Vérifier logs whisper : `docker logs whisper`
- [ ] Tester avec curl direct
- [ ] Mesurer latence (temps transcription 30s audio)
- [ ] Comparer qualité vs vitesse avec modèles smaller
**Configuration OpenWebUI actuelle :**
```yaml
AUDIO_STT_ENGINE: openai
AUDIO_STT_OPENAI_API_BASE_URL: http://192.168.1.27:8200/v1
AUDIO_STT_MODEL: Systran/faster-whisper-large-v3
```
---
### 5. TTS (OPENEDAI-SPEECH) - RÉPARATION ⭐⭐⭐
**Problème :** Connexion refusée au port 8100 depuis effi-server
#### 3.4 Tests
- [ ] Test local transcription
- [ ] Test depuis effi-server
**Configuration :**
- Service : Openedai-Speech sur folzo-Corp (port 8100)
- Erreur : `Connection refused` depuis effi-server
- Modèle : `deepdml/faster-whisper-large-v3-turbo-ct2`
- Langue : `fr`
- Compute : `int8` (CPU)
- Threads : `4`
**Diagnostics nécessaires :**
```bash
# Sur folzo-Corp
sudo systemctl status openedai-speech # Si service systemd
# OU
docker ps | grep openedai # Si container
# Test local
curl http://localhost:8100/v1/audio/voices
# Test depuis effi-server
curl http://192.168.1.11:8100/v1/audio/voices
```
**Causes possibles :**
- Service pas démarré sur folzo-Corp
- Firewall bloque port 8100
- Ollama écoute sur 127.0.0.1 au lieu de 0.0.0.0
- Container Docker pas exposé sur le réseau
**Solutions :**
- [ ] Vérifier si service/container tourne sur folzo-Corp
- [ ] Vérifier binding réseau (0.0.0.0 vs 127.0.0.1)
- [ ] Ouvrir port 8100 dans firewall
- [ ] Tester avec `netstat -tlnp | grep 8100`
**Alternative si réparation impossible :**
- Désactiver TTS dans OpenWebUI
- Ou utiliser TTS du navigateur (Web Speech API natif)
**Note :** ROCm GPU pour Whisper est optionnel futur (compilation complexe)
---
### 6. HOME ASSISTANT - OPTIMISATION ⭐⭐⭐
### PHASE 4 : Configuration Open WebUI ⏳ À FAIRE
**Problème :** Plugin installé mais très lent à chaque demande
**Objectif :** Connecter TTS/STT à Open WebUI
**Configuration actuelle :**
- Tool installé dans OpenWebUI
- Home Assistant accessible (URL ?)
- Latence élevée à chaque appel
**Admin Panel → Settings → Audio :**
**Optimisations possibles :**
**STT :**
- [ ] Engine : `OpenAI`
- [ ] API Base URL : `http://192.168.1.11:8200/v1`
- [ ] Model : `deepdml/faster-whisper-large-v3-turbo-ct2`
**Option A : Cache et keep-alive**
- Vérifier si connexion HA est maintenue ou recréée à chaque fois
- Configurer timeout approprié
- Utiliser webhook au lieu de polling
**TTS :**
- [ ] Engine : `OpenAI`
- [ ] API Base URL : `http://192.168.1.11:8100/v1`
- [ ] Model : `tts-1-hd`
- [ ] Voice : `nova` (ou `alloy` en fallback)
**Option B : Réduire nombre d'entités exposées**
- Limiter les entités accessibles à celles utiles
- Moins de données à récupérer = plus rapide
**Option C : Local vs Cloud**
- Vérifier si HA est accessible en local (même réseau)
- Éviter rebonds internet si possible
**Option D : Async et parallélisme**
- Vérifier si le tool utilise async/await correctement
- Possibilité de faire plusieurs appels en parallèle
**Configuration à vérifier :**
```yaml
# Dans Home Assistant
Configuration → Personnes → Tokens d'accès
- Token Long-Lived créé ?
- Droits suffisants ?
```
**Étapes :**
- [ ] Mesurer temps de réponse actuel
- [ ] Vérifier logs Home Assistant (appels reçus)
- [ ] Tester appel API direct avec curl
- [ ] Optimiser tool ou configuration
**Tests finaux :**
- [ ] Test micro dans chat Effi
- [ ] Vérifier STT → transcription
- [ ] Vérifier réponse LLM
- [ ] Vérifier TTS → lecture voix
---
### 7. OUTIL WEB SCRAPING ⭐⭐⭐
## 📚 AUTRES TÂCHES (APRÈS VOIX/OUÏE)
**Besoin :** Outil pour extraire contenu de pages web
### Phase 5 : Optimisations
**Solutions :**
#### 5.1 Web Search
- [ ] Tester autres backends (SearXNG auto-hébergé)
- [ ] Augmenter nombre résultats (10 ?)
- [ ] Vérifier paramètres concurrents
**Option A : Tool existant OpenWebUI**
- Rechercher dans marketplace : "browser", "scrape", "fetch"
- Ex: "Browser Tool", "Web Scraper", "Fetch URL"
#### 5.2 Home Assistant
- [ ] Diagnostiquer lenteur
- [ ] Optimiser connexions/cache
- [ ] Réduire entités exposées si besoin
**Option B : Créer tool custom**
- Python avec BeautifulSoup + requests
- Ou Playwright pour navigation complète
- Déployer comme tool OpenWebUI
### Phase 6 : Intégrations majeures
**Option C : Utiliser Web Search avec fetch**
- Web Search a déjà une fonction "fetch_url"
- Peut récupérer contenu d'une URL spécifique
- À vérifier si suffisant ou besoin navigation complexe
#### 6.1 Joplin + OpenWebUI
- [ ] Vérifier URL Joplin Server
- [ ] Tester API Joplin
- [ ] Créer outil ou script de sync
**Installation recommandée :**
```bash
# Tool existant à chercher
Admin Panel → Tools → Discover
Rechercher : "browser", "scraper", "fetch"
```
#### 6.2 Génération d'image (ComfyUI)
- [ ] Installer ComfyUI sur folzo-Corp (ROCm)
- [ ] Télécharger modèle SDXL ou SD 1.5
- [ ] Configurer dans OpenWebUI
**Étapes :**
- [ ] Chercher tool existant marketplace
- [ ] Tester avec quelques URLs
- [ ] Si besoin avancé, créer tool custom
### Phase 7 : Outils additionnels
---
#### 7.1 Web Scraping
- [ ] Chercher tool marketplace OpenWebUI
- [ ] Tester ou créer tool custom
### 8. ACCÈS CALENDRIER ⭐⭐⭐
**Besoin :** Effi peut accéder au calendrier (lecture/écriture)
**Solutions :**
**Option A : CalDAV (standard)**
- Protocole ouvert pour calendriers
- Supporté par Nextcloud, Google Calendar (via bridge), iCloud
- Tool OpenWebUI "Calendar" ou "CalDAV"
**Option B : Google Calendar API**
- Si utilise Google Calendar
- Nécessite OAuth2 credentials
- Tool existant probablement
**Option C : Nextcloud Calendar**
- Si Nextcloud présent sur le NAS
- API CalDAV native
- Intégration directe possible
**Option D : Joplin (déjà présent)**
- Joplin a des plugins calendrier/tâches
- Peut-être pas l'idéal pour calendrier pur
**Étapes :**
- [ ] Identifier solution calendrier actuelle (Google ? Nextcloud ?)
- [ ] Chercher tool CalDAV/Google Calendar marketplace
#### 7.2 Calendrier
- [ ] Identifier solution calendrier (Google/Nextcloud)
- [ ] Chercher tool CalDAV/Google Calendar
- [ ] Configurer accès API
- [ ] Tester création/lecture événements
---
## ORDRE DE PRIORITÉ SUGGÉRÉ
## 🔧 RÉFÉRENCES & DOCUMENTATION
### Phase 1 : Réparations urgentes (Jour 1)
1. **TTS** (rapide à diagnostiquer/réparer)
2. **Whisper** (optimisation ou migration)
### Documentation créée
### Phase 2 : Intégrations majeures (Jour 1-2)
3. **Joplin + OpenWebUI** (big feature)
4. **Génération d'image** (installation ComfyUI)
1. **Guide installation voix/ouïe Fedora** : `docs/03-guides/voix-ouie-fedora-install.md`
- Plan complet TTS/STT
- Docker compose configs
- Procédures de test
- Dépannage
### Phase 3 : Optimisations (Jour 2-3)
5. **Web Search** (paramètres)
6. **Home Assistant** (performance)
7. **Web Scraping** (tool à installer)
8. **Calendrier** (intégration)
2. **Historique complet projet** : `docs/ARCHIVE/HISTORIQUE-COMPLET-EFFI.md`
- Toute l'histoire du projet
- Choix technologiques
- Problèmes et solutions
3. **Configuration recap** : `docs/CONFIGURATION-RECAP-GITEA.md`
- Config actuelle validée
- Paramètres modèles
- Prompts système
4. **Optimisations top 30** : `docs/04-depannage/openwebui-optimisation-top30.md`
- Meilleurs outils/functions
- Paramètres optimaux
- Astuces performances
### Liens importants
- **Dépôt Gitea** : https://gitea.folzocorp.fr/Folzo/effi
- **openedai-speech** : https://github.com/matatonic/openedai-speech
- **speaches** : https://github.com/speaches-ai/speaches
---
## RAPPEL CONFIGURATION CLÉ
## 💡 NOTES POUR LE PROCHAIN THREAD
**Modèle Effi :**
- Base : qwen3.5:latest (9B)
- Contexte : 32K tokens
- Température : 0.7
- Répétez penalty : 1.05
### Contexte technique
**Sub Agent :**
- MAX_ITERATIONS : 10
- MAX_PARALLEL_AGENTS : 5
- EXCLUDED_TOOL_IDS : sub_agent
**Infrastructure actuelle validée :**
- effi-server : Intel J5040, 8GB RAM - Open WebUI, Qdrant, N8N ✅
- folzo-Corp : Ryzen 5800X3D, RX 7800 XT 16GB, 32GB RAM, **Fedora** ✅
- Modèle : Effi (qwen3.5:9b, contexte 32K) ✅
- Mémoire : Solution manuelle retenue ✅
- Web Search : Actif avec DDGS ✅
**Mémoire :**
- Solution : Native (Profile → Memory)
- Knowledge Memory : Abandonnée (trop lente)
**En cours d'installation :**
- openedai-speech (TTS) sur folzo-Corp
- speaches (STT) sur folzo-Corp
**Services :**
- Open WebUI : http://192.168.1.27:3000
- Ollama : http://192.168.1.11:11434 (via WOL)
### Points d'attention
1. **ROCm fonctionne** sur Fedora, mais build CTranslate2 complexe
2. **Whisper restera en CPU** pour l'instant (suffisant)
3. **XTTS v2** pour TTS donne meilleure qualité voix
4. **Docker sur Fedora** utilise Podman par défaut, mais docker installé explicitement
### Prochaines étapes après voix/ouïe
1. **Joplin integration** : Besoin RAG sur notes existantes
2. **ComfyUI** : Génération image avec RX 7800 XT 16GB
3. **Optimisations** : Web search, Home Assistant performance
---
## LIENS UTILES
## 📝 RÉCAPITULATIF COMMANDES
- Documentation créée : `docs/04-depannage/openwebui-optimisation-top30.md`
- Config récap : `docs/CONFIGURATION-RECAP-GITEA.md`
- Dépôt : https://gitea.folzocorp.fr/Folzo/effi
```bash
# === SUR FOLZO-CORP (Fedora) ===
---
# 1. TTS - openedai-speech
cd ~/openedai-speech
docker compose up -d
docker logs -f openedai-speech
## NOTES POUR LE PROCHAIN THREAD
# 2. STT - speaches
cd ~/speaches
docker compose build
docker compose up -d
docker logs -f speaches-stt
1. L'utilisateur est satisfait de la configuration actuelle et veut aller plus loin
2. Il est réceptif aux optimisations techniques
3. Infrastructure solide (RX 7800 XT 16GB est puissant pour génération image)
4. Préférence pour solutions self-hostées (Joplin déjà présent)
5. Utilise déjà Sub Agent avec succès
# 3. Tests
curl http://localhost:8100/v1/audio/speech \
-H "Content-Type: application/json" \
-d '{"model":"tts-1","input":"Test","voice":"alloy"}' \
--output /tmp/test.mp3
**Approche recommandée :**
- Prioriser les réparations (TTS, Whisper)
- Puis les gros projets (Joplin, Images)
- Enfin les optimisations fines
curl http://localhost:8200/v1/models
# === SUR EFFI-SERVER ===
# Configurer dans Open WebUI Admin Panel
# STT: http://192.168.1.11:8200/v1
# TTS: http://192.168.1.11:8100/v1
```
---
**Créé le :** 2026-04-05
**Statut :** ✅ En attente traitement thread suivant
**Mis à jour :** 2026-04-05
**Statut :** 🔄 EN COURS - Installation TTS/STT sur Fedora