# BabyChat - Assistant Virtuel Prénatal (Bénin) 👶🏾
**Projet Académique : GETECH / ESM-Bénin**
**Auteurs :** HOUNKPE Narcisse & FADEGNON Marjus
BabyChat est un assistant virtuel WhatsApp basé sur l'Intelligence Artificielle Locale (Llama 3, Whisper, Piper) conçu pour suivre les femmes enceintes au Bénin, prodiguer des conseils nutritionnels locaux et déclencher des alertes d'urgence médicale selon les recommandations du SAGO 2018.
## 🚀 Architecture Modulaire
Le projet est conçu pour une souveraineté numérique totale :
- **Aucune donnée médicale ne part chez OpenAI ou Google.**
- **Les modèles d'IA tournent 100% en local.**
- **PostgreSQL + PostGIS** pour le stockage et la géolocalisation.
- **Redis** pour la gestion de contexte ultra-rapide.
## 📋 Prérequis
- **Docker** et **Docker Compose**
- Serveur avec au moins **16 Go de RAM** (Recommandé pour Llama 3)
- Au moins **20 Go d'espace disque** (Modèles IA)
- Un compte développeur Meta (WhatsApp Business API)
## 🛠️ Installation et Déploiement
### 1. Préparation des modèles IA
Téléchargez les modèles localement dans le dossier `ai_models/` :
- `whisper/ggml-medium.bin` (Modèle Whisper.cpp)
- `piper/fr_FR-upmc-medium.onnx` (Modèle Piper TTS)
- Assurez-vous qu'Ollama est installé et que le modèle `llama3` est téléchargé.
### 2. Configuration
Copiez le fichier `.env.example` en `.env` et remplissez vos vraies clés (WhatsApp, Base de données).
```bash
cp .env.example .env
```
### 3. Lancement via Docker Compose
Pour un environnement de production complet (Backend, Postgres, Redis, Nginx) :
```bash
docker-compose up -d --build
```
Pour initialiser la base de données :
```bash
docker-compose exec backend bash scripts/init_db.sh
```
Pour charger les centres de santé béninois d'exemple :
```bash
docker-compose exec backend python scripts/load_centres_sante.py
```
## 🧠 Fonctionnalités Principales
1. **Inscription intuitive** (Nom, DDR, Sage-Femme, Proche)
2. **Suivi Hebdomadaire Automatisé** (Questionnaire intera …