Data Science2025
DoctorPy
PoC d'assistant IA pédagogique ayant servi de base à Space Coders Agency. Architecture microservices, cache intelligent et recherche sémantique.
PythonStreamlitFastAPIRAGMistral AIRedisMicroservicesEdTechNLP
Concept & Genèse
DoctorPy est un assistant IA conçu pour accompagner l'apprentissage de Python de manière personnalisée. Développé comme Proof of Concept lors d'un atelier avec apprenants et formateurs de la Wild Code School, il a servi de base expérimentale avant le lancement de Space Coders Agency.
Problématiques adressées :
• Les débutants ont besoin de réponses adaptées à leur niveau
• Les questions récurrentes surchargent les formateurs
• L'absence de feedback instantané freine la progression
• Les ressources génériques ne s'adaptent pas au contexte de l'apprenant
Approche pédagogique :
• Réponses adaptatives selon le niveau (débutant, intermédiaire, avancé)
• Exemples de code contextualisés et commentés
• Sources citées pour approfondir (documentation officielle, bonnes pratiques)
• Interface intuitive inspirée des chatbots modernes
Ce PoC a validé l'intérêt de l'IA pédagogique auprès des utilisateurs finaux et a orienté l'architecture de Space Coders Agency.
3
Niveaux
<1ms
Latence cache
85%+
Confiance
Atelier WCS
Contexte

Dashboard : état du système, guide de démarrage et exemples de questions par niveau
Architecture Microservices
Architecture moderne basée sur des microservices indépendants, chacun spécialisé dans une fonction précise.
Services principaux :
• Service RAG (port 8002) — Cœur du système : génération de réponses enrichies par la base de connaissances
• Analytics (port 8003) — Suivi des métriques d'utilisation et de performance
• Quêtes IA (port 8004) — Système de gamification pour l'apprentissage ludique
• Notifications (port 8006) — Rappels personnalisés et motivation
Cache Intelligent Multi-niveaux :
• L1 (Mémoire) — Cache ultra-rapide RAM (<1ms), 1000 entrées max
• L2 (Redis) — Cache distribué pour scalabilité horizontale
• L3 (Disque) — Cache persistant SQLite (500MB max)
• Stratégies adaptatives : LRU, LFU, TTL, SMART selon le type de données
Moteur de Recherche Sémantique :
• Reconnaissance d'intention (8 types : learn, how_to, debug, explain, compare, example, best_practice, general)
• Auto-complétion intelligente avec scoring de pertinence
• Extraction d'entités Python (variables, fonctions, boucles, classes)
• Détection de complexité automatique
4
Microservices
3
Niveaux cache
90%+
Hit rate
8 types
Intentions

1 / 2
Dashboard cache : statistiques temps réel, taux de hit, actions de maintenance
Réponses Pédagogiques
Le cœur de DoctorPy : des réponses structurées et adaptées au niveau de l'apprenant.
Format de réponse standardisé :
• Titre explicite du concept abordé
• Explication accessible avec analogies (ex: "une variable est comme une boîte étiquetée")
• Blocs de code syntaxiquement colorés avec commentaires
• Règles importantes et pièges à éviter
• Exemples pratiques progressifs
• Sources consultables pour approfondir
Adaptation au niveau :
• Débutant — Explications simples, pas de jargon, exemples basiques
• Intermédiaire — Concepts moyens, quelques termes techniques
• Avancé — Concepts complexes, patterns, optimisations
Concepts couverts :
• Variables, types de données, opérateurs
• Structures de contrôle (if, for, while)
• Fonctions et paramètres
• Listes, dictionnaires, tuples
• Gestion des erreurs (try/except)
• Programmation orientée objet
20+
Concepts
Progressifs
Exemples
Citées
Sources
Coloré
Code

1 / 3
Explication des variables : définition, syntaxe, règles de nommage, exemples
Interface Streamlit
Interface utilisateur moderne développée avec Streamlit, optimisée pour l'expérience d'apprentissage.
Navigation par onglets :
• Accueil — État du système, guide de démarrage, exemples de questions
• Poser une question — Interface de chat avec configuration du niveau
• Gestion du cache — Statistiques, optimisation, maintenance
• Recherche — Exploration de la base de connaissances
Fonctionnalités UX :
• Questions fréquentes cliquables pour démarrer rapidement
• Sélecteur de niveau intégré (débutant/intermédiaire/avancé)
• Indicateurs de confiance et de source sur chaque réponse
• Métadonnées de réponse (cache hit, temps de traitement)
• Thème sombre professionnel
Monitoring intégré :
• État des services en temps réel
• Statistiques de cache (hit rate, évictions)
• Actions de maintenance en un clic
Streamlit
Framework
4
Onglets
Dark
Thème
Intégré
Monitoring

1 / 2
Formulaire de question avec sélection du niveau et suggestions fréquentes