Comprendre ce qu'il y a
derrière un agent IA.
Les assistants IA dans le cloud sont pratiques, mais on ne peut pas leur envoyer n'importe quoi : des logs de production, des configurations ou des données clients ne doivent pas sortir de l'entreprise. Je voulais savoir ce qu'on peut faire avec un modèle qui tourne entièrement en local.
L'autre objectif était de comprendre le fonctionnement d'un agent de bout en bout : un modèle seul ne fait que produire du texte. C'est le harness, le programme autour du modèle, qui lui donne des outils, exécute ses demandes et lui renvoie les résultats.
Quatre couches,
une seule machine.
Le schéma en haut de page se lit de gauche à droite. Chaque couche a un rôle précis :
- OpenCode (le harness) : reçoit ma demande, garde le fil de la conversation, décrit ses outils au modèle et exécute ceux que le modèle demande.
- Ollama (le serveur de modèles) : charge le modèle sur la carte graphique et expose une API locale compatible OpenAI, celle qu'utilise OpenCode.
- Qwen3 (le modèle) : lit le contexte et répond soit par du texte, soit par un appel d'outil structuré.
- La RTX 4060 Ti : fait les calculs via CUDA. La taille de sa mémoire vidéo (VRAM) détermine quels modèles je peux faire tourner.
Le trajet d'une demande
- Je décris la tâchePar exemple : « analyse ce fichier de logs et résume les erreurs ».
- OpenCode prépare la requêteIl envoie à Ollama ma demande, l'historique et la liste des outils disponibles.
- Qwen3 décideIl répond directement, ou demande un outil : lire un fichier, lancer une commande, chercher dans un dossier.
- OpenCode exécute l'outilSur les fichiers du dossier de travail ; il peut demander ma confirmation avant une commande.
- Le résultat repart vers le modèleLa boucle continue jusqu'à ce que le modèle ait assez d'éléments pour donner sa réponse finale.
Pas d'interface web : tout se passe dans le terminal. Aucun service supplémentaire n'est exposé sur le réseau.
Des briques simples
et open source.
- Ollamaserveur de modèles
- Installation simple, gestion automatique de la carte graphique, téléchargement des modèles en une commande et API compatible OpenAI : la plupart des outils savent s'y brancher.
- Qwen3modèle
- Modèle open source qui gère bien les appels d'outils, indispensable pour un agent. Les tailles 8B et 14B tiennent sur une carte graphique grand public une fois quantisées.
- 8B ou 14Bcompromis
- Le 8B répond plus vite et laisse plus de mémoire pour le contexte ; le 14B raisonne mieux sur les tâches en plusieurs étapes. Je choisis selon la tâche.
- OpenCodeharness agentique
- Agent open source en terminal qui se branche sur n'importe quelle API compatible OpenAI, donc sur Ollama. Il fournit les outils (fichiers, shell, recherche) et la boucle agentique.
Ce que j'en retiens.
- Un modèle local reste plus limité qu'un grand modèle dans le cloud : sur les tâches longues, il se perd plus vite et ses appels d'outils sont parfois mal formés. Je relis toujours ce qu'il propose.
- La mémoire vidéo est la vraie contrainte : elle limite à la fois la taille du modèle et la longueur du contexte.
- Le harness compte autant que le modèle : c'est lui qui rend le modèle utile, en lui donnant des outils et en encadrant ce qu'il peut faire.
Pistes
- Brancher l'agent sur les logs de mon homelab pour l'aide au diagnostic.
- Comparer d'autres modèles open source sur les mêmes tâches d'administration.
Compétences mobilisées
- Ollama
- Qwen3
- OpenCode
- CUDA
- LLM & quantisation
- Agents & appels d'outils