Commit Graph
15 Commits
Author SHA1 Message Date
Folzo 62bb38ecff jean-router: dashboard HTML de diagnostic temps reel
- /dashboard : page HTML avec statut, slot, stats, actions
- /api/dashboard/status : JSON etat complet (Jean, Ollama, slot, VRAM)
- /api/dashboard/logs/stream : SSE logs en temps reel
- /api/dashboard/logs : derniers logs JSON
- /api/dashboard/actions/refresh : force rafraichissement cache
- /api/dashboard/actions/restart-jean : restart Jean via WoL
- Tracking des requetes (total, jean, ollama, erreurs)
- Log buffer en memoire avec QueueHandler
2026-08-02 01:08:55 +02:00
Folzo 06285b8d4f jean-router: streaming de messages d'attente pendant le WoL
- Quand le PC est eteint/en veille, stream immediat de messages
- 'PC de jeu se reveille...' → 'Magic packet envoye...' → 'Demarrage X%...'
- Une fois pret, forward la vraie reponse en stream
- Plus de blocage silencieux, l'utilisateur voit la progression
2026-08-01 19:27:54 +02:00
Folzo f2bcfb98e3 jean-router: WoL plus robuste + retry sur echec upstream
- Retry avec WoL quand la requete upstream echoue (connexion refusee)
- Logs plus verbeux dans wait_for_jean
- Cache jean_alive reduit a 2s
2026-08-01 08:51:30 +02:00
Folzo 4f8a5288ff jean-router: ajout Wake-on-LAN
- Detection si Jean/Ollama inaccessible
- Envoi magic packet WoL vers TARGET_MAC (fallback PC_GAMING_MAC)
- Attente WAKE_TIMEOUT secondes que la machine demarre
- Integration dans get_presets, get_ollama_models, chat_completions
- Verrous pour eviter les WoL simultanes
- Active via ENABLE_WOL=true
2026-08-01 08:20:35 +02:00
Folzo 68a76aa254 jean-router: utiliser le nom d'affichage (name) comme id modele
- /v1/models expose name au lieu de l'id technique des presets Jean
- Routing: resolution name -> id interne pour le switch
- Correspondance bidirectionnelle dans chat_completions
2026-07-26 21:30:32 +02:00
Folzo cbb43ad0f3 docs: ajout procedures mise a jour OpenFox et jean-router 2026-07-22 22:00:31 +02:00
Folzo 4f95757489 jean-router: resolution dynamique des context_length + max_tokens + capabilities
- Suppression du preset_ctx_map code en dur
- Resolution dynamique: Jean /v1/models → matching Ollama → heuristique
- Ajout max_tokens / max_input_tokens dans /v1/models
- Enrichissement Ollama via /api/show pour donnees manquantes
- Detection capabilities (vision, thinking) pour presets Jean
- Auto-doublement max_tokens pour presets reasoning=on
- Timeout switch augmente a 15s avec retry
- Tracking du dernier preset actif (bypass bug Jean active=false)
- Cache TTL configurable (15s par defaut), ?refresh=true
- Plan de test des capacites LLM
2026-07-22 21:59:07 +02:00
Folzo 2e83369483 feat: add max_model_len field for OpenFox compatibility
OpenFox looks for max_model_len in /v1/models response to determine
context window size. This commit:
- Adds max_model_len field to Jean models
- Adds max_model_len field to Ollama models
- Removes dead code after return statement
2026-07-20 12:28:44 +02:00
Folzo b04fb2f245 feat: add context_length and context_window at root level for OpenFox compatibility
- Add context_length and context_window fields at model root level
- Keep them in meta for backward compatibility
- This should allow OpenFox to properly detect max context size
2026-07-20 12:18:17 +02:00
Folzo 1670f57377 fix: restore get_ollama_models() function body
The function was accidentally truncated when adding get_jean_context_lengths().
This caused TypeError: 'NoneType' object is not iterable in list_models().
2026-07-20 12:07:08 +02:00
Folzo afd340d8a4 feat: add context_length to /v1/models response
- Add get_jean_context_lengths() to fetch n_ctx from Jean /v1/models
- Add preset_ctx_map with known CTX values for each preset
- Add context_length to Jean model metadata in /v1/models
- Add context_length to Ollama model metadata from details.context_length
- This allows OpenFox to know the max tokens each model can handle
2026-07-20 12:05:48 +02:00
Folzo 20767c2300 feat: keep Ollama models in memory for 5 minutes
- Add OLLAMA_KEEP_ALIVE_MINUTES config (default: 5)
- schedule_ollama_unload(): delays Ollama unload when switching to Jean
- cancel_ollama_unload(): cancels timer if returning to Ollama
- Ollama models stay in VRAM for X minutes after last use
- Timer resets on each Ollama request
2026-07-20 10:46:58 +02:00
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 b441f3495a fix: jean-router syntax error (missing except block) 2026-07-20 10:14:23 +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