- 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
67 lines
3.6 KiB
YAML
67 lines
3.6 KiB
YAML
# ═══════════════════════════════════════════════════════════
|
|
# OVERRIDE litellm — Ajoute LiteLLM + jean-proxy a la stack Effi
|
|
# + configure open-webui pour parler a LiteLLM en mode OpenAI API
|
|
#
|
|
# Usage (depuis /home/effi/effi sur serveur Effi) :
|
|
# docker compose -f docker-compose.yml -f docker-compose.litellm.yml up -d --build
|
|
#
|
|
# IMPORTANT : cet override modifie open-webui (ajoute OPENAI_API_BASE_URL +
|
|
# OPENAI_API_KEY + remet OLLAMA_BASE_URL sur le wol-proxy originel :3011).
|
|
# open-webui sera recree a la prochaine 'up --force-recreate' pour propager.
|
|
# LiteLLM expose l'API OpenAI (/v1/*), pas l'API Ollama (/api/*) — donc
|
|
# open-webui DOIT etre configure via la section "OpenAI API" (admin UI)
|
|
# et non via la section "Ollama".
|
|
# ═══════════════════════════════════════════════════════════
|
|
|
|
services:
|
|
|
|
# ─────────────────────────────────────────────────────────
|
|
# open-webui — repointe vers LiteLLM via connexion OpenAI API
|
|
# L'ancien backend Ollama (wol-proxy :3011) reste configuré pour
|
|
# retrocomparabilité mais le LLM Jhon/Ollama n'est plus accessible
|
|
# la nuit (contention VRAM). Le routing par modele se fait cote LiteLLM.
|
|
# ─────────────────────────────────────────────────────────
|
|
open-webui:
|
|
environment:
|
|
- OLLAMA_BASE_URL=http://host.docker.internal:3011
|
|
- OPENAI_API_BASE_URL=http://host.docker.internal:4000/v1
|
|
- OPENAI_API_KEY=sk-effi-litellm-master
|
|
- ENABLE_OPENAI_API=True
|
|
|
|
# ─────────────────────────────────────────────────────────
|
|
# jean-proxy — Reverse-proxy vers JeanOrchestrator (.11:8080) + WOL
|
|
# L'orchestrateur gere le switch auto MoE/27B.
|
|
# Ecoute :3012 sur le host (network_mode: host)
|
|
# ─────────────────────────────────────────────────────────
|
|
jean-proxy:
|
|
build: ./jean-proxy
|
|
container_name: jean-proxy
|
|
restart: unless-stopped
|
|
network_mode: host
|
|
environment:
|
|
- TARGET_HOST=${OLLAMA_HOST}
|
|
- TARGET_PORT=8080
|
|
- TARGET_MAC=${PC_GAMING_MAC}
|
|
- LISTEN_PORT=3012
|
|
- WAKE_TIMEOUT=60
|
|
- CHECK_INTERVAL=5
|
|
- BROADCAST_IP=${BROADCAST_IP}
|
|
- HEALTH_PATH=/health
|
|
|
|
# ─────────────────────────────────────────────────────────
|
|
# 2. LiteLLM proxy — Endpoint OpenAI unique pour open-webui
|
|
# Ecoute :4000 sur le host (network_mode: host pour joindre
|
|
# wol-proxy :3011 et jean-proxy :3012 sur le host)
|
|
# ─────────────────────────────────────────────────────────
|
|
litellm:
|
|
image: ghcr.io/berriai/litellm:main-stable
|
|
container_name: litellm
|
|
restart: unless-stopped
|
|
network_mode: host
|
|
volumes:
|
|
- ./litellm/config.yaml:/app/config.yaml:ro
|
|
command:
|
|
- "--config=/app/config.yaml"
|
|
- "--port=4000"
|
|
- "--num_workers=1"
|