Aller au contenu
Projet de développement SGBD

Consignes Examen

Projet : Fabrique ton Clone GPT thématisé

Cours : Projet de développement (SGBD) — IDV4

Tu vas reconstruire un ChatGPT-like complet, avec une vraie base de données derrière. Pas un tuto YouTube copié-collé : un projet qui tient debout côté données. 💀

1. Objectif

Développer une application ChatGPT-like complète, fonctionnelle, et dotée d'une base de données soignée. Le cœur de l'évaluation, c'est le SGBD : ton schéma, tes relations, ton intégrité, tes requêtes.

Stack imposée : Laravel + Inertia + Vue 3 (Composition API obligatoire) + TailwindCSS + shadcn-vue (starter kit Vue Inertia).

2. Fonctionnalités obligatoires (éliminatoires)

Absentes ou non fonctionnelles = ajournement direct.

  1. Sélecteur de modèles — changer de LLM facilement (Sonnet 4.5, Gemini, GPT, Grok…)
  2. Historique des conversations — sauvegarde automatique, titre généré au premier message
  3. Streaming de la réponse — tokens en temps réel (SSE ou WebSockets), pas d'un bloc
  4. Instructions personnalisées — configurer le comportement de l'IA (ton, style, contexte)
  5. Composition API — ⚠️ l'Options API est ÉLIMINATOIRE

Les tests (Pest / Dusk) ne sont pas obligatoires, mais ils rapportent des points (voir grille).

3. Thème & identité

« ChatGPT mais en Laravel » c'est cringe. 🥴 Ton clone doit cibler un public et avoir une personnalité.

Choisis un thème et construis l'expérience autour. Exemples (non exhaustif) :

Thème Public
🧠 PsyBot bien-être mental (avec disclaimers)
💪 CoachFit sport / fitness
🥗 NutriGuide nutrition
📚 StudyBuddy tutorat scolaire
👨‍💻 DevMentor pair-programming
🎮 GameMaster maître de jeu JDR
✍️ WriterMuse écriture créative

Exigences : personnalité cohérente (ton, vocabulaire, émojis adaptés), branding cohérent (couleurs, typo, icônes), instructions système pré-configurées selon le thème.

4. Fonctionnalités supplémentaires (pour viser l'excellence)

C'est ici que tu fais grimper ta note — et plusieurs de ces features font travailler ta base de données 😏 :

  • Arbre de conversations / fork — modifier un message, relancer une génération, brancher (relation auto-référente côté DB 🤌)
  • Suivi des tokens & coûts — dashboard analytique, stats d'usage, coûts estimés (tables d'analytics, agrégations)
  • Tags / dossiers de conversations (relation N-N)
  • Partage de conversations (table pivot, permissions)
  • Upload & analyse d'images (modèles vision)
  • Génération d'images via OpenRouter (modèles économiques, < 1 ct/image)
  • Mode thinking — afficher la trace de réflexion
  • Outils LLM — calculatrice, recherche web, analyse de documents
  • Recherche full-text dans l'historique
  • Voice input/output, mode sombre/clair, multilingue, export (PDF/MD/JSON)
  • Tes propres idées — surprends-moi, la créativité est récompensée

5. Livrables

  1. Code source sur GitHub (repository public, historique de commits propre)
  2. Rapport PDF (template fourni séparément)
  3. Cahier métacognitif PDF d'usage de l'IA (template fourni séparément)

Deadline : Samedi 20 juin 2026 à 23h59 — aucun retard accepté.

6. Défense orale (≈ 15 min)

  1. Questions sur le projet : schéma de la base, relations & intégrité, implémentation du streaming, choix techniques, difficultés rencontrées.
  2. 2 questions théoriques tirées au sort, par exemple :
    • Qu'est-ce qu'un ORM ? Avantages / inconvénients ?
    • Qu'est-ce que l'eager loading et pourquoi c'est important (problème N+1) ?
    • À quoi servent les migrations ? Les seeders ? Les factories ?
    • Qu'est-ce qu'une contrainte d'intégrité référentielle ? CASCADE ?
    • À quoi sert un index ? Quand en mettre (ou pas) ?
    • Qu'est-ce qu'une transaction ?
    • Différence entre WebSockets et Server-Sent Events ?
    • Qu'est-ce que la Composition API et ses avantages ?

7. Politique d'usage de l'IA

Usage Autorisé ?
IA pour la rédaction du rapport ✅ Oui
IA pour l'assistance au code : tab completion, app de chat pour poser des questions ✅ Oui
Agents de programmation (qui réalisent le projet à ta place) Non
Documentation officielle (référencée dans le cours) + Google ✅ Oui, à l'ancienne 😎

Tu dois joindre un cahier métacognitif décrivant ton usage de l'IA (template fourni).

8. Évaluation

L'évaluation suit une grille détaillée fournie séparément : 3 Acquis d'Apprentissage à valider (seuil de réussite) + 6 critères de maîtrise. L'accent est mis sur la base de données et sur les fonctionnalités supplémentaires.

9. Template Rapport


Rappel : montre que tu maîtrises les concepts, pas juste que tu sais copier-coller. La qualité de ta base de données fera la différence. Bonne chance ! 🤖🚀

Énoncé rédigé avec l'aide de Claude Opus 4.8.