OllamaLlmLocalMistral
Installer Ollama et exécuter des modèles LLM (Llama, Mistral, Gemma) en local sans cloud, avec une API REST intégrée.
Installation
Ollama est disponible sur macOS, Linux et Windows. Il installe un serveur local qui expose une API REST compatible OpenAI.
# macOS / Linux
curl -fsSL https://ollama.com/install.sh | sh
# Windows : télécharger l'installateur sur ollama.com
# Vérifier l'installation
ollama --version
Ollama démarre automatiquement un service sur http://localhost:11434.
A retenir : Ollama fonctionne entièrement en local — aucune donnée ne quitte ta machine. Idéal pour les projets confidentiels ou le développement hors ligne.
Télécharger et lancer un modèle
La commande ollama pull télécharge un modèle depuis le registre officiel.
# Télécharger Llama 3.2 (3B — léger, rapide)
ollama pull llama3.2
# Télécharger Mistral 7B
ollama pull mistral
# Télécharger Gemma 2 de Google
ollama pull gemma2
# Lister les modèles installés
ollama list
Interface CLI
Lance un chat interactif directement dans le terminal avec ollama run.
# Chat interactif
ollama run llama3.2
# Prompt one-shot
ollama run mistral "Explique les Promises JavaScript en 2 phrases"
# Avec un fichier de contexte
ollama run codellama "$(cat mon-code.js)" "Que fait ce code ?"
Créer un modèle personnalisé avec un Modelfile :
# Modelfile
FROM llama3.2
SYSTEM "Tu es un assistant expert en développement Angular. Réponds toujours en français avec des exemples de code TypeScript."
PARAMETER temperature 0.7
PARAMETER num_ctx 4096
ollama create mon-assistant -f ./Modelfile
ollama run mon-assistant
API REST intégrée
Ollama expose une API REST sur le port 11434. Elle est compatible avec le format de l'API OpenAI.
# Chat completion (format Ollama natif)
curl http://localhost:11434/api/chat -d '{
"model": "llama3.2",
"messages": [
{ "role": "user", "content": "Bonjour !" }
],
"stream": false
}'
# Format compatible OpenAI (v1/chat/completions)
curl http://localhost:11434/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "llama3.2",
"messages": [{ "role": "user", "content": "Bonjour !" }]
}'
Intégration Node.js
Utilise le SDK officiel ollama ou le SDK OpenAI en pointant vers l'URL locale.
# Option 1 : SDK Ollama
npm install ollama
import ollama from 'ollama';
const response = await ollama.chat({
model: 'llama3.2',
messages: [{ role: 'user', content: 'Qu\'est-ce qu\'un observable RxJS ?' }],
});
console.info(response.message.content);
# Option 2 : SDK OpenAI (aucune dépendance supplémentaire si déjà installé)
import OpenAI from 'openai';
const client = new OpenAI({
baseURL: 'http://localhost:11434/v1',
apiKey: 'ollama', // requis mais ignoré
});
const response = await client.chat.completions.create({
model: 'mistral',
messages: [{ role: 'user', content: 'Hello' }],
});
console.info(response.choices[0].message.content);
A retenir : L'option 2 (SDK OpenAI + baseURL Ollama) te permet de switcher entre OpenAI et Ollama en changeant juste une variable — parfait pour les environnements dev/prod.
Modèles populaires
| Modèle | Taille | Points forts | RAM min. |
|---|---|---|---|
llama3.2 | 3B | Usage général, rapide | 4 GB |
llama3.1 | 8B | Qualité élevée | 8 GB |
mistral | 7B | Français excellent | 8 GB |
codellama | 7B | Génération de code | 8 GB |
gemma2 | 9B | Google, multilingue | 8 GB |
qwen2.5-coder | 7B | Code spécialisé | 8 GB |