Assistant IA local avec OpenCode et Ollama

Utiliser Claude comme assistant pour nous assister c’est très bien mais cela a tout de même un coût non négligeable. Parmi les alternatives existantes, l’auto-hébergement est une voie intéressante. Il faut cependant être tout de même conscient des limites.

En effet, avec des modèles d’IA auto-hébergés on ne bénéficie pas de la puissance de calcul des data centers des prestataires privés, ni des modèles aux performances les plus avancées. Par contre, c’est complètement gratuit et, pour peu qu’on installe des modèles d’IA adaptés aux performances de sa machine, on peut espérer mettre en place des outils qui répondent à 2 ou 3 tokens par seconde, ce qui est peu par rapport aux modèles payants, mais déjà pas si mal.

Pour mettre en place un tel outil, il est nécessaire de bien définir la machine visée, car le choix de modèles adaptés en découle.

Pour ce tutoriel nous allons viser une machine de type Asus Zenbook 13″ OLED (Intel Core i5, 16 Go RAM, sous Ubuntu 26.04)

Ce tutoriel vous permet d’installer un assistant IA local totalement gratuit, équivalent à Claude (pour les questions/réponses) et Claude Code (pour l’aide au codage en ligne de commande). Aucun abonnement ni connexion internet obligatoire (hors téléchargements initiaux).

L’architecture repose sur deux composants :

  • Ollama : le moteur qui exécute les modèles de langage localement.
  • OpenCode : l’agent autonome qui interagit avec vos fichiers, votre terminal et exécute les commandes.
1. Installation d’Ollama
1.1. Installation
curl -fsSL https://ollama.com/install.sh -o /tmp/ollama-install.sh
sh /tmp/ollama-install.sh
rm -f /tmp/ollama-install.sh
1.2. Vérification
systemctl is-active ollama

La réponse doit être active​. L’API est accessible sur http://127.0.0.1:11434​.

2. Choix et téléchargement du modèle IA adapté
2.1. Spécificités de la machine
  • RAM 16 Go : permet de faire tourner des modèles jusqu’à 7-8 milliards de paramètres en version quantifiée.
  • Processeur i5 + iGPU Intel : l’accélération GPU est possible mais limitée ; on privilégie les modèles légers.
  • Stockage 512 Go : on se limite à 2 ou 3 modèles pour conserver de l’espace.
2.2. Modèles recommandés
UsageModèleTaille estimée
Codage​qwen2.5-coder:7b​~4,5 Go
Usage général (chat)​llama3.1:8b​ ou mistral:7b​~4,5 Go
Très léger (fluide)​phi3:mini​ (3,8B)~2,5 Go
2.3. Téléchargement
ollama pull qwen2.5-coder:7b

(Les modèles sont automatiquement optimisés en version Q4_K_M, un bon compromis qualité/performance).

3. Installation d’OpenCode
3.1. Installation

Méthode simple (recommandée) :

curl -fsSL https://opencode.ai/install | bash

Alternative (via npm) : (nécessite Node.js)

npm install -g opencode-ai@latest
3.2. Vérification
opencode --version
4. Configuration d’OpenCode pour utiliser Ollama
4.1. Méthode simple (recommandée)

Lancez OpenCode avec la commande suivante. Il détectera automatiquement les modèles disponibles sur Ollama :

ollama launch opencode
4.2. Configuration manuelle (optionnelle)

Créez le fichier ~/.config/opencode/opencode.json​ :

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "ollama": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Ollama",
      "options": {
        "baseURL": "http://localhost:11434/v1"
      },
      "models": {
        "mon-modele": {
          "name": "qwen2.5-coder:7b"
        }
      }
    }
  }
}
5. Utilisation quotidienne
5.1. Lancer OpenCode
opencode
5.2. Mode « Claude » (questions/réponses générales)
  • Tapez vos questions directement dans l’interface TUI.
  • L’agent vous répondra en utilisant votre modèle local.
5.3. Mode « Claude Code » (assistant de codage)
  • Placez-vous dans votre projet : cd /chemin/vers/votre/projet​
  • Lancez OpenCode : opencode​
  • Utilisez /init​ pour qu’OpenCode analyse le contexte de votre projet.
  • Donnez des instructions : « corrige ce bug », « ajoute une fonction qui… », « explique ce code ».
  • Appuyez sur Tab​ pour passer en mode plan​ (lecture seule) pour une analyse sans risque.
5.4. Mode non-interactif (CLI)
opencode run "Explique-moi ce que fait ce script python"
6. Maintenance et mises à jour
6.1. Mettre à jour OpenCode
opencode upgrade

(Si installé via npm : npm update -g opencode-ai​)

6.2. Mettre à jour Ollama
curl -fsSL https://ollama.com/install.sh | sh
6.3. Mettre à jour un modèle
ollama pull qwen2.5-coder:7b

⚠️ Attention : Ollama télécharge la nouvelle version sans supprimer l’ancienne. Pensez à nettoyer :

ollama list                 # Voir les versions
ollama rm qwen2.5-coder:7b  # Supprimer l'ancienne (vérifiez le tag exact)
6.4. Nettoyer l’espace disque
  • Lister les modèles : ollama list​
  • Supprimer un modèle inutilisé : ollama rm <nom>​
  • Déplacer le dossier des modèles (pour libérer le SSD) :
# Déplacer les modèles vers un autre disque/partition
mv ~/.ollama/models /nouvel/emplacement/
ln -s /nouvel/emplacement/models ~/.ollama/models
  • Nettoyage automatique : redémarrez le service pour purger les fichiers temporaires :
sudo systemctl restart ollama
6.5. Routine mensuelle recommandée
  1. Vérifier les mises à jour des outils : opencode upgrade​ et curl -fsSL https://ollama.com/install.sh | sh​.
  2. Mettre à jour vos modèles si nécessaire : ollama pull …​.
  3. Faire un audit : ollama list​ pour vérifier la place utilisée.
  4. Supprimer les anciennes versions ou modèles inutilisés.
  5. Vérifier l’espace libre : df -h /home​.
7. Désinstallation complète (pour revenir à zéro)
7.1. Supprimer OpenCode

Si installé via le script curl :

sudo rm -f /usr/local/bin/opencode
rm -rf ~/.config/opencode ~/.local/share/opencode ~/.cache/opencode

Si installé via npm :

sudo npm uninstall -g opencode-ai
rm -rf ~/.npm/_npx
7.2. Supprimer Ollama
sudo systemctl stop ollama
sudo systemctl disable ollama
sudo rm -rf /usr/local/bin/ollama /usr/share/ollama /etc/ollama
sudo rm -f /etc/systemd/system/ollama.service
sudo systemctl daemon-reload
rm -rf ~/.ollama ~/.cache/ollama
7.3. Supprimer les dépendances système (optionnel)
sudo apt remove --purge intel-level-zero-gpu intel-opencl-icd
sudo apt autoremove -y
7.4. Vérification finale
which opencode   # Ne doit rien retourner
which ollama     # Ne doit rien retourner
ls ~/.config/ | grep -E "opencode|ollama"  # Ne doit rien afficher
8. Dépannage rapide
ProblèmeSolution
LenteurFermez les applications gourmandes en RAM. Utilisez un modèle plus petit (phi3:mini).
« Model not found »Vérifiez avec ollama list​. Le modèle est-il bien téléchargé ?
Erreur de permissionUtilisez sudo​ pour les commandes système, ou vérifiez les droits sur ~/.ollama​.
Espace disque insuffisantUtilisez ollama rm​ pour supprimer un modèle. Déplacez le dossier models​ vers un autre support.
OpenCode ne voit pas OllamaVérifiez que le service tourne : systemctl status ollama​. L’URL par défaut est http://localhost:11434​.
9. Comparaison avec les solutions commerciales
FonctionnalitéClaude/Claude Code (payant)Cette solution (gratuite)
Assistant conversationnelOui, via ClaudeOui, via OpenCode + modèle local
Aide au codage autonomeOui, via Claude CodeOui, via OpenCode
Modèles disponiblesClaude uniquementTous les modèles Ollama
Connexion internet requiseOui (sauf API)Non (hors téléchargements)
Coût20 $/mois minimum0 €
ConfidentialitéDonnées envoyées à AnthropicDonnées 100% locales
Espace disque0 (cloud)~5-10 Go

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *