Retour aux articles

Ollama en tant que service réseau local : déploiement et intégration

Ollama permet d'exécuter des modèles de langage localement sur GPU. Ce guide présente une architecture de déploiement en tant que service réseau : un serveur Ollama centralisé auquel plusieurs clients se connectent par HTTP. Cette approche optimise l'utilisation des ressources GPU, réduit la redondance d'installation, et facilite la gestion des modèles.

Au lieu de maintenir une copie isolée d'Ollama sur chaque poste de travail, cette architecture centralise le service sur un serveur avec GPU. Les clients accèdent aux modèles via l'API réseau.

Ce document détaille les étapes de configuration, de validation, et d'optimisation pour un POC fonctionnel, incluant la résolution des problèmes courants et les recommandations de déploiement.

Sommaire
  1. Comprendre l'architecture réseau
  2. Prérequis : installer les drivers NVIDIA
  3. Installer et configurer Ollama pour le réseau
  4. Télécharger et tester les modèles
  5. Intégrer avec Aider
  6. Troubleshooting courant
  7. Cas d'usage réels et résultats
  8. Limitations et alternatives
  9. Pour aller plus loin : Interface Claude Code-like
  10. Checklist de déploiement

Comprendre l'architecture réseau

Avant de vous lancer, visualisons ce qu'on veut construire.

Par défaut (isolé) :
Poste 1 → [Ollama + GPU local] rapide, consomme des ressources
Poste 2 → [Ollama + GPU local] rapide, coûteux, gaspillage
Poste 3 → [Ollama + GPU local] rapide, coûteux, gaspillage
Optimisé (réseau) :
Serveur → [Ollama + GPU RTX 3080] ← Poste 1
                                  ← Poste 2
                                  ← Poste 3
Tous accèdent par HTTP, un seul GPU, une seule installation.

L'architecture est simple : un serveur avec GPU exécute Ollama en écoute sur le port 11434 (accessible sur le réseau), et chaque poste client se connecte par HTTP.

Avantages

Inconvénients

Prérequis : installer les drivers NVIDIA

C'est LE piège numéro un. Sans driver GPU, Ollama tourne sur CPU et devient inutilisable.

Vérifier la présence d'un GPU

Connectez-vous à votre serveur et lancez :

ssh [email protected]
lspci | grep -i nvidia

Résultat attendu :

01:00.0 VGA compatible controller: NVIDIA Corporation
GA102 [GeForce RTX 3080]

Si vous ne voyez rien, vérifiez que le GPU est bien présent physiquement et activé dans le BIOS.

Installer le driver

sudo apt update
sudo apt install nvidia-driver-550 -y
sudo reboot

Après le reboot, vérifiez :

nvidia-smi

Vous devriez voir une table affichant votre GPU, la VRAM, la température, etc. Si vous voyez ça, c'est bon, vous pouvez continuer.

Diagnostic rapide :

  • Ligne GPU Memory affiche votre VRAM totale → Driver OK
  • Ligne Processes vide → Prêt pour Ollama
  • Température normale (< 60°C inactif) → Bon refroidissement

Installer et configurer Ollama pour le réseau

Étape 1 : Installation basique

curl -fsSL https://ollama.com/install.sh | sh

Vérifiez :

which ollama
# /usr/local/bin/ollama

Étape 2 : Configuration réseau (la clé)

Par défaut, Ollama écoute seulement sur 127.0.0.1:11434 (machine locale). Pour l'ouvrir au réseau, vous devez changer ça.

Créer un override systemd :

sudo systemctl edit ollama

L'éditeur s'ouvre avec deux blocs ### délimitant une section vide. Ajoutez ceci entre les deux :

[Service]
Environment="OLLAMA_HOST=0.0.0.0"

Sauvegardez (Ctrl+X, Y, Enter dans nano).

Étape 3 : Démarrer le service

sudo systemctl daemon-reload
sudo systemctl enable ollama
sudo systemctl start ollama

Vérifiez :

sudo systemctl status ollama
ss -tlnp | grep 11434

Résultat attendu :

● ollama.service - Ollama Service
     Active: active (running)

LISTEN 0      4096               *:11434            *:*

Le *:11434 (et non 127.0.0.1:11434) signifie qu'Ollama écoute sur TOUTES les interfaces réseau. C'est ce qu'on veut.

Télécharger et tester les modèles

Modèles recommandés

Pour du prototypage rapide (léger) :

ollama pull qwen2.5:0.5b

Pour le code et les tâches complexes (recommandé) :

ollama pull qwen2.5-coder:7b

Tester depuis un poste client

Depuis une autre machine de votre réseau :

curl http://192.168.0.240:11434/api/generate -d '{
  "model": "qwen2.5-coder:7b",
  "prompt": "Écris une fonction Python qui calcule la suite de Fibonacci",
  "stream": false
}'

Résultat attendu :

{
  "model": "qwen2.5-coder:7b",
  "response": "def fibonacci(n):\n    if n <= 1:\n        return n...",
  "done": true
}

Si ça marche, bravo ! Ollama est accessible depuis le réseau.

Vérifier l'utilisation du GPU

Sur le serveur, vérifiez que les modèles tournent bien sur GPU :

ollama ps

Avec GPU (ce qu'on veut) :

NAME                ID              SIZE      PROCESSOR    CONTEXT
qwen2.5-coder:7b    dae161e27b0e    5.2 GB    100% GPU     8192

Sans GPU (catastrophe) :

NAME                ID              SIZE      PROCESSOR    CONTEXT
qwen2.5-coder:7b    dae161e27b0e    4.9 GB    100% CPU     8957

Si vous voyez 100% CPU, vos drivers NVIDIA ne sont pas installés. Allez à la section 2.

Intégrer avec Aider (CLI recommandée)

Aider est un client CLI pour générer du code avec Ollama. C'est la meilleure option pour développer localement.

Installation

pip install aider-chat

Configuration

Lancez Aider avec votre serveur Ollama :

OLLAMA_API_BASE=http://192.168.0.240:11434 \
aider --model ollama/qwen2.5-coder:7b

Ou si aider n'est pas dans votre PATH :

OLLAMA_API_BASE=http://192.168.0.240:11434 \
~/.local/bin/aider --model ollama/qwen2.5-coder:7b

Utilisation

aider> Add a function that validates email addresses with regex

aider> Create unit tests for the email validator

aider> Explain the performance implications of this function

Qualité du code généré (sur mes tests) :

  • Docstrings correctes (français/anglais)
  • Gestion d'erreurs appropriée
  • Syntaxe Python valide
  • Commentaires utiles
  • Temps réponse : 15-20 secondes pour prompts complexes

Conseil : Créez un alias pour ne pas retaper la commande complète :

# Dans ~/.bashrc ou ~/.zshrc
alias aider-ollama="OLLAMA_API_BASE=http://192.168.0.240:11434 \
aider --model ollama/qwen2.5-coder:7b"

Puis simplement :

aider-ollama

Troubleshooting courant

Problème : Timeout de connexion depuis le client

curl: (7) Failed to connect to 192.168.0.240
port 11434: Connection refused

Diagnostic :

  1. Vérifiez que le serveur Ollama est bien en cours d'exécution : sudo systemctl status ollama
  2. Vérifiez que le port 11434 est bien ouvert : ss -tlnp | grep 11434
  3. Vérifiez la connexion réseau : ping 192.168.0.240

Problème : GPU ne s'utilise pas (100% CPU)

Cela signifie que les drivers NVIDIA ne sont pas détectés.

nvidia-smi

Si vous voyez une erreur, réinstallez les drivers :

sudo apt install --reinstall nvidia-driver-550 -y
sudo reboot

Problème : VRAM insuffisante

Si vous avez moins de 6 GB de VRAM libre, Ollama ne pourra pas charger le modèle 7B.

Solutions :

  1. Utiliser un modèle plus petit : qwen2.5:0.5b (755 MB)
  2. Augmenter la VRAM disponible (arrêter les applications gourmandes)
  3. Utiliser la quantization : ollama pull qwen2.5-coder:7b-q4 (4-bit, ~2 GB)

Problème : Modèle reste en mémoire après utilisation

Si vous en avez marre d'utiliser votre VRAM pour rien :

# Lister les modèles
ollama ps
# Stopper un modèle
ollama stop <model_name>

Cas d'usage réels et résultats

Test 1 : Génération de code simple

Prompt :

Écris une fonction Python qui additionne deux nombres

Résultats :

Test 2 : Génération complexe avec mémoïsation

Prompt :

Crée une fonction qui calcule la factorielle
avec mémoïsation et gestion d'erreurs

Résultats :

Benchmark GPU

Machine serveur :

Utilisation GPU en charge :

VRAM utilisée : 6031 MiB / 10240 MiB
(58.9%)
Température : 45°C
Puissance : 24W / 340W
Processus Ollama : 100% GPU

Performances excellentes, pas de throttling thermique.

Limitations et alternatives

Limitation : Claude Code Router n'est pas compatible

En décembre 2025, Claude Code force le mode "extended thinking" qui n'est pas supporté par Ollama. Claude Code Router reste bloqué sur cette limitation. Pour Claude Code, utilisez Aider en alternative.

Limitation : Latence réseau

Même en local, il y a une petite latence (~50-100ms) comparée à un appel local. Négligeable pour du développement.

Pour aller plus loin : Interface Claude Code-like

Une suite complète ollama-code est disponible en téléchargement. Elle automatise toute la configuration et fournit des scripts prêts à l'emploi.

ollama-code Package

Suite complète contenant :

  • Scripts : ollama-code, ollama-code-setup, ollama-code-demo
  • Configuration globale centralisée
  • Guidelines de code et patterns d'exclusion
  • Documentation complète (README, INSTALLATION, guides)

Télécharger ollama-code-package.zip (15 KB)

Installation du package (3 étapes)

1. Extraire et installer

unzip ollama-code-package.zip
cd ollama-code-package
bash bin/ollama-code-setup

2. Vérifier l'installation

ollama-code --help

3. Utiliser dans un projet

ollama-code ~/my-project
# Ou avec l'alias
code ~/my-project

Ce que vous gagnez

Scripts automatisés :

Configuration centralisée :

Commandes principales (dans Aider) :

/map               # Structure du codebase
/add file.py       # Ajouter un fichier
/ask               # Mode questions
/code              # Mode édition (default)
/diff              # Voir les changements
/commit            # Valider
/help              # Toutes les commandes

Workflows avec ollama-code

Ajouter une feature :

$ ollama-code .
> /add src/main.py
> Ajoute une fonction pour calculer le PGCD
> /diff
> /commit

Analyser du code :

$ ollama-code --ask .
> Explique l'architecture du projet
> /code
> Améliore la gestion d'erreurs

Le package contient une documentation complète (README.md, INSTALLATION.md) avec des exemples de workflows, troubleshooting, et guide de configuration avancée.

Checklist de déploiement

Avant de déployer le POC

  • Driver NVIDIA installé et vérifié (nvidia-smi)
  • Ollama fonctionne localement (ollama pull + ollama run)
  • Service systemd configuré avec OLLAMA_HOST=0.0.0.0
  • Modèles téléchargés (qwen2.5-coder:7b, etc.)
  • Test depuis un autre poste client (curl)
  • Alias créés pour les commandes fréquentes
  • Monitoring du GPU configuré
  • Documentation interne pour les nouveaux utilisateurs

Conclusion

Ollama comme service réseau, c'est transformer un GPU unique en ressource partagée sur votre réseau local.

Résultats du POC : déploiement entièrement fonctionnel en 2 heures. Les temps de réponse (15-20 secondes) sont acceptables pour la génération de code.

Vous avez des questions ou d'autres infos techniques à partager ? Contactez-moi ou retrouvez-moi sur LinkedIn.

Thomas Bourimech

Thomas Bourimech

Développeur & Intégrateur IA freelance

thomasbourimech.com