Apercu
Ollama est une plateforme open source permettant d’executer des grands modeles de langage (LLM) en local. Il est configure comme fournisseur LLM par defaut de Fess et convient a une utilisation en environnement prive.
L’utilisation d’Ollama permet d’utiliser la fonctionnalite de chat IA sans envoyer de donnees a l’exterieur.
Caracteristiques principales
Execution locale : Les donnees ne sont pas envoyees a l’exterieur, garantissant la confidentialite
Modeles varies : Prise en charge de nombreux modeles dont Llama, Mistral, Gemma, CodeLlama
Efficacite des couts : Pas de cout API (seulement les couts materiels)
Personnalisation : Possibilite d’utiliser des modeles affines
Modeles pris en charge
Principaux modeles disponibles avec Ollama :
llama3.3:70b- Llama 3.3 de Meta (70B parametres)gemma3:4b- Gemma 3 de Google (4B parametres, par defaut)mistral:7b- Mistral de Mistral AI (7B parametres)codellama:13b- Code Llama de Meta (13B parametres)phi3:3.8b- Phi-3 de Microsoft (3.8B parametres)
Note
Pour la derniere liste des modeles disponibles, consultez Ollama Library.
Prerequis
Avant d’utiliser Ollama, verifiez les points suivants.
Installation d’Ollama : Telechargez et installez depuis https://ollama.com/
Telechargement du modele : Telechargez le modele a utiliser dans Ollama
Demarrage du serveur Ollama : Verifiez qu’Ollama fonctionne
Installation d’Ollama
Linux/macOS
curl -fsSL https://ollama.com/install.sh | sh
Windows
Telechargez et executez l’installateur depuis le site officiel.
Docker
docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
Telechargement du modele
# Telecharger le modele par defaut (Gemma 3 4B)
ollama pull gemma3:4b
# Telecharger Llama 3.3
ollama pull llama3.3:70b
# Verifier le fonctionnement du modele
ollama run gemma3:4b "Hello, how are you?"
Configuration de base
Ajoutez les parametres suivants dans app/WEB-INF/conf/system.properties.
Configuration minimale
# Activer la fonctionnalite de mode IA
rag.chat.enabled=true
# Definir le fournisseur LLM sur Ollama
rag.llm.type=ollama
# URL d'Ollama (environnement local)
rag.llm.ollama.api.url=http://localhost:11434
# Modele a utiliser
rag.llm.ollama.model=gemma3:4b
Configuration recommandee (environnement de production)
# Activer la fonctionnalite de mode IA
rag.chat.enabled=true
# Configuration du fournisseur LLM
rag.llm.type=ollama
# URL d'Ollama
rag.llm.ollama.api.url=http://localhost:11434
# Configuration du modele (utiliser un modele plus grand)
rag.llm.ollama.model=llama3.3:70b
# Configuration du timeout (augmente pour les grands modeles)
rag.llm.ollama.timeout=120000
Elements de configuration
Tous les elements de configuration disponibles pour le client Ollama.
| Propriete | Description | Valeur par defaut |
|---|---|---|
rag.llm.ollama.api.url | URL de base du serveur Ollama | http://localhost:11434 |
rag.llm.ollama.model | Nom du modele a utiliser (modele telecharge dans Ollama) | gemma3:4b |
rag.llm.ollama.timeout | Timeout de la requete (millisecondes) | 60000 |
Configuration reseau
Configuration Docker
Exemple de configuration lorsque Fess et Ollama fonctionnent tous deux dans Docker.
docker-compose.yml :
version: '3'
services:
fess:
image: codelibs/fess:15.5.0
environment:
- RAG_CHAT_ENABLED=true
- RAG_LLM_TYPE=ollama
- RAG_LLM_OLLAMA_API_URL=http://ollama:11434
- RAG_LLM_OLLAMA_MODEL=gemma3:4b
depends_on:
- ollama
# ... autres configurations
ollama:
image: ollama/ollama
volumes:
- ollama_data:/root/.ollama
ports:
- "11434:11434"
volumes:
ollama_data:
Note
Dans l’environnement Docker Compose, utilisez ollama comme nom d’hote (pas localhost).
Serveur Ollama distant
Lorsqu’Ollama s’execute sur un serveur different de Fess :
rag.llm.ollama.api.url=http://ollama-server.example.com:11434
Avertissement
Ollama n’a pas de fonctionnalite d’authentification par defaut, donc si vous le rendez accessible de l’exterieur, envisagez des mesures de securite au niveau reseau (pare-feu, VPN, etc.).
Guide de selection des modeles
Guide pour la selection du modele selon l’usage.
| Modele | Taille | VRAM requise | Usage |
|---|---|---|---|
phi3:3.8b | Petit | 4GB+ | Environnement leger, questions-reponses simples |
gemma3:4b | Petit-Moyen | 6GB+ | Usage general equilibre (par defaut) |
mistral:7b | Moyen | 8GB+ | Reponses de haute qualite requises |
llama3.3:70b | Grand | 48GB+ | Reponses de meilleure qualite, raisonnement complexe |
Prise en charge GPU
Ollama prend en charge l’acceleration GPU. L’utilisation d’un GPU NVIDIA ameliore considerablement la vitesse d’inference.
# Verification de la prise en charge GPU
ollama run gemma3:4b --verbose
Depannage
Erreur de connexion
Symptome : Erreur dans la fonctionnalite de chat, LLM affiche comme indisponible
Points a verifier :
Verifier si Ollama fonctionne
curl http://localhost:11434/api/tags
Verifier si le modele est telecharge
ollama list
Verifier les parametres du pare-feu
Modele introuvable
Symptome : Log affichant « Configured model not found in Ollama »
Solution :
Verifier si le nom du modele est exact (peut necessiter le tag
:latest)# Verifier la liste des modeles ollama list
Telecharger le modele necessaire
ollama pull gemma3:4b
Timeout
Symptome : La requete expire
Solution :
Augmenter le temps de timeout
rag.llm.ollama.timeout=120000
Envisager un modele plus petit ou un environnement GPU
Configuration de debogage
Pour investiguer les problemes, ajustez le niveau de log de Fess pour afficher des logs detailles lies a Ollama.
app/WEB-INF/classes/log4j2.xml :
<Logger name="org.codelibs.fess.llm.ollama" level="DEBUG"/>
Informations de reference
Apercu de l’integration LLM - Apercu de l’integration LLM
Configuration du mode IA - Details de la fonctionnalite de mode IA