healthai-ai — Vue d'ensemble
Mono-repo des micro-services IA de la plateforme HealthAI.
- Repo : HealthAI-Corpo/healthai-ai
Services
| Service | Image | Port | Rôle |
|---|---|---|---|
| healthai-ai-api | ghcr.io/healthai-corpo/healthai-ai-api | 8000 | Gateway GraphQL — point d'entrée unique |
| healthai-vision | ghcr.io/healthai-corpo/healthai-vision | 8001 | Analyse nutritionnelle par photo (YOLO) |
| healthai-workout | ghcr.io/healthai-corpo/healthai-workout | 8002 | Recommandation sportive (Scikit-learn) |
Stack commune
- Python 3.12 via uv
- FastAPI + uvicorn
- Communication inter-services : HTTPX async
- Auth : Zitadel JWT géré par la gateway
Lancement rapide
bash
# Copier les .env
cp healthai-vision/.env.example healthai-vision/.env
cp healthai-workout/.env.example healthai-workout/.env
cp healthai-api/.env.example healthai-api/.env
# Éditer les .env avec les valeurs locales
# Lancer tous les services
docker compose up -dPremier build
Le premier build de healthai-vision est long (~10-15 min) à cause des dépendances ML (Torch, Ultralytics).
URLs une fois démarrés
| Service | URL |
|---|---|
| Gateway (docs) | http://localhost:8000/docs |
| Vision (docs) | http://localhost:8001/docs |
| Workout (docs) | http://localhost:8002/docs |
Healthcheck global
bash
curl http://localhost:8000/test-internalRéponse attendue :
json
{
"gateway": "OK",
"vision_service": { "status": "online" },
"workout_service": { "status": "online" }
}