-
Notifications
You must be signed in to change notification settings - Fork 2
fr Ollama Setup
🌐 Langue : English | Français
Ollama est un runtime LLM local. dictée l'utilise pour deux fonctionnalités indépendantes :
- Traduction (voir Traduction) — quand Ollama est choisi comme backend de traduction
- Correction post-traitement (voir LLM-Correction) — polissage optionnel de la fluidité après l'ASR et avant le collage
Faire tourner des LLM localement apporte confidentialité, pas de limites de taux et latence prévisible au coût de la mémoire GPU. Cette page couvre l'installation Ollama, les modèles recommandés pour les cas d'usage de dictée, les prompts structurés envoyés et le tuning performance.
- Installer Ollama
- Modèles recommandés
- Premier téléchargement de modèle
- Budget VRAM
- Prompts structurés
- Configuration du serveur Ollama
- Tuning performance
- Mise à jour des modèles
- VRAM partagée avec l'ASR
Toutes distros Linux :
curl -fsSL https://ollama.com/install.sh | shÇa installe ollama dans /usr/local/bin/ et enregistre un service systemd écoutant sur http://localhost:11434. Vérification :
systemctl status ollama
curl http://localhost:11434/api/tags # doit retourner {"models": []}Paquets distros (alternative) :
| Distro | Commande |
|---|---|
| Arch Linux |
sudo pacman -S ollama (ou ollama-cuda / ollama-rocm) |
| Fedora | Copr : sudo dnf copr enable ramzankor/ollama && sudo dnf install ollama
|
| Homebrew (macOS, non supporté par dictée mais pratique pour tester) | brew install ollama |
dictée détecte automatiquement les modèles Ollama disponibles au premier usage. Le défaut est gemma3:4b — bon équilibre qualité/VRAM pour traduction + correction.
| Modèle | Taille | VRAM | Latence | Idéal pour |
|---|---|---|---|---|
gemma3:4b ⭐ défaut |
3,3 Go | ~4 Go | 2–3 s | Traduction + correction, la plupart des langues |
qwen2.5:3b |
2 Go | ~3 Go | 2 s | VRAM basse, langues asiatiques |
llama3.2:3b |
2 Go | ~3 Go | 2–3 s | Alternative à Gemma, bonne qualité EN |
gemma3:12b |
8 Go | ~10 Go | 5–7 s | Meilleure qualité, VRAM large |
qwen2.5:7b |
4,7 Go | ~6 Go | 3–4 s | Upgrade équilibré par rapport au 3b |
mistral:7b-instruct |
4,1 Go | ~5 Go | 3 s | Bon multilingue, plus ancien mais stable |
Éviter sur VRAM basse : tout ce qui fait ≥ 12B si vous faites aussi l'ASR sur GPU (Canary = 5 Go, Parakeet = 1–3 Go).
ollama pull gemma3:4bLe premier pull télécharge ~3,3 Go. Les runs suivants chargent depuis ~/.ollama/models/. Le modèle reste résident en VRAM pendant ~5 minutes après la dernière utilisation (configurable, voir Tuning performance).
Vérification :
ollama run gemma3:4b "Bonjour, comment ça va ?"Ollama charge le modèle complet en VRAM GPU à la première requête. Voir ce qui est chargé :
ollama ps
# NAME ID SIZE PROCESSOR UNTIL
# gemma3:4b a2af6cc3eb7f 5.3 GB 100% GPU 4 minutes from nowSi votre GPU manque de mémoire (fréquent sur cartes 8 Go en combinant Parakeet + Ollama), Ollama bascule silencieusement sur CPU, ce qui fait passer la latence de 2–3 s à 15–30 s.
Stratégies de mitigation :
-
Réduire le modèle : utiliser
gemma3:4bau lieu degemma3:12b -
Faire tourner Ollama sur CPU seul :
OLLAMA_NUM_GPU=0 systemctl restart ollama(plus lent mais libère la VRAM) -
Décharger Ollama entre utilisations :
OLLAMA_KEEP_ALIVE=30sréduit le séjour VRAM - Utiliser Vosk/Whisper sur CPU : basculer l'ASR sur un backend plus léger quand le LLM est sur GPU
dictée utilise des prompts strictement structurés pour prévenir l'hallucination des LLM (un problème majeur en v1.2 corrigé pour v1.3).
Envoyé par dictee-translate --ollama :
You are a translation engine. Translate the following text from French to English.
Output ONLY valid JSON in the format: {"translation": "..."}.
Do NOT add explanations, notes, or any text outside the JSON.
Source: "La réunion commence à quatorze heures."
Réponse attendue :
{"translation": "The meeting starts at 2 p.m."}dictée parse le JSON ; si le parsing échoue, elle retombe sur l'extraction de la première chaîne entre guillemets ou saute la traduction avec un warning.
Envoyé par dictee-postprocess quand la correction LLM est activée :
You are a text editor. Correct the spelling, punctuation, grammar, and fluency
of the following transcribed speech. Keep the meaning identical.
Output ONLY the corrected text on one line — no explanations, no quotes,
no added content.
Text: {raw_asr_output}
Le LLM est instruit d'être conservateur : pas de reformulation, pas d'ajout de contenu. Cela garde les dictées déterministes et prévisibles.
Voir LLM-Correction pour le tuning de position (avant règles regex / après règles / hybride).
La plupart des utilisateurs n'ont pas besoin de toucher à la config Ollama. Si besoin :
Fichier de config : /etc/systemd/system/ollama.service.d/override.conf (à créer) :
[Service]
Environment="OLLAMA_HOST=0.0.0.0:11434" # écouter sur toutes interfaces (usage LAN)
Environment="OLLAMA_KEEP_ALIVE=30s" # décharger après 30s d'inactivité
Environment="OLLAMA_NUM_GPU=0" # forcer CPU (pas d'offload GPU)
Environment="OLLAMA_MAX_LOADED_MODELS=1" # empêcher le swap entre 2 modèles
Environment="OLLAMA_DEBUG=1" # logs verbeux dans le journalReload : sudo systemctl daemon-reload && sudo systemctl restart ollama.
Endpoint personnalisé pour dictée (si Ollama tourne sur une autre machine ou port) :
export DICTEE_OLLAMA_HOST=http://192.168.1.42:11434| Paramètre | Effet | Recommandation |
|---|---|---|
OLLAMA_KEEP_ALIVE=30s |
Décharger le modèle après 30 s d'inactivité | Utilisateurs VRAM basse |
OLLAMA_KEEP_ALIVE=24h |
Garder le modèle résident toute la journée | Utilisateurs VRAM haute (12+ Go) |
num_ctx=512 |
Réduire la fenêtre de contexte (les prompts sont courts de toute façon) | 30 % plus rapide |
num_predict=100 |
Limiter les tokens de sortie (les dictées sont courtes) | Prévient génération emballée |
temperature=0.1 |
Décodage quasi-greedy | Idéal pour traduction/correction (déterministe) |
Passer les paramètres via la config dictée (à venir) ou en enveloppant Ollama avec un petit Modelfile :
# ~/.ollama/modelfiles/gemma3-dictee/Modelfile
FROM gemma3:4b
PARAMETER temperature 0.1
PARAMETER num_ctx 512
PARAMETER num_predict 100
ollama create gemma3-dictee -f ~/.ollama/modelfiles/gemma3-dictee/Modelfile
export DICTEE_OLLAMA_MODEL=gemma3-dictee# Voir ce qui est installé
ollama list
# Tirer la dernière version (même tag)
ollama pull gemma3:4b
# Supprimer ancienne version
ollama rm gemma3:2bOllama ne fait pas d'auto-update. Les améliorations majeures de modèles (genre Gemma 3 → Gemma 4 quand ça sortira) nécessitent un ollama pull manuel.
Sur un GPU 8 Go, vous ne pouvez pas faire tenir Canary + gemma3:4b simultanément (5 Go + 4 Go = 9 Go). Options :
- Utiliser Parakeet (1,2 Go) + Gemma 3 4B : tient confortablement sur 8 Go
- Utiliser Canary seul : Canary a une traduction intégrée, pas besoin d'Ollama
-
Faire tourner Ollama sur CPU :
OLLAMA_NUM_GPU=0, latence ~15 s mais VRAM libre
dictée ne swappe pas automatiquement les modèles entre ASR et Ollama — chacun a son propre budget VRAM, et dictée ne peut pas charger/décharger à la demande sans overhead de redémarrage.
Le 8 Go VRAM → Parakeet + Gemma 3 4B est le point optimal pour la plupart des utilisateurs sur portable.
- Translation — autres backends de traduction comparés
- LLM-Correction — Ollama dans le pipeline de post-traitement
- Troubleshooting — Ollama retourne texte vide, fix
- Post-Processing-Overview — où le LLM se place dans le pipeline en 12 étapes
Getting started / Premiers pas
- Installation · 🇬🇧 · 🇫🇷
- Setup-Wizard · 🇬🇧 · 🇫🇷
- Configuration · 🇬🇧 · 🇫🇷
- Plasmoid-Widget · 🇬🇧 · 🇫🇷
- Tray-Icon · 🇬🇧 · 🇫🇷
- Keyboard-Shortcuts · 🇬🇧 · 🇫🇷
- Voice-Commands · 🇬🇧 · 🇫🇷
- GPU-Setup · 🇬🇧 · 🇫🇷
- Diarization · 🇬🇧 · 🇫🇷
- LLM-Diarization · 🇬🇧 · 🇫🇷
Speech recognition / ASR
Translation / Traduction
Post-processing / Post-traitement
- Overview · 🇬🇧 · 🇫🇷
- Rules-and-Dictionary · 🇬🇧 · 🇫🇷
- LLM-Correction · 🇬🇧 · 🇫🇷
- Numbers-Dates-Continuation · 🇬🇧 · 🇫🇷
CLI
Reference / Référence
🏠 Repo · 📦 Releases · 🐛 Issues