Commit Graph
7 Commits
Author SHA1 Message Date
Folzo 8b7c4fbd9c feat: add VRAM management for Jean/Ollama switching
- stop_jean(): stops Jean service to free VRAM before Ollama use
- start_jean(): starts Jean service when switching back from Ollama
- unload_ollama(): forces Ollama to unload models before Jean use
- ensure_vram_for_backend(): orchestrates VRAM switching
- Tracks active backend state to avoid unnecessary switches
- Configurable timeouts via environment variables
- Prevents VRAM contention between Jean and Ollama
2026-07-20 10:33:35 +02:00
Folzo 856ba4ae36 refactor: remove LiteLLM, jean-router handles all routing 2026-07-20 10:22:15 +02:00
Folzo 43aacc077d refactor: OpenWebUI points directly to jean-router (no LiteLLM needed) 2026-07-20 10:15:34 +02:00
Folzo fcad41521e feat: jean-router — routing dynamique Jean + Ollama
- jean-router interroge /api/presets pour lister dynamiquement les presets Jean
- Support Ollama via /api/tags pour les modèles vision
- Switch automatique de preset quand nécessaire
- Expose /v1/models avec tous les modèles disponibles
- Route les requêtes vers Jean ou Ollama selon le modèle demandé
- Nouveaux presets Jean automatiquement visibles dans OpenWebUI

Architecture:
  open-webui → LiteLLM:4000 → jean-router:3014
                                ├→ jean-proxy:3012 → Jean (.11:8080)
                                └→ wol-proxy:3011 → Ollama (.11:11434)
2026-07-20 10:10:18 +02:00
Folzo 1f55f12331 refactor: LiteLLM unified routing via JeanOrchestrator
- All models now route through single jean-proxy:3012 → orchestrator:8080
- Removed jean-proxy-moe (no longer needed with auto-switch orchestrator)
- Added qwen3.6-moe and qwen3.6-moe-reason model routes
- Updated architecture comments
2026-06-28 11:45:00 +02:00
Folzo 1b4764e9fa 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.
2026-06-27 16:51:51 +02:00
Folzo 2a9f721c4e feat: LiteLLM multi-backends + jean-proxy avec WoL
Architecture (voir docs/ARCHITECTURE-LITELLM.md):
  open-webui -> LiteLLM:4000
                 |- qwen3.6-27b -> jean-proxy:3012 -> Jean (.11:8080)
                 |- llama3.1-8b -> wol-proxy:3011  -> Ollama (.11:11434)

Nouveaux fichiers:
- wol-proxy/ (versionne l'app.py de prod deja en place)
- jean-proxy/ (clone du wol-proxy avec HEALTH_PATH=/health + retry post-WoL
  pour services qui mettent du temps a demarrer apres WoL, ex: Jean qui
  charge 14 Go en VRAM)
- litellm/config.yaml (routing par nom de modele, drop_params=true)
- docker-compose.litellm.yml (override ADDITIF: ajoute uniquement jean-proxy
  et litellm, ne redemarre PAS open-webui/wol-proxy/hermes)

Teste en prod sur .27: Jean + Ollama repondent via LiteLLM:4000 avec
path-through de chat_template_kwargs.enable_thinking (raisonnement Qwen3.6
desactivable par requete). Zero impact hermes-webui/wol-proxy.
Basculer open-webui reste une etape manuelle (step 3 de la doc).
2026-06-27 16:19:08 +02:00