# ⚙️ Guide de Première Configuration ## Vue d'ensemble Ce guide couvre la configuration initiale d'OpenWebUI après l'installation, de la création du compte à la mise en place de la mémoire persistante. --- ## Étape 1 : Premier accès à OpenWebUI ### 1.1 Créer le compte administrateur 1. Ouvrir `http://192.168.1.27:3000` dans un navigateur 2. Cliquer sur "Sign up" 3. Créer un compte avec : - **Nom** : Folzo (ou votre nom) - **Email** : votre email - **Mot de passe** : mot de passe fort **Note** : Le premier compte créé devient automatiquement administrateur. --- ## Étape 2 : Configuration des connexions ### 2.1 Connexion Ollama **Admin Panel → Settings → Connections** | Paramètre | Valeur | |-----------|--------| | Ollama API URL | `http://192.168.1.27:3011` | | Verify Ollama API | ✅ Cocher | Cliquer sur **Save** puis **Verify**. ### 2.2 Configuration Audio **Admin Panel → Settings → Audio** #### Paramètres STT (Speech-to-Text) | Paramètre | Valeur | |-----------|--------| | STT Engine | `OpenAI` | | STT OpenAI API URL | `http://192.168.1.11:8200/v1` | | STT Model | `deepdml/faster-whisper-large-v3-turbo-ct2` | | STT API Key | `anything` | #### Paramètres TTS (Text-to-Speech) | Paramètre | Valeur | |-----------|--------| | TTS Engine | `OpenAI` | | TTS OpenAI API URL | `http://192.168.1.11:8100/v1` | | TTS Model | `tts-1` (Piper) ou `tts-1-hd` (XTTS) | | TTS Voice | `alloy` | Cliquer sur **Save**. ### 2.3 Configuration RAG (Documents) **Admin Panel → Settings → Documents** | Paramètre | Valeur | |-----------|--------| | Embedding Model Engine | `Ollama` | | Ollama Base URL | `http://192.168.1.27:3011` | | Embedding Model | `bge-m3:latest` | | Vector Database | `qdrant` | | Qdrant URL | `http://qdrant:6333` | Cliquer sur **Save**. --- ## Étape 3 : Création du modèle Effi ### 3.1 Créer le modèle personnalisé **Admin Panel → Models → + New Model** | Paramètre | Valeur | |-----------|--------| | Model Name | `Effi` | | Base Model | `qwen2.5:14b` | Dans le champ **System Prompt**, coller : ``` Tu es Effi, l'assistante IA locale de Folzo (Open WebUI + Ollama). ## Langue Réponds UNIQUEMENT en français, quelle que soit la langue utilisée. ## Personnalité - Chaleureuse, efficace, orientée solutions — une amie geek de confiance. - Humour fin : 0 à 1 vanne max par réponse, jamais forcée. - Ton conversationnel IRL, phrases courtes, pas de pavés. ## Priorités 1. Répondre à la demande directement et clairement. 2. Ajouter un conseil ou alternative si pertinent. 3. Si ambigu → 1 à 3 questions courtes avant de proposer une solution. ## Règles strictes - Question simple → réponse courte (2–6 phrases) + 1 suggestion finale. - Action risquée (rm, format, firewall, suppression) → demande confirmation avant. - Ne sur-parle pas, pas de répétitions inutiles. ## Spécialités - Linux/Docker : commandes prêtes à copier + explication simple du "pourquoi". - Débogage : étape par étape, checks rapides d'abord. - Écriture : corrige en gardant le style de Folzo. ## Prise de notes Folzo utilise Obsidian. Si une note doit être créée, fournis le contenu formaté en Markdown prêt à copier. ## Mémoire N'invente pas de souvenirs. Les infos sur Folzo sont injectées automatiquement ci-dessous. ``` Cliquer sur **Save**. --- ## Étape 4 : Installation des filtres de mémoire ### 4.1 Installation d'Auto Memory **Admin Panel → Functions → Discover** 1. Rechercher **"Auto Memory"** par **nokodo** 2. Cliquer sur **Install** ### 4.2 Configuration d'Auto Memory **Admin Panel → Functions → Auto Memory → ⚙️ (Settings)** | Paramètre | Valeur | |-----------|--------| | OpenAI API URL | `http://192.168.1.27:3011/v1` | | Model | `qwen2.5:3b` | | API Key | `toto` | | Messages To Consider | `10` | | Related Memories N | `5` | | Minimum Memory Similarity | `0.7` | | Override Memory Context | `OFF` | | Debug Mode | `OFF` | **Activation** : Admin Panel → Functions → Auto Memory → ⋯ → Toggle Global → **ON** ### 4.3 Patch du code Auto Memory Le filtre a besoin d'un patch pour gérer correctement les réponses JSON. **Admin Panel → Functions → Auto Memory → ⋯ → Edit** 1. Chercher : `text_response = response.choices[0].message.content` 2. Remplacer le bloc `if response_model:` par : ```python if response_model: try: cleaned = re.sub(r'```(?:json)?\s*', '', text_response) cleaned = re.sub(r'```\s*', '', cleaned).strip() match = re.search(r'\{.*\}', cleaned, re.DOTALL) if match: cleaned = match.group(0) return response_model.model_validate_json(cleaned) except ValidationError as e: self.log(f"response model validation error: {e}", level="warning") raise return text_response ``` 3. Chercher `UNIFIED_SYSTEM_PROMPT` et ajouter au début : ```python UNIFIED_SYSTEM_PROMPT = """IMPORTANT: Respond with ONLY valid JSON. No markdown formatting, no code blocks, no explanation text. Start your response directly with { and end with }. """ + UNIFIED_SYSTEM_PROMPT ``` 4. Cliquer sur **Save** ### 4.4 Installation de Memory Injection Filter **Admin Panel → Functions → Discover** 1. Rechercher **"Memory Injection Filter"** par **Raphael** 2. Cliquer sur **Install** ### 4.5 Configuration de Memory Injection **Admin Panel → Functions → Memory Injection Filter → ⚙️** | Paramètre | Valeur | |-----------|--------| | PREPENDING_TEXT | `Voici les souvenirs à long terme de l'utilisateur :` | | SHOW_MEMORY_COUNT_EMITTER | `ON` | **Activation** : Admin Panel → Functions → Memory Injection Filter → ⋯ → Toggle Global → **ON** --- ## Étape 5 : Tests de fonctionnement ### 5.1 Test de conversation basique 1. Créer un nouveau chat 2. Sélectionner le modèle **Effi** 3. Envoyer : `Bonjour Effi, comment vas-tu ?` → Effi devrait répondre en français avec sa personnalité configurée. ### 5.2 Test de mémoire **Test d'enregistrement :** ``` Je collectionne les vinyles des années 80 ``` Vérifier dans la base SQLite : ```bash docker cp open-webui:/app/backend/data/webui.db /tmp/webui.db sqlite3 /tmp/webui.db "SELECT content FROM memory ORDER BY created_at DESC LIMIT 3;" ``` → Le souvenir devrait apparaître. **Test de restitution :** 1. Créer un **nouveau chat** (important !) 2. Demander : `Qu'est-ce que tu sais sur mes hobbies ?` → Effi devrait mentionner les vinyles sans que vous l'ayez redit. ### 5.3 Test audio (si configuré) **Test STT :** - Cliquer sur l'icône micro dans OpenWebUI - Parler : "Bonjour Effi" - Vérifier que le texte est transcrit **Test TTS :** - Activer la lecture vocale dans les paramètres du chat - Envoyer un message - Vérifier que la réponse est lue à voix haute --- ## Étape 6 : Configuration Obsidian LiveSync ### 6.1 Préparer CouchDB ```bash # Vérifier que CouchDB fonctionne curl http://192.168.1.27:5984 # Les bases devraient déjà être créées lors de l'installation # Si ce n'est pas le cas : curl -X PUT http://master:MOT_DE_PASSE@192.168.1.27:5984/_users curl -X PUT http://master:MOT_DE_PASSE@192.168.1.27:5984/_replicator curl -X PUT http://master:MOT_DE_PASSE@192.168.1.27:5984/obsidian-livesync ``` ### 6.2 Configurer Obsidian Dans l'application Obsidian : 1. **Paramètres → Communauté → Parcourir** 2. Installer le plugin **Self-hosted LiveSync** 3. Ouvrir les paramètres du plugin 4. Configurer : - **URI** : `http://192.168.1.27:5984` - **Database** : `obsidian-livesync` - **Username** : `master` - **Password** : [votre mot de passe CouchDB] 5. Cliquer sur **Test** 6. Si OK, cliquer sur **Apply** 7. Activer la synchronisation --- ## Étape 7 : Optimisations ### 7.1 Activer les mémoires globales **Admin Panel → Settings → General** - **Memories** : ✅ ON - **Memory Mode** : `User` ou `Global` ### 7.2 Configuration des modèles par défaut **Admin Panel → Settings → Interface** - **Default Model** : `Effi` - **Default Language** : `fr-FR` ### 7.3 Personnalisation de l'interface **Admin Panel → Settings → Interface** - Changer le thème (clair/sombre) - Configurer les raccourcis - Personnaliser le logo et les couleurs --- ## Félicitations ! Effi est maintenant complètement configuré et prêt à l'emploi ! ### Prochaines étapes suggérées : 1. **Explorer n8n** : Créer des workflows d'automatisation 2. **Configurer le RAG** : Uploader des documents pour enrichir les réponses 3. **Personnaliser davantage** : Ajuster le system prompt selon vos préférences 4. **Documentation** : Noter vos configurations dans Obsidian ### En cas de problème : Consulter la section [Dépannage](../04-depannage/) pour les erreurs courantes et leurs solutions.