Pourquoi le passage aux AI Credits change la donne
Jusqu’au 31 mai 2026, Copilot Pro+ facturait un montant forfaitaire par mois, quel que soit le volume de requêtes. Depuis le 1ᵉʳ juin, chaque plan Copilot inclut un budget mensuel en AI Credits converti en tokens selon le modèle utilisé. Le résultat mesuré par les premiers utilisateurs : une session agentique de deux heures a suffi à consommer 8 % du quota mensuel sur le plan Pro+, avec un quota estimé à 7 000 crédits épuisable en moins de deux jours à ce rythme. Le problème n’est pas le prix par requête : c’est l’absence de plancher. Un workflow agentique qui ouvre plusieurs fichiers, appelle des outils et itère consomme un multiple de ce qu’une complétion simple utiliserait. La prévisibilité, qui était la promesse du forfait, n’existe plus.
Six raisons de basculer vers un assistant de code self-hosted
- Coût mensuel fixe : un VPS avec Ollama coûte le même montant chaque mois, quelle que soit la charge agentique.
- Confidentialité des invites : aucune ligne de code, aucun contexte de projet ne quitte votre infrastructure.
- Choix libre du modèle : Qwen2.5-Coder, DeepSeek Coder, Llama 3.2 ou tout modèle au format GGUF disponible via Ollama.
- Aucun quota par session : pas de dégradation ni de blocage en fin de mois.
- Portabilité : le même serveur Ollama alimente VS Code, JetBrains, Neovim ou une pipeline CI.
- Indépendance des décisions tarifaires : les changements de prix ou de politique de GitHub ne touchent plus votre assistant de code.
Prérequis chiffrés
Pour faire tourner un modèle 7B quantifié en Q4_K_M — le format recommandé pour un bon équilibre qualité/performance — comptez au minimum 4 Go de RAM dédiés au processus Ollama. Avec 8 Go, le modèle reste en mémoire entre les requêtes et évite le rechargement. Pour les modèles 14B, visez 16 Go.
Côté logiciel : Docker et Docker Compose installés sur le VPS, un sous-domaine (ex. ollama.votre-domaine.com) pointant vers l’IP du VPS, et le port 443 ouvert. Aucune carte graphique n’est requise : un modèle 7B en Q4_K_M tourne sur CPU à 5 à 15 tokens par seconde selon le nombre de vCPU, suffisant pour les complétions de fonctions et le chat interactif.
Option 1 — Continue.dev + Ollama : le setup en cinq minutes
Continue.dev s’installe comme n’importe quelle extension VS Code. Il lit un fichier config.json pour savoir à quel modèle se connecter. Ce modèle peut être local ou distant — c’est ce second cas qui nous intéresse : votre VPS héberge le moteur d’inférence, votre poste héberge l’IDE. La chaîne complète : extension VS Code → ~/.continue/config.json → URL HTTPS du reverse proxy → port 11434 de Ollama sur le VPS.
Déployer Continue.dev + Ollama sur VPS
Provisionner le VPS et installer Docker
Connectez-vous en SSH, mettez le système à jour, puis installez Docker avec l’installateur officiel :
curl -fsSL https://get.docker.com | shVérifiez avec docker compose version. Créez un dossier dédié : mkdir -p /opt/ollama.
Démarrer Ollama et télécharger un modèle
Lancez le conteneur officiel en n’exposant le port que sur localhost :
docker run -d --name ollama -p 127.0.0.1:11434:11434 -v ollama:/root/.ollama ollama/ollamaTéléchargez un modèle orienté code : docker exec ollama ollama pull qwen2.5-coder:7b-instruct-q4_K_M. Le téléchargement prend quelques minutes selon la connexion.
Configurer le reverse proxy avec TLS
N’exposez jamais le port 11434 directement sur Internet — Ollama n’a aucune authentification native. Avec Caddy, une directive suffit dans le Caddyfile pour terminer TLS et relayer vers localhost:11434. Ajoutez une authentification basique ou un en-tête secret pour restreindre l’accès. Fermez le port en direct : ufw deny 11434.
Installer Continue.dev dans VS Code
Ouvrez le panneau Extensions (Ctrl+Shift+X), cherchez Continue, cliquez Installer. L’extension ajoute une icône dans la barre latérale. Ouvrez ~/.continue/config.json (macOS/Linux) via l’icône engrenage du panneau Continue.
Éditer config.json pour pointer vers le VPS
Dans le tableau models, ajoutez une entrée de type ollama avec le champ apiBase pointant vers l’URL HTTPS de votre reverse proxy. Renseignez aussi le champ model avec le nom exact du modèle téléchargé (qwen2.5-coder:7b-instruct-q4_K_M). Sauvegardez : Continue.dev recharge la configuration sans redémarrage.
Tester la complétion depuis VS Code
Ouvrez un fichier de code, placez le curseur après une signature de fonction partielle et attendez la complétion inline. Ou ouvrez le panneau chat Continue et posez une question sur votre base de code. La réponse provient de votre VPS — aucune invite ne transite par les serveurs GitHub.
Option 2 — Tabby : serveur de complétion dédié pour une équipe
Tabby est un serveur de complétion de code auto-hébergé avec environ 33 800 étoiles GitHub et une licence Apache 2.0 pour le noyau open source. Il expose une API compatible avec les plugins officiels de VS Code, JetBrains et Neovim, et gère l’authentification par token : chaque développeur obtient une clé individuelle. C’est la différence principale avec Ollama + Continue.dev : Tabby est conçu pour servir plusieurs postes depuis un seul serveur, avec une interface d’administration et des journaux d’utilisation par développeur.
Déployer Tabby avec Docker Compose
Créer le fichier Docker Compose
Définissez le service avec l’image officielle tabbyml/tabby. Pour un usage CPU uniquement, omettez les options GPU et choisissez un modèle compact en argument de démarrage : --model StarCoder2-3B ou --model Qwen2.5-Coder-1.5B. Montez un volume pour conserver les modèles téléchargés entre les redémarrages et exposez le port 8080 uniquement sur 127.0.0.1.
Démarrer le serveur et attendre le chargement du modèle
Lancez docker compose up -d puis suivez les logs : docker compose logs -f tabby. Le modèle se télécharge au premier démarrage. Tabby confirme qu’il est opérationnel quand il affiche le port d’écoute dans les logs.
Configurer le reverse proxy et activer l’authentification
Pointez un sous-domaine vers localhost:8080 via Caddy ou Nginx Proxy Manager avec TLS. Dans l’interface d’administration Tabby, activez la gestion des utilisateurs, créez le compte administrateur et générez des tokens d’accès individuels pour chaque développeur.
Installer le plugin VS Code et renseigner le token
Dans VS Code, installez l’extension Tabby disponible sur le Marketplace. Renseignez l’URL de votre serveur (ex. https://tabby.votre-domaine.com) et le token personnel dans les paramètres de l’extension. La complétion inline s’active immédiatement dans tous les fichiers ouverts.
LiteLLM comme passerelle multi-modèles
Si vous orchestrez plusieurs sources de modèles — Ollama sur un VPS pour le travail courant, une API externe pour les tâches complexes — LiteLLM unifie tout derrière un point d’entrée unique compatible OpenAI. Continue.dev ou tout client qui parle OpenAI pointe vers LiteLLM, qui route vers le bon backend selon des règles de priorité ou de budget.
Vous définissez des plafonds de dépense par clé API, des fallbacks automatiques en cas d’erreur d’un fournisseur, et une rotation entre modèles depuis un fichier de configuration central. Le template VPS LiteLLM du catalogue ServOrbit déploie le proxy et sa base PostgreSQL en une commande. C’est la couche indiquée si vous voulez garder la possibilité de basculer vers un modèle cloud sans changer la configuration de votre éditeur.
N’exposez jamais Ollama directement sur Internet. Fermez le port 11434 avec ufw deny 11434 et laissez uniquement le reverse proxy s’y connecter en local. Si plusieurs personnes partagent le même serveur Ollama, LiteLLM ajoute une couche de gestion de clés API individuelles par-dessus, sans modifier la configuration Ollama : chaque développeur a son token LiteLLM, LiteLLM parle à Ollama en interne.
Dépannage
Timeout Ollama au premier appel. Vérifiez que le conteneur tourne (docker ps) et que le modèle est chargé (docker exec ollama ollama list). Un modèle 7B peut prendre 30 à 60 secondes pour se charger en mémoire au premier appel après un redémarrage du conteneur.
Modèle trop lourd pour la RAM disponible. Surveillez docker stats pour suivre l’usage mémoire. Passez à une quantification plus légère (Q3_K_M ou Q2_K) ou à un modèle plus compact (1.5B ou 3B).
Continue.dev ne trouve pas l’API. Vérifiez que apiBase dans config.json pointe vers l’URL HTTPS de votre reverse proxy et non vers localhost:11434. Testez avec curl -I https://ollama.votre-domaine.com pour confirmer que le certificat TLS est valide et que le serveur répond.
Latence élevée en CPU uniquement. Sur un modèle 7B en Q4 sans GPU, comptez 5 à 15 tokens par seconde selon le nombre de vCPU. Réduisez le contexte envoyé à Continue.dev en limitant le nombre de fichiers ouverts inclus dans l’index (paramètre contextLength).
Ce que ça change concrètement
Le passage de Copilot aux AI Credits a rendu la facturation variable au moment où les sessions agentiques en consomment le plus. Un VPS avec Ollama répond avec un coût mensuel fixe, un contrôle total sur les modèles utilisés, et des invites qui restent sur votre infrastructure.
Continue.dev couvre le cas individuel en cinq minutes sans changer d’IDE. Tabby couvre le cas équipe avec authentification par token et administration centralisée. LiteLLM s’intercale si vous orchestrez plusieurs sources de modèles depuis un point unique. Ces trois outils sont complémentaires, pas concurrents : le choix dépend du nombre de développeurs, du besoin d’audit et de la diversité des modèles à orchestrer.