Exécuter des modèles d'intelligence artificielle en local, sans envoyer la moindre ligne de code vers un serveur distant, c'est exactement ce que propose Ollama. Cet outil open source permet de télécharger, gérer et exécuter des LLM directement sur votre machine.
Installation selon votre système
macOS
brew install ollama
Linux
curl -fsSL https://ollama.com/install.sh | sh
sudo systemctl status ollama
Windows
Téléchargez l'installateur depuis ollama.com. Après installation :
ollama --version
Commandes essentielles
# Télécharger et lancer un modèle
ollama run llama3.1
# Télécharger sans lancer
ollama pull codellama:13b
# Lister les modèles installés
ollama list
# Modèles chargés en mémoire
ollama ps
# Supprimer un modèle
ollama rm codellama:7b
# Piping depuis le terminal
cat mon_fichier.py | ollama run codellama "Explique ce code et suggère des améliorations"
# Générer un commit message
git diff --staged | ollama run mistral "Génère un message de commit conventionnel"
Les meilleurs modèles pour le code
# CodeLlama - spécialiste du code par Meta
ollama run codellama:7b # 8 Go RAM
ollama run codellama:13b # meilleur équilibre
ollama run codellama:13b-instruct # optimisé instructions
# DeepSeek Coder V2 - rivalise avec GPT-4 sur le code
ollama run deepseek-coder-v2:16b
# Mistral et Codestral
ollama run mistral # polyvalent et léger
ollama run codestral # spécifiquement pour le code
L'API REST locale
# Générer une complétion
curl http://localhost:11434/api/generate -d '{
"model": "codellama:13b",
"prompt": "Écris une fonction Python qui trie un dictionnaire par valeur",
"stream": false
}'
# Format chat compatible OpenAI
curl http://localhost:11434/v1/chat/completions -d '{
"model": "mistral",
"messages": [
{"role": "system", "content": "Tu es un expert NestJS."},
{"role": "user", "content": "Comment implémenter un guard JWT avec Passport ?"}
]
}'
Intégration Node.js
const response = await fetch('http://localhost:11434/api/generate', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
model: 'deepseek-coder-v2:16b',
prompt: `Analyse ce code TypeScript :\n${code}`,
stream: false
})
});
const { response: review } = await response.json();
console.log(review);
Créer un Modelfile personnalisé
# Modelfile.senior-reviewer
FROM codellama:13b
SYSTEM """
Tu es un senior developer spécialisé TypeScript et Angular.
Tu fais des revues de code rigoureuses.
Tu signales les problèmes de performance, sécurité et maintenabilité.
Réponds toujours en français.
"""
PARAMETER temperature 0.3
PARAMETER top_p 0.9
PARAMETER num_ctx 8192
# Créer et utiliser le modèle
ollama create senior-reviewer -f Modelfile.senior-reviewer
cat src/app.component.ts | ollama run senior-reviewer "Revois ce composant Angular"
Performance : GPU vs CPU
| Configuration | Modèle 7B | Modèle 13B | Modèle 34B |
|---|---|---|---|
| CPU seul (16 Go RAM) | ~8 tokens/s | ~4 tokens/s | Inutilisable |
| GPU 8 Go VRAM (RTX 3060) | ~40 tokens/s | ~20 tokens/s | ~8 tokens/s |
| GPU 16 Go VRAM (RTX 4080) | ~60 tokens/s | ~35 tokens/s | ~18 tokens/s |
| Apple M2 Pro (16 Go) | ~35 tokens/s | ~18 tokens/s | ~10 tokens/s |
Intégration avec les éditeurs
Configuration Continue.dev dans ~/.continue/config.json :
{
"models": [{
"title": "DeepSeek Coder Local",
"provider": "ollama",
"model": "deepseek-coder-v2:16b"
}],
"tabAutocompleteModel": {
"title": "CodeLlama Autocomplete",
"provider": "ollama",
"model": "codellama:7b-code"
}
}
Ollama transforme l'IA générative d'un service cloud en un outil local, gratuit et privé. Pour les développeurs qui manipulent du code sensible ou qui veulent maîtriser leur infrastructure, c'est devenu aussi essentiel que Git ou Docker.




