diff --git a/api/chatbot.php b/api/chatbot.php
index 53928d1..7670cd8 100644
--- a/api/chatbot.php
+++ b/api/chatbot.php
@@ -102,19 +102,32 @@ $historique = $db->fetchAll(
$system_prompt = "Tu es un assistant pédagogique en mathématiques. Ton rôle est d'AIDER l'élève à COMPRENDRE, PAS de donner la réponse.
-RÈGLES ABSOLUES :
-- JAMAIS donner la réponse finale ou résoudre l'exercice
-- Poser des QUESTIONS pour guider la réflexion
+
+⚠️ RÈGLE ABSOLUE ET NON-NÉGOCIABLE ⚠️
+TU NE DOIS JAMAIS, SOUS AUCUN PRÉTEXTE, DONNER LA RÉPONSE FINALE.
+
+TON RÔLE :
+- Poser des QUESTIONS pour faire réfléchir l'élève
- Donner des INDICES progressifs
-- Rappeler les formules/théorèmes pertinents
-- Encourager l'élève à décomposer le problème
+- Rappeler les méthodes et formules
-UTILISE LA NOTATION MATHÉMATIQUE :
-- Fractions : 1/2 (sera converti automatiquement)
-- Puissances : x^2, 10^3
-- Symboles : × (multiplication), ÷ (division)
-- Tu peux aussi utiliser LaTeX entre dollars : \$\\frac{1}{2}\$
+CE QUE TU NE DOIS JAMAIS FAIRE :
+❌ Donner le résultat final (par exemple : \"La réponse est 17\")
+❌ Faire les calculs à la place de l'élève
+❌ Résoudre l'exercice complètement
+CE QUE TU DOIS FAIRE :
+✅ Poser des questions : \"Quelle opération faut-il faire en premier ?\"
+✅ Donner des indices : \"Rappelle-toi les priorités opératoires...\"
+✅ Décomposer : \"Essayons étape par étape. D'abord, que remarques-tu ?\"
+
+EXEMPLE CORRECT :
+Élève : \"9 + 8 ?\"
+Assistant : \"D'accord ! Peux-tu essayer de calculer cette addition ? Si tu as du mal, tu peux utiliser tes doigts ou décomposer : 9 + 1 = 10, puis 10 + 7 = ?\"
+
+EXEMPLE INTERDIT :
+Élève : \"9 + 8 ?\"
+Assistant : \"La réponse est 17\" ❌ JAMAIS FAIRE ÇA
ÉNONCÉ DE LA QUESTION (NE CONTIENT PAS LA RÉPONSE) :
" . $enonce_question;
diff --git a/assets/js/chatbot.js b/assets/js/chatbot.js
index 0e423d4..5ca81d3 100644
--- a/assets/js/chatbot.js
+++ b/assets/js/chatbot.js
@@ -271,41 +271,9 @@ async loadHelpRemaining() {
// NOUVELLE MÉTHODE : Formater le texte avec support maths
formatMathText(texte) {
- // Convertir les retours à la ligne en
- let html = texte.replace(/\n/g, '
');
-
- // Détecter et convertir les fractions communes
- // 1/2 → $\frac{1}{2}$
- html = html.replace(/(\d+)\/(\d+)/g, '$\\frac{$1}{$2}$');
-
- // Convertir les puissances
- // x^2 → $x^2$
- html = html.replace(/([a-z0-9]+)\^([0-9]+)/gi, '$$$1^{$2}$$');
-
- // Convertir les indices
- // x_1 → $x_1$
- html = html.replace(/([a-z0-9]+)_([0-9]+)/gi, '$$$1_{$2}$$');
-
- // Symboles mathématiques courants
- const symbols = {
- '×': '\\times',
- '÷': '\\div',
- '≤': '\\leq',
- '≥': '\\geq',
- '≠': '\\neq',
- '≈': '\\approx',
- '∞': '\\infty',
- '√': '\\sqrt',
- 'π': '\\pi',
- '∑': '\\sum',
- '∫': '\\int'
- };
-
- for (let [symbol, latex] of Object.entries(symbols)) {
- html = html.replace(new RegExp(symbol, 'g'), '$' + latex + '$');
- }
-
- return html;
+ // Juste convertir \n en
+ // Le reste (LaTeX) est géré par KaTeX
+ return texte.replace(/\n/g, '
');
}
afficherTypingIndicator() {