Date : 24/01/2026 Status : IMPLEMENTEE Objectif : Permettre de mettre en pause le traitement des jobs IA pour libérer le GPU (jouer à un jeu)
Le worker tourne en boucle continue (job_worker() ligne 2626) et traite les jobs dès qu'ils sont disponibles. L'utilisateur veut pouvoir :
WORKER_PAUSED_KEY = "ai:worker:paused" # "true" ou absent
| Endpoint | Méthode | Description |
|---|---|---|
/api/worker/pause |
POST | Met en pause le worker (optionnel: stop_tools=true) |
/api/worker/resume |
POST | Reprend le traitement |
/api/worker/status |
GET | Retourne l'état (running/paused) |
Exemple pause :
curl -X POST "https://ai-orchestrator.33800.nowhere84.com/api/worker/pause?stop_tools=true"
Exemple resume :
curl -X POST "https://ai-orchestrator.33800.nowhere84.com/api/worker/resume"
async def job_worker():
while True:
# Vérifier si en pause
is_paused = await redis_client.get(WORKER_PAUSED_KEY)
if is_paused == "true":
await asyncio.sleep(5) # Check toutes les 5s si on peut reprendre
continue
# ... reste du code existant ...
Quand on pause :
stop_tools=true : arrête tous les outils pour libérer VRAMQuand on resume :
Ajouter un bouton Pause/Resume sur la page ai-jobs.html :
| Fichier | Modification |
|---|---|
ai-orchestrator/app/main.py |
Ajouter endpoints + modifier worker loop |
monitoring/generate.d/20-ai-jobs.sh |
Ajouter bouton pause/resume (optionnel) |
Attente validation avant implémentation.