| ## 🔁 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 | |