fix(litellm): open-webui via OpenAI API (pas Ollama) + 3 profils Qwen3.6

LiteLLM expose l'API OpenAI /v1/* pas l'API Ollama /api/*. open-webui
doit etre branche via la section 'OpenAI API' (env OPENAI_API_BASE_URL +
OPENAI_API_KEY), pas via 'Ollama'. L'override ajoute ces vars a open-webui,
force-recreate pour propager. Confirme en prod: HTTP 200 sur :4000/v1/models
depuis le conteneur open-webui. Les 4 modeles Qwen3.6 remontent dans le chat.
This commit is contained in:
Folzo
2026-06-27 16:51:51 +02:00
parent 7a8dc34212
commit 1b4764e9fa
2 changed files with 45 additions and 27 deletions
+21 -16
View File
@@ -107,25 +107,30 @@ curl -s -X POST http://localhost:4000/v1/chat/completions \
-d '{"model":"llama3.1","messages":[{"role":"user","content":"Bonjour"}],"max_tokens":30}'
```
### Commutation de open-webui vers LiteLLM (étape utilisateur)
### Commutation de open-webui vers LiteLLM — réalisée
Une fois les tests validés :
⚠️ LiteLLM expose l'**API OpenAI** (`/v1/*`), **pas** l'API Ollama (`/api/*`).
open-webui ne peut donc pas brancher LiteLLM sur sa section "Ollama" (≠ protocole).
1. Éditer `/home/effi/effi/docker-compose.yml` (seulement cette ligne) :
```yaml
OLLAMA_BASE_URL=http://host.docker.internal:4000 # LiteLLM au lieu de :3011
```
2. Ajouter la master key LiteLLM dans `/home/effi/effi/.env` :
```
LITELLM_MASTER_KEY=sk-effi-litellm-master
```
3. Redémarrer open-webui uniquement :
```bash
docker compose -f docker-compose.yml -f docker-compose.litellm.yml up -d open-webui
```
4. Dans open-webui : Admin → Settings → Connections → l'URL est déjà `http://host.docker.internal:4000`. Vérifier que les deux modèles apparaissent dans le dropdown.
L'override `docker-compose.litellm.yml` configure donc open-webui via la section **OpenAI API** :
- `OPENAI_API_BASE_URL=http://host.docker.internal:4000/v1`
- `OPENAI_API_KEY=sk-effi-litellm-master`
- `ENABLE_OPENAI_API=True`
- `OLLAMA_BASE_URL=http://host.docker.internal:3011` (conservé pour rétrocompat — mais le PC gaming OOM si Jean tourne, donc ce backend ne remonte pas de modèles)
ℹ️ Cette étape est volontairement laissée manuelle — c'est l'unique impact sur le service en prod (1 redémarrage open-webui). Hermes, wol-proxy, qdrant etc. ne sont pas touchés.
Appliqué via :
```bash
docker compose -f docker-compose.yml -f docker-compose.litellm.yml up -d --force-recreate open-webui
```
Dans l'UI open-webui : **Admin → Settings → Connections → "OpenAI API"**. L'URL est pré-remplie (`http://host.docker.internal:4000/v1`) et la clé `sk-effi-litellm-master`. Les 4 modèles Qwen3.6 (`qwen3.6-reason`, `qwen3.6-27b`, `qwen3.6-fast`, `qwen3.6`) apparaissent dans le dropdown du chat.
### Modèles exposés (profil Qwen3.6 — vramp oblige)
| Modèle dans open-webui | Raisonnement | Quand l'utiliser | Latence TTFT |
|---|---|---|---|
| `qwen3.6-fast` / `qwen3.6` | OFF | Chat, mail, extraction simple | ~0.4-1 s |
| `qwen3.6-reason` / `qwen3.6-27b` | ON | Code, analyse, rapports, RAG, tâches complexes | 10-40 s |
### En cas de rollback