Logo Lanfrica

gueye001/african-health-qa

Domaine:

natural language processinghealthcare

Type de record:

model
Créateur:
gue
Hôte:
Multilingual health Q&A for low-resource African languages. Llama 3.1 LoRA, BGE-M3 RAG, Public LB 0.620. # 🌍 African Health QA **Assistant de questions-réponses médicales multilingue pour 8 langues africaines** --- ## Le projet Une question de santé maternelle, sexuelle ou reproductive, posée dans une langue africaine peu dotée en ressources numériques (akan, amharique, luganda, swahili...), obtient une réponse fiable, dans la même langue, générée par un modèle de langage spécialisé. Ce projet a été développé dans le cadre du **challenge Zindi/ITU "Multilingual Health Question Answering in Low-Resource African Languages"** (doté de 5 000 $), où l'objectif était de répondre automatiquement à des questions de santé dans 8 combinaisons langue × pays, en s'appuyant sur un corpus d'entraînement de ~36 500 paires question-réponse. **Score final sur le leaderboard public : 0.620** — soumission actuellement en cours de revue de code par les organisateurs. ``` Score = 0.37 × ROUGE-1 F1 + 0.37 × ROUGE-L F1 + 0.26 × Jugement LLM ``` ## Pourquoi ce projet est intéressant Au-delà du score, ce projet illustre une chaîne complète de mise en production d'un modèle de langage fine-tuné, du prototypage jusqu'au déploiement public : - **Fine-tuning LoRA** d'un LLM 8B sur un corpus multilingue restreint - **Pipeline RAG** combinant un retriever multilingue (BGE-M3) et un reranker (CrossEncoder) pour ancrer les générations sur des données réelles - **Stratégie de décodage adaptative par langue** — l'échantillonnage aide certaines langues et casse complètement la génération amharique ; le pipeline final route chaque langue vers la méthode qui fonctionne réellement pour elle - **Quantification et déploiement gratuit** — modèle fusionné, converti en GGUF 4 bits, servi sur CPU via `llama.cpp` dans une démo Gradio accessible publiquement ## Architecture ``` Question │ ▼ Embedding BGE-M3 (multilingue, 1024 dim) │ ▼ Recherche FAISS (index dédié par langue) │ ▼ Reranking CrossEncoder → top-3 contextes pertinents │ ▼ Llama-3.1-8B-Instruct + LoRA (fine-tuné sur Train+Val) …