# Éditeur de Texte Augmenté par l'IA pour le Malagasy
> Projet de Machine Learning — ISPM M2 S1
> Thème : Traitement d'une langue à faibles ressources (*Low Resource Language*)
---
## Membres du groupe & Rôles
| Membre | Rôle |
|--------|------|
| [RANDRIANAIVO Tolotra Lalaina Fabrice ] | Architecture backend, API FastAPI, modules NLP (spell checker, lemmatiseur) |
| [ANDRIAMANRONIRINA Harifitia Nicole] | Frontend React/Vite, design UX, intégration des composants |
| [ANDRIANARISOA Ny Anjara Jemima] | Corpus & données malagasy, scraping, modules sentiment et NER |
---
## Lancement de l'application
### Prérequis
- Python 3.10+
- Node.js 18+
- Une clé API Anthropic (pour le chatbot)
### Backend
```bash
cd backend
pip install -r requirements.txt
# Créer le fichier d'environnement
echo "ANTHROPIC_API_KEY=sk-ant-votre-clé-ici" > .env
# Lancer le serveur (port 8080)
uvicorn main:app --reload --port 8080
```
### Frontend
```bash
cd frontend
npm install
npm run dev
```
L'application est accessible sur **
http://localhost:5173**
---
## Fonctionnalités IA
### 1. Correcteur Orthographique
**Technologie :** Distance de Levenshtein via `rapidfuzz`
**Approche :** Comparaison de chaque mot du texte avec le dictionnaire de 600+ mots malagasy. La fonction `process.extract` de rapidfuzz calcule un score de similarité et retourne les 5 meilleures suggestions si le score dépasse 50%.
**Endpoint :** `POST /spell/check`
---
### 2. Validation Phonotactique
**Technologie :** Automates / REGEX
**Approche :** Détection des combinaisons de lettres structurellement impossibles en malagasy par expressions régulières. Patterns vérifiés : `nb`, `mk`, `nk` (en début de mot), `dt`, `bp`, `sz`. Ces suites consonantiques violent la phonologie malagasy.
**Endpoint :** intégré dans `POST /spell/check` (type `phonotactic`)
---
### 3. Lemmatiseur (Fandrasan-teny)
**Technologie :** Règles morphologiques symboliques
**Approche :** Décomposition des mots en **préfixe + racine + suff …