Recent Changes - Search:

Navigation

Plugins

Architecture

Infrastructure

Exploitation

Projet

Architecture globale

Architecture du système

Schéma général

Utilisateur (navigateur)
    |
    v
Tailscale VPN
    |
    v
Serveur Moodle (Debian 13)
|-- Caddy SSL (:443, :8081, :8443)
|-- moodle-master (:8091 local) -- Production
|   |-- AI Grader
|   |-- QCM Generator
|   |-- Tutor IA
|   |-- Bot Quiz
|   +-- Plugin Installer
|-- moodle-younes (:8082) -- Dev
|-- moodle-test (:8083) -- Sandbox
|-- moodle-lucas (:8084) -- Tests Tutor AI
|-- ai-proxy (:9200 -> PGX:8200)
+-- pmwiki (:8085) -- Ce wiki
    |
    v (via Tailscale)
    |
DGX Spark / PGX
|-- vLLM (:8101 localhost)
|-- moodle-proxy socat (:8200 -> :8101)
|-- LiteLLM (:4000)
|-- Open WebUI (:3000)
|-- SearXNG (:8080)
+-- Qdrant

Flux d'une correction IA

  1. L'enseignant lance la correction depuis Moodle (AI Grader)
  2. Le plugin envoie la soumission à l'endpoint IA configuré
  3. La requête passe par ai-proxy (container Docker sur le serveur Moodle)
  4. ai-proxy forward vers le PGX via Tailscale (port 8200)
  5. Sur le PGX, socat forward vers vLLM (port 8101)
  6. vLLM génère la réponse avec le modèle chargé
  7. La réponse remonte la chaîne jusqu'à Moodle
  8. Le plugin traite la réponse et stocke le feedback en base

Flux d'une génération QCM

  1. L'enseignant sélectionne les ressources du cours
  2. Le plugin extrait le contenu (texte, PDF via pdftotext)
  3. Le contenu est découpé en chunks de 6K caractères
  4. Chaque chunk est envoyé à l'API IA avec le prompt anti-hallucination
  5. Les questions générées sont parsées et stockées en base
  6. L'enseignant peut les revoir et les importer dans Moodle

Flux du chat Tutor IA

  1. L'étudiant ouvre le chat depuis un cours
  2. Le plugin extrait le contexte du cours
  3. La question est envoyée en streaming (SSE) à l'API IA
  4. Les tokens sont affichés en temps réel dans le chat
  5. Les tags de réflexion interne sont filtrés
  6. La conversation est enregistrée en base pour le dashboard
Edit - History - Print - Recent Changes - Search
Page last modified on 26/05/2026 08:35