# 🌐 Gestion de plusieurs modèles Ollama sur serveur distant (multi-ports)

Tu as accès à **Ollama sur un serveur distant** via l’IP suivante :  
➡️ `http://217.182.105.173:11434`

Mais tu veux pouvoir :

✅ Lancer plusieurs modèles sur **des ports séparés**  
✅ Gérer facilement leur activation/désactivation  
✅ Éventuellement avoir une interface de contrôle locale ou Web

---

## 🧠 1. Lancer des modèles sur des ports spécifiques depuis ton serveur

Connecte-toi en SSH à ton serveur :

```bash
ssh ubuntu@217.182.105.173
```

Puis, exécute chaque commande dans un terminal **séparé** ou via `tmux` :

---

### 🔹 Port 11434 – Chat (Mistral)

```bash
OLLAMA_HOST=0.0.0.0:11434 ollama run mistral:latest
```

---

### 🔹 Port 11435 – Vision (LLaVA)

```bash
OLLAMA_HOST=0.0.0.0:11435 ollama run llava:34b-v1.6-fp16
```

---

### 🔹 Port 11436 – Embedding (Nomic Embed Text)

```bash
OLLAMA_HOST=0.0.0.0:11436 ollama run nomic-embed-text:137m-v1.5-fp16
```

---

### 🔹 Port 11437 – Reranker (BGE Re-ranker)

```bash
OLLAMA_HOST=0.0.0.0:11437 ollama run linux6200/bge-reranker-v2-m3:latest
```

---

## 🧩 2. Suggestions pour une gestion simplifiée

### ✅ Solution 1 : Script Bash de lancement automatique

Crée un fichier `start_ollama_ports.sh` sur le serveur :

```bash
#!/bin/bash

echo "Démarrage des instances Ollama :"

tmux new-session -d -s ollama_chat "OLLAMA_HOST=0.0.0.0:11434 ollama run mistral:latest"
tmux new-session -d -s ollama_vision "OLLAMA_HOST=0.0.0.0:11435 ollama run llava:34b-v1.6-fp16"
tmux new-session -d -s ollama_embed "OLLAMA_HOST=0.0.0.0:11436 ollama run nomic-embed-text:137m-v1.5-fp16"
tmux new-session -d -s ollama_rerank "OLLAMA_HOST=0.0.0.0:11437 ollama run linux6200/bge-reranker-v2-m3:latest"

echo "Tout est lancé dans des sessions tmux indépendantes."
```

Lancer tous les modèles :

```bash
chmod +x start_ollama_ports.sh
./start_ollama_ports.sh
```

---

### ⛔ Stopper un seul modèle

```bash
tmux kill-session -t ollama_chat
tmux kill-session -t ollama_vision
```

---

### 📺 Surveiller l'état d’un modèle

```bash
tmux attach -t ollama_chat
# CTRL+B puis D pour détacher
```

---

### 🖥️ Option future : Interface Web de monitoring

Tu peux créer :

- Un petit script Flask / FastAPI avec boutons `start/stop`
- Un panneau HTML pour démarrer/arrêter chaque modèle
- Une API REST locale sur le serveur

Souhaites-tu un exemple de script Flask pour ça ?

---

## 📌 Récapitulatif des ports

| Port   | Modèle / Rôle       |
|--------|----------------------|
| 11434  | Chat - Mistral       |
| 11435  | Vision - LLaVA       |
| 11436  | Embedding - Nomic    |
| 11437  | Reranker - BGE       |

---

Tu peux maintenant utiliser ces adresses dans Ragflow :

```
http://217.182.105.173:11434  → Mistral (chat)
http://217.182.105.173:11435  → LLaVA (vision)
http://217.182.105.173:11436  → Embedding
http://217.182.105.173:11437  → Reranker
```

Souhaites-tu aussi une version en `.sh` prêtes à télécharger ?

