Ollama
De Le Wiki de Lug
Autres actions
Ollama est un serveur local d’inférence de modèles de langage (LLM). Plus simplement, il permet de faire tourner un modèle d’IA en local et de l’exposer via une API sur le réseau.
A noter qu'il existe également une version conteneur pour docker officielle.
Debian 13
Prérequis
- Un GPU est fortement recommandé, idéalement NVIDIA avec le plus de VRAM possible. Le modèle IA choisi doit tenir entièrement en VRAM, sinon les performances chutent fortement. Voir ce lien pour partager un GPU dans un LXC
- Les modèles peuvent fonctionner sur CPU, mais avec des performances très faibles (souvent inutilisables en pratique).
- VRAM recommandée : environ la taille du modèle (en quantization type Q4) + environ 1 à 3 Go supplémentaires pour le KV cache (selon le contexte utilisé) -> En pratique, prévoir 20 à 50% de marge est un bon compromis.
- RAM recommandée : au minimum équivalente à la taille du modèle, idéalement 1,5 à 2 fois.
- Espace disque à prévoir en fonction du ou des modèle que vous allez utiliser ou tester, Exemples :
- qwen2.5:7b (Q4) ≈ 4–5 Go
- qwen2.5:14b (Q4) ≈ 8–10 Go
- llama3:70b (Q4) ≈ 35–40 Go
- Utiliser un SSD/NVMe améliore fortement les temps de chargement.
- CPU / vCPU recommandés :
- Avec GPU : 2 à 4 vCPU suffisent généralement.
- Sans GPU : prévoir au minimum 8 vCPU (voire plus), les performances restant très limitées.
- Note : Q4 correspond au niveau de "quantization", c’est-à-dire une réduction de la précision numérique du modèle afin de diminuer son utilisation en mémoire (VRAM). Les niveaux vont généralement de Q1 à Q8 : Q8 est le plus précis (proche du modèle original), mais aussi le plus gourmand en ressources. À l’inverse, Q1 est très léger mais fortement dégradé. En pratique, Q4 (voire Q5) est généralement considéré comme le meilleur compromis entre performances, consommation de VRAM et qualité de réponse.
Installation
# apt update && apt upgrade # apt install curl zstd pciutils # curl -fsSL https://ollama.com/install.sh | sh
Commandes
- Télécharger ou mettre à jour un modèle (voir liste officielle des modèles disponibles) :
# ollama pull qwen2.5:7b
- Lancer un modèle (test rapide) :
# ollama run qwen2.5:7b
- Lister les modèles installés :
# ollama list
- Informations sur un modèle :
# ollama show qwen2.5:7b
- Supprimer un modèle :
# ollama rm qwen2.5:7b
- Tester l’API :
# curl http://localhost:11434/api/tags
Limiter le contexte
# systemctl edit ollama
Ajouter entre les lignes d'éditions :
... ### Anything between here and the comment below will become the contents of the drop-in file [Service] Environment="OLLAMA_CONTEXT_LENGTH=4096" ### Edits below this comment will be discarded ...
# systemctl daemon-reexec # systemctl restart ollama
Pour vérifier :
# systemctl show ollama | grep OLLAMA_CONTEXT_LENGTH