Accélération GPU
La vitesse des réponses dépend surtout de l'endroit où tourne le modèle. Sur processeur, la première réponse après une pause prend une à trois minutes. Sur une carte NVIDIA de milieu de gamme, quelques secondes.
Comment le choix se fait
Un seul réglage dans votre .env :
COMPOSE_PROFILES=cpu # ou nvidia, ou amd
Le fichier compose contient trois variantes du conteneur de modèle et en démarre exactement une. Elles partagent le même nom, la même adresse et les mêmes modèles téléchargés : passer de l'une à l'autre ne perd rien et ne retélécharge rien.
COMPOSE_PROFILES n'est pas défini, aucune ne démarre. Le reste de la
pile monte, et toutes les questions échouent. C'est l'erreur d'auto-hébergement
la plus fréquente.L'installation guidée de l'application détecte cela pour vous au premier démarrage. Sinon, choisissez comme ci-dessous.
Détection automatique
curl -L -o detect-hardware.sh \
https://github.com/ChroniclerLM/Releases/releases/latest/download/detect-hardware.sh
chmod +x detect-hardware.sh
./detect-hardware.sh
Il vérifie la plateforme, la capacité réelle des conteneurs à joindre un GPU, et
la mémoire dont Docker dispose, puis écrit COMPOSE_PROFILES dans le .env à
côté. Il ne touche jamais à votre mot de passe de base, ni à votre modèle.
Options utiles : --recommend-only (affiche sans rien modifier), --coding
(oriente la suggestion vers un modèle de code), --env-file CHEMIN (viser un
autre .env).
Le script requiert bash : il tourne sous Linux, et sous Windows depuis Git Bash ou un shell WSL. Si vous ne pouvez pas l'exécuter, réglez la valeur à la main.
NVIDIA
Vérifier que la machine voit la carte
nvidia-smi
Aucune sortie signifie un problème de pilote : réglez-le d'abord, rien de ce qui suit n'aidera.
Vérifier que les conteneurs la voient
Le pilote installé sur la machine ne suffit pas ; Docker a besoin du NVIDIA Container Toolkit pour transmettre la carte.
docker run --rm --gpus all ollama/ollama:0.32.4 nvidia-smi
Si votre carte s'affiche, tout est prêt. En cas d'erreur :
- Linux — installez le toolkit, déclarez-le auprès de Docker et redémarrez :Terminal
sudo nvidia-ctk runtime configure --runtime=docker sudo systemctl restart docker
Instructions : NVIDIA Container Toolkit. - Windows — mettez à jour le pilote NVIDIA (le pilote WSL2 inclut la prise en charge des conteneurs), vérifiez que Docker Desktop utilise le moteur WSL2, puis redémarrez Docker Desktop. Rien d'autre à installer.
Changer le profil
COMPOSE_PROFILES=nvidia
docker compose up -d
AMD
Linux uniquement, au mieux. ROCm atteint la carte via /dev/kfd et /dev/dri,
que Docker Desktop sous Windows ne sait pas transmettre.
ls /dev/kfd /dev/dri
Si les deux existent :
COMPOSE_PROFILES=amd
docker compose up -d
Cette variante télécharge une image différente et plus lourde (le runtime ROCm) : le premier démarrage après le changement est long.
Vérifier que c'est bien utilisé
docker compose ps
Le conteneur en cours doit être ollama-nvidia ou ollama-amd, pas
ollama-cpu. Posez ensuite une question et observez :
nvidia-smi # NVIDIA : la mémoire utilisée grimpe pendant la génération
docker compose logs chronicler-ollama | tail -30
Le journal d'Ollama indique sur quel matériel le modèle a été chargé. Le test honnête reste la montre : si une réponse à chaud prend encore une minute, c'est le processeur qui travaille.
Changer plus tard
Modifiez COMPOSE_PROFILES, puis docker compose up -d. Compose remplace le
conteneur de modèle sur place. Les modèles téléchargés sont dans un volume
partagé : rien n'est retéléchargé, rien n'est perdu.
Limite connue : la liste des modèles dans la console
Admin → Modèle interroge le matériel depuis l'intérieur du conteneur backend, qui n'a pas accès à la carte graphique. Il déclare donc l'absence de GPU et grise les modèles de cette catégorie, même sur une machine qui en possède une.
Les modèles qui tournent sur processeur ne sont pas concernés et restent sélectionnables — la sonde lit correctement la RAM, c'est seulement la carte graphique qu'elle ne voit pas. Pour utiliser malgré tout un modèle GPU, définissez-le côté serveur : voir Choisir un modèle GPU à la main.