Profile picture
Mehdi Rhifar
Software Engineer
Home
Projets
Parcours
Back
★ Featured 🏱 Caisse des DĂ©pĂŽts (ICDC)

Archi+ - Chatbot IA

Technologies & tools
Python FastAPI
Angular
LLM / RAG / LangChain
Azure AI Search
MongoDB

Vue d’ensemble

Chatbot IA conversationnel multimodal pour le groupe de la Caisse des DĂ©pĂŽts, ancrĂ© dans les donnĂ©es internes de l’entreprise.

Mes Réalisations (Projet from scratch) :

  • Architecture multi-modĂšle avec orchestration intelligente (Mistral pour le conversationnel, Codestral pour le code, Flux pour la gĂ©nĂ©ration d’images)
  • Pipeline RAG avancĂ© avec chunking sĂ©mantique, RAG Fusion et agents autonomes pour traiter les documents internes complexes
  • SystĂšme d’agents ReAct (Reasoning + Acting) avec accĂšs Ă  des outils externes (recherche web, gĂ©nĂ©ration d’images)
  • Architecture scalable supportant une charge importante avec optimisations asynchrones et multi-threading

Challenges techniques

Conception et implĂ©mentation complĂšte de l’architecture backend, avec itĂ©rations successives pour rĂ©pondre aux besoins Ă©volutifs du mĂ©tier.

1. Architecture asynchrone et performance

ProblĂ©matique : La majoritĂ© du temps d’exĂ©cution est passĂ© en attente de rĂ©ponses des LLMs (latence rĂ©seau).

Architecture FastAPI fully asynchrone avec :

  • Gestion asynchrone complĂšte (asyncio) pour maximiser le throughput
  • Concurrence des requĂȘtes multiples sans blocage
  • Pipeline de streaming optimisĂ© pour une expĂ©rience utilisateur fluide
  • Multi-threading et multi-processing pour les tĂąches CPU-intensives (embedding, parsing de documents)

2. Streaming temps réel

Implémentation SSE (Server-Sent Events) plutÎt que WebSockets pour optimiser la simplicité et la performance en communication unidirectionnelle.

Résultats :

  • Affichage progressif des rĂ©ponses du LLM (token par token)
  • ExpĂ©rience utilisateur fluide sans attente de la rĂ©ponse complĂšte
  • Protocole lĂ©ger et performant adaptĂ© au cas d’usage
  • Gestion native de la reconnexion automatique

3. SystÚme RAG avancé

Ancrage du chatbot dans les donnĂ©es internes de l’entreprise (documentation technique, processus, base de connaissances).

Pipeline RAG complet :

  • DĂ©veloppement d’un systĂšme d’ingestion multi-format (PDF, DOCX, TXT) avec parsing et normalisation
  • IntĂ©gration avec Azure AI Search pour l’indexation et la recherche vectorielle
  • Orchestration de l’ensemble du pipeline : ingestion → chunking → embedding → retrieval → gĂ©nĂ©ration

Optimisations avancées :

  • Chunking sĂ©mantique - Algorithme de dĂ©coupage intelligent basĂ© sur la structure et le sens du document. PrĂ©servation du contexte et amĂ©lioration significative de la pertinence.
  • RAG Fusion - StratĂ©gie de retrieval gĂ©nĂ©rant plusieurs reformulations de la question, recherches parallĂšles et fusion des rĂ©sultats avec re-ranking. Robustesse face aux formulations imparfaites.
  • Multi-query retrieval - GĂ©nĂ©ration automatique de variations de requĂȘtes pour maximiser le rappel et couvrir diffĂ©rents angles sĂ©mantiques.
  • Agents autonomes - Architecture d’agents pour orchestrer dynamiquement les stratĂ©gies de recherche et affiner itĂ©rativement les rĂ©sultats.