Chatbot pour le tourisme au Burkina Faso
# 🇧🇫 Burkina Tourisme Chatbot - Assistant IA Contextuel
## 1. Sujet Choisi et Justification
**Sujet**: Tourisme au Burkina Faso.
**Justification**: Le tourisme est un domaine clé pour le développement économique et culturel du Burkina Faso. Un assistant IA spécialisé peut aider à promouvoir le patrimoine national, faciliter l'accès à l'information pour les visiteurs et les citoyens, et répondre aux exigences du challenge en utilisant un sujet burkinabè documentable.
## 2. Architecture Technique
Le projet est basé sur une architecture **Full-Stack Open Source** intégrant un système de **Génération Augmentée par Récupération (RAG)** pour fournir des réponses précises et sourcées.
| Composant | Technologie | RĂ´le | Open Source |
| :--- | :--- | :--- | :--- |
| **Frontend** (PWA) | HTML5, CSS3, JavaScript (Vanilla) | Interface utilisateur du Chatbot, fonctionnalités PWA (offline, installation) | Oui |
| **Backend** (API) | FastAPI (Python) | API RESTful pour la communication avec le Frontend et le système RAG | Oui |
| **Embeddings** | `sentence-transformers` | Conversion du texte en vecteurs numériques (multilingue) | Oui |
| **Base de Données Vectorielle** | ChromaDB | Stockage et recherche par similarité des vecteurs de documents | Oui |
| **Grand Modèle de Langage (LLM)** | `transformers` (GPT-2 pour démo) | Génération de la réponse finale basée sur le contexte récupéré | Oui |
| **Dépendances** | `uvicorn`, `pydantic`, `python-dotenv` | Serveur ASGI, validation de données, gestion des variables d'environnement | Oui |
### Pipeline RAG
1. **Question de l'utilisateur** (Frontend)
2. **RequĂŞte API** (`/api/chat`) vers le Backend (FastAPI)
3. **Embedding de la question** (`sentence-transformers`)
4. **Recherche vectorielle** (ChromaDB) pour récupérer les documents pertinents (Top-K)
5. **Construction du Prompt** avec la question et les documents de contexte
6. **Génération de la Réponse** (LLM via `transformers`)
7. **Réponse API** (Backend) vers le Frontend av …