AXIS — Apprentissage IA

React.js Python / FastAPI Gemini Flash Lite (IA) Docker & Railway Asynchronous Tasks SQL Databases
Démonstration en ligne ↗
Identifiant: user-00
Mot de passe: Azerty11

Présentation du Projet

AXIS est une plateforme web d'apprentissage personnalisé à la demande, propulsée par l'intelligence artificielle. Son principe est simple : l'utilisateur soumet un sujet de formation, et le système produit de manière entièrement automatique un parcours structuré en chapitres et pages, rédigé en Markdown.

Le projet est aujourd'hui déployé sous forme de MVP fonctionnel (produit minimum viable). L'ensemble des flux d'authentification, de génération asynchrone, de stockage SQL et de lecture de cours sont opérationnels.

Personnalisation à la demande

Chaque utilisateur peut décrire librement son profil dans ses paramètres (style d'apprentissage, niveau technique, objectifs professionnels, etc.).

Lors du processus de génération d'un cours, ce profil utilisateur est injecté dynamiquement dans les invites (prompts) du modèle de langage. Ainsi, AXIS adapte naturellement le ton, la complexité, les exercices et les cas pratiques aux besoins uniques de l'étudiant, sans rigidité structurelle.

Stack Technique & Choix Technologiques

Composant Technologie Rôle dans le projet
Frontend React.js Gestion de l'interface utilisateur, lecteur de cours et rendu des modules de contenu rédigés en Markdown.
Backend Python / FastAPI Hébergement de l'API REST, orchestration asynchrone du pipeline de génération et gestion des sessions.
Base de données SQL (Relationnel) Stockage persistant des utilisateurs, profils, structures de cours et métadonnées de formation.
Modèle d'IA Gemini Flash Lite Génération à la volée de la structure logique des cours et du contenu textuel des pages.
Déploiement Railway + Docker Hébergement conteneurisé de l'application avec pipeline de déploiement continu.

Pipeline de Génération Asynchrone

La génération complète d'un cours étant gourmande en temps de traitement (des dizaines d'appels API nécessaires), le backend FastAPI utilise un pipeline de génération en cascade asynchrone et concurrent :

  • Étape 1 (Structure globale) : Le sujet soumis est analysé par Gemini pour lister les chapitres de la formation.
  • Étape 2 (Structure détaillée) : Pour chaque chapitre, le système génère en parallèle les sous-titres et pages associés.
  • Étape 3 (Rédaction) : Les requêtes de rédaction de pages (Markdown riche) sont lancées de manière concurrente.

L'utilisation des mécanismes asynchrones de FastAPI permet de lancer simultanément l'ensemble des appels API plutôt que de les exécuter un par un. Ce choix d'architecture réseau réduit drastiquement le temps d'attente utilisateur pour obtenir sa formation finale.

Orchestration du pipeline de génération

Navigateur Client
Sujet de formation
Requête HTTPS
FastAPI Backend
Tâches asynchrones
Requêtes concurrentes
API Gemini Flash Lite
Générateur textuel

Choix du Modèle (Gemini Flash Lite)

L'utilisation de Gemini Flash Lite s'explique par sa faible latence et son coût par token particulièrement compétitif. La génération d'une formation longue nécessitant plusieurs dizaines d'appels API concurrents, l'usage de modèles plus lourds aurait rendu le projet financièrement prohibitif et trop lent en temps d'exécution.

Compétences du Référentiel BTS SIO

Compétence Mise en œuvre concrète dans AXIS
B1.3 – Accès aux ressources et services Modélisation SQL pour la persistance des formations utilisateurs, et implémentation du pipeline de routage avec FastAPI.
B3.4 – Déploiement et mise en production Conteneurisation de la stack complète (Frontend React, API Backend) avec Docker et automatisation des builds via un déploiement continu sur Railway.
B2.3 – Sécurisation des accès Analyse et durcissement prévu du système d'authentification par cookie/session et filtrage des requêtes utilisateur avant traitement par le modèle d'IA.

État du Projet & Perspectives

L'outil est pleinement opérationnel dans sa version MVP. Les perspectives à court terme concernent principalement la sécurisation globale de l'API avant une ouverture à plus large échelle (contrôle des taux de requêtes, filtrage robuste des prompts pour éviter l'injection de prompts malveillants, validation stricte des schémas de données SQL et durcissement des politiques CORS).