- Structure complète du projet - Docker compose de production - Documentation organisée par thèmes - Guides d'installation et configuration - Section dépannage détaillée - Journal historique
8.7 KiB
⚙️ 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
- Ouvrir
http://192.168.1.27:3000dans un navigateur - Cliquer sur "Sign up"
- 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.
<memory_user_context></memory_user_context>
Cliquer sur Save.
Étape 4 : Installation des filtres de mémoire
4.1 Installation d'Auto Memory
Admin Panel → Functions → Discover
- Rechercher "Auto Memory" par nokodo
- 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
- Chercher :
text_response = response.choices[0].message.content - Remplacer le bloc
if response_model:par :
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
- Chercher
UNIFIED_SYSTEM_PROMPTet ajouter au début :
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
- Cliquer sur Save
4.4 Installation de Memory Injection Filter
Admin Panel → Functions → Discover
- Rechercher "Memory Injection Filter" par Raphael
- 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
- Créer un nouveau chat
- Sélectionner le modèle Effi
- 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 :
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 :
- Créer un nouveau chat (important !)
- 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
# 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 :
- Paramètres → Communauté → Parcourir
- Installer le plugin Self-hosted LiveSync
- Ouvrir les paramètres du plugin
- Configurer :
- URI :
http://192.168.1.27:5984 - Database :
obsidian-livesync - Username :
master - Password : [votre mot de passe CouchDB]
- URI :
- Cliquer sur Test
- Si OK, cliquer sur Apply
- Activer la synchronisation
Étape 7 : Optimisations
7.1 Activer les mémoires globales
Admin Panel → Settings → General
- Memories : ✅ ON
- Memory Mode :
UserouGlobal
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 :
- Explorer n8n : Créer des workflows d'automatisation
- Configurer le RAG : Uploader des documents pour enrichir les réponses
- Personnaliser davantage : Ajuster le system prompt selon vos préférences
- Documentation : Noter vos configurations dans Obsidian
En cas de problème :
Consulter la section Dépannage pour les erreurs courantes et leurs solutions.