SPB Git forge

spb/immbot-ai

Public
1commits 1branches 0releases
1.5 MBsize
maindefault branch
19 days agolast push
TypeScript 98.3% CSS 0.9% Shell 0.7%
3.6 KB

⚠️ URL live hors fonction pour le moment. L'application a été retirée du cluster MacLustr le 2026-09-04 (processus arrêtés, copie du nœud supprimée). Ce dépôt spbgit est désormais la seule source de vérité du projet. Ancienne URL : https://www.immbot.ai

# Immbot AI

Environnement d'apprentissage intelligent pour les cours IMM1003 et IMM1033 (évaluation immobilière, UQO).

Immbot AI combine un assistant conversationnel multimodal fondé sur le matériel officiel des cours (RAG avec citations vérifiables par diapositive), un centre d'apprentissage complet (flashcards à répétition espacée, quiz adaptatifs, examens blancs, carte des concepts, plans d'étude, cahier d'erreurs) et un tableau de bord professeur — propulsé par tous les modèles OpenRouter.

# Démarrage rapide

bash
cd immbot-ai
./scripts/setup.sh      # dépendances + .env + seed + ingestion des cours
./scripts/dev.sh        # http://localhost:3070

Connexion initiale : admin / admin123 — le changement de mot de passe est forcé à la première connexion (le mot de passe initial n'est jamais accepté comme permanent).

Renseignez OPENROUTER_API_KEY dans .env pour activer le chat (le RAG, les flashcards seed, les quiz et les examens blancs fonctionnent sans clé).

# Points clés

  • Source de vérité : les fichiers LaTeX des cours (1 691 diapositives, plans, ateliers, glossaire) sont parsés à la source → citations exactes [IMM1003 — Séance 4 — Diapositive 18], cliquables, validées côté serveur (aucune citation inventée ne survit).
  • Trois modes de connaissances : Cours uniquement (défaut, refus honnête si le matériel ne suffit pas) · Cours + général (sections séparées) · Général (signalé).
  • Dix modes pédagogiques : demander au cours, tuteur, socratique, explique simplement, niveau professionnel, corrige ma réponse, préparation d'examen, défi, analyse multimodale, révision ciblée.
  • Isolation stricte : espaces official-imm1003 / official-imm1033 / téléversements étudiants / instructor-private (examens et analyses, invisibles aux étudiants). Vérifiée par l'évaluation RAG.
  • Embeddings locaux (multilingual-e5-small) : gratuits, privés, hors-ligne ; recherche hybride BM25 + vectoriel + fusion RRF. Rappel mesuré : 24/24 sur les jeux de validation.
  • Coûts maîtrisés : registre dynamique des modèles avec paliers, budgets quotidiens/mensuels par étudiant et global, appliqués côté serveur.

# Structure

Voir docs/technical-architecture.md. Documentation complète dans docs/ : setup · deployment · admin-guide · student-guide · openrouter · rag-architecture · ingestion · security (+ security-model) · data-model · api · testing · troubleshooting.

# Commandes

Commande Effet
pnpm dev / pnpm build / pnpm start Développement / build / production (port 3070)
pnpm seed Amorçage (admin, cours, prompts, contenu pédagogique) — idempotent
pnpm ingest / pnpm reindex Ingestion incrémentale / complète du matériel de cours
pnpm test Tests unitaires (vitest)
pnpm evaluate Évaluation RAG (rappel, refus, isolation) → evaluation/rag-evaluation.md
./scripts/verify.sh Types + tests + évaluation RAG
./scripts/backup.sh Sauvegarde datée de la base

# Avertissement pédagogique

Immbot AI aide à apprendre. La politique d'intégrité académique (configurable par le professeur) privilégie les indices et la démarche pour les travaux notés, et la plateforme ne prétend jamais prédire le contenu des examens réels.