coffreobsidian/LLM/Multi_Ollama_Config_Docker_Memo.md
2025-04-14 08:52:08 +02:00

3.0 KiB
Raw Permalink Blame History

🐳 Configuration Multi-Ollama via Docker (pour Ragflow multi-modèle)

Ce fichier te guide pour lancer plusieurs instances dOllama via Docker Compose, afin davoir un modèle dédié par rôle (chat, vision, embedding, rerank).

Cela permet :

Déviter que les modèles se déchargent entre eux
Davoir une instance stable pour chaque rôle dans Ragflow Web
Dexploiter pleinement ta machine (ex : H100)


⚙️ Structure recommandée

Rôle Modèle Ollama Port
Chat deepseek-r1:70b-llama-distill-q8_0 11434
Vision llava:34b-v1.6-fp16 11435
Embedding nomic-embed-text 11436
Reranker bge-reranker-v2-m3 11437

📁 Arborescence

multi-ollama/
├── docker-compose.yml
├── ollama-chat/
│   └── Modelfile (optionnel)
├── ollama-vision/
│   └── Modelfile
├── ollama-embed/
│   └── Modelfile
└── ollama-rerank/
    └── Modelfile

🛠️ docker-compose.yml (exemple)

version: '3.8'

services:

  ollama-chat:
    image: ollama/ollama
    ports:
      - "11434:11434"
    environment:
      - OLLAMA_HOST=0.0.0.0:11434
    volumes:
      - ollama-chat-data:/root/.ollama
    restart: unless-stopped

  ollama-vision:
    image: ollama/ollama
    ports:
      - "11435:11434"
    environment:
      - OLLAMA_HOST=0.0.0.0:11434
    volumes:
      - ollama-vision-data:/root/.ollama
    restart: unless-stopped

  ollama-embed:
    image: ollama/ollama
    ports:
      - "11436:11434"
    environment:
      - OLLAMA_HOST=0.0.0.0:11434
    volumes:
      - ollama-embed-data:/root/.ollama
    restart: unless-stopped

  ollama-rerank:
    image: ollama/ollama
    ports:
      - "11437:11434"
    environment:
      - OLLAMA_HOST=0.0.0.0:11434
    volumes:
      - ollama-rerank-data:/root/.ollama
    restart: unless-stopped

volumes:
  ollama-chat-data:
  ollama-vision-data:
  ollama-embed-data:
  ollama-rerank-data:

🚀 Commandes utiles

Lancer les 4 instances :

cd multi-ollama
docker compose up -d

Vérifier les logs :

docker compose logs -f

Arrêter :

docker compose down

🔗 Exemple de configuration dans Ragflow Web

Rôle Base URL à configurer
Chat http://localhost:11434
Vision http://localhost:11435
Embedding http://localhost:11436
Reranker http://localhost:11437

💡 Astuces

  • Chaque conteneur a sa propre cache/modèle (.ollama)
  • Tu peux pré-charger les modèles avec :
    docker exec -it <container_name> ollama pull mistral
    

Souhaites-tu une version avec les modèles directement préchargés via Modelfile ?