STAGE / README.md
mohamedGOUALI's picture
Update README.md
615b306 verified
## 🔁 PROJET EN COURS DE DEVELOPPEMENT
Ce pipeline permet de traiter automatiquement les interactions des clients d’un centre d’appel en **Darija**, que ce soit en **texte (lettres latines)** ou en **audio (voix parlée)**. Il combine des modèles de reconnaissance vocale, de traduction, de classification, de génération intelligente de réponse, et de recherche d'information.
---
### 1. **Entrée utilisateur**
- Le client peut envoyer :
- Un **message texte** en Darija (lettres latines)
- Un **message vocal** en Darija parlé
---
### 2. **Transcription audio (le cas échéant)**
- Si le message est un **audio**, il est transcrit automatiquement en texte Darija grâce au modèle :
- **`asr-wav2vec2-dvoice-darija`**
- Architecture : `wav2vec 2.0 + CTC/Attention`
- Performance :
- **WER (Word Error Rate)** : 18.28% (paaaas maaaal)
- **CER (Character Error Rate)** : 5.85%(granularité mzyana des caracteres)
---
### 3. **Traduction Darija → Anglais**
- Le texte en Darija (issu d’un audio ou d’un message texte) est **traduit en anglais** via :
- **`lachkarsalim/LatinDarija_English-v2`**
---
### 4. **Classification du besoin client (Zero-Shot)== je peux laisser tomber cette partie**
- Le texte traduit en anglais est classifié selon une liste de catégories métiers :
- Exemples de catégories :
- Billing Problem
- Technical Support
- Refund Request
- Subscription Cancellation
- Modèle utilisé : **`typeform/distilbert-base-uncased-mnli` or better**
- Type : zero-shot classification → pas besoin d’entraîner le modèle sur nos propres données
---
### 5. **Recherche d'information (RAG – Retrieval-Augmented Generation)**
- En fonction du label prédit, le système effectue une **recherche d'information intelligente** dans :
- une **base documentaire FAQ**
- des **guides internes**
- ou des **scripts de support technique**
- Le contenu extrait sert à **nourrir** le modèle génératif dans l’étape suivante
- Faut chercher comment collecter ses bases données/ synthéthique
---
### 6. **Génération de la réponse intelligente**
- La réponse est **générée de façon contextualisée** par un LLM (type GPT ……) :
- Comprend la situation client
- Pose éventuellement des **questions supplémentaires**
- Donne des **instructions précises** (ex : réinitialiser le modem, vérifier la box…)
- Avantage : la réponse est **adaptée et non mécanique**
---
### 7. **Traduction de la réponse (Anglais → Darija)**
- La réponse finale est **traduite en Darija lettres latines** pour que le client la comprenne facilement.
- Ou bien la réponse aura un fallback en francais ou en arabe normale
---
### 8. **Sortie finale**
- Le client reçoit une réponse :
- claire
- personnalisée
- dans sa **langue et alphabet**
---
### 🔧 Technologies utilisées
| Étape | Modèle / Composant |
| --- | --- |
| ASR Darija | `asr-wav2vec2-dvoice-darija` |
| Traduction | `lachkarsalim/LatinDarija_English-v2` |
| Classification | `typeform/distilbert-base-uncased-mnli` |
| RAG | Base documentaire + vecteurs |
| Génération | GPT-like LLM |
| Déploiement | FastAPI + Docker/Hugging Face Spaces |