celery_redis
SKILL.md
celery_redis
Celery con Redis gestiona la ejecución asíncrona de tareas pesadas del pipeline (inferencia ML, OCR, face match) fuera del event loop principal de FastAPI.
When to use
Usar para todas las tareas que requieren GPU o CPU significativo: liveness inference, OCR, face_match, deepfake detection.
Instructions
- Instalar:
pip install celery[redis] redis - Configurar:
CELERY_BROKER_URL = "redis://localhost:6379/0" - Result backend:
CELERY_RESULT_BACKEND = "redis://localhost:6379/1" - Definir colas por prioridad:
realtime,gpu,cpu,async. - Asignar cada tarea ML:
@app.task(queue='gpu'). - Arrancar workers:
celery worker -Q gpu --concurrency=2 -P solo. - Usar
chordpara pipelines donde la decisión espera todos los resultados. - Configurar
task_soft_time_limitytask_time_limit. - Activar
task_acks_late=Truepara reintento automático.
Notes
- RabbitMQ es alternativa con mejor soporte de dead-letter queues.
- Celery Flower para monitorización:
pip install flower. - Redis Sentinel para HA del broker.