Files
Effi/docker-compose.litellm.yml
T
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

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"