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.
- Sélecteur de modèles — changer de LLM facilement (Sonnet 4.5, Gemini, GPT, Grok…)
- Historique des conversations — sauvegarde automatique, titre généré au premier message
- Streaming de la réponse — tokens en temps réel (SSE ou WebSockets), pas d'un bloc
- Instructions personnalisées — configurer le comportement de l'IA (ton, style, contexte)
- 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
- Code source sur GitHub (repository public, historique de commits propre)
- Rapport PDF (template fourni séparément)
- 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)
- Questions sur le projet : schéma de la base, relations & intégrité, implémentation du streaming, choix techniques, difficultés rencontrées.
- 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.
