33800 Docs

← Retour

Multi-GPU AI Orchestrator v3.0

Date: 07/02/2026 17:35 Status: TERMINE

Objectif

Permettre 2 outils IA simultanes sur 2 GPUs differents (RTX 3090 + RTX 2070 Super) dans l'ai-orchestrator, avec smart routing Ollama et dashboard live.

Modifications effectuees

ai-orchestrator/app/main.py (v2.0.0 → v3.0.0)

  1. GPU_CONFIG : constantes GPU (id, nom, VRAM) pour RTX 3090 (0) et RTX 2070 Super (1)
  2. Tool.gpu_id : champ pour assigner chaque outil a un GPU
    • GPU 0 : ollama, comfyui, fooocus, wan21
    • GPU 1 : applio, bark, musicgen, sadtalker, facefusion, triposr, ollama-gpu1
  3. active_tools : dict per-GPU {0: None, 1: None} remplace active_tool
  4. GPUStatus : enrichi avec gpu_id, gpu_name
  5. get_all_gpu_status() : requete nvidia-smi multi-GPU
  6. start_tool() : conflit uniquement sur meme GPU, CUDA_VISIBLE_DEVICES wrapper, skip cmd /c pour .bat
  7. stop_tool() : cleanup per-GPU
  8. GET /api/gpu : retourne {gpus: [...], active_tools: {...}}
  9. ollama-gpu1 : 2e instance Ollama sur port 11435, GPU 1
  10. Smart routing : round-robin petits modeles (~50/50 GPU 0/1), gros modeles GPU 0 only
  11. Detection auto : si health check OK → met a jour active_tools (survit aux restarts container)

win11

mcp-claude-tools/server.py

dashboard-33800 (monitoring)

Bugs rencontres et corriges

  1. schtasks guillemets imbriques : cmd /c "set ... && exe" dans /TR "..." casse le parsing → fix: .bat dedie + skip wrapping pour .bat
  2. active_tools non mis a jour : health check OK mais start_tool jamais appele → fix: update state quand tool deja running
  3. generate.sh ecrase les modifs directes : HTML modifie directement, regen par generate.sh → fix: modifier le script generateur, pas le HTML
  4. Tous les jobs sur GPU 1 : smart routing "prefer GPU 1" envoyait 100% sur GPU 1 → fix: round-robin hash(job_id) % 2

Deploiement

Verification