petites erreurs

This commit is contained in:
nicoboy
2026-01-04 10:43:37 +01:00
parent 017cb697ba
commit 8c74a843b2
2 changed files with 26 additions and 45 deletions

View File

@ -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;

View File

@ -271,41 +271,9 @@ async loadHelpRemaining() {
// NOUVELLE MÉTHODE : Formater le texte avec support maths
formatMathText(texte) {
// Convertir les retours à la ligne en <br>
let html = texte.replace(/\n/g, '<br>');
// 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 <br>
// Le reste (LaTeX) est géré par KaTeX
return texte.replace(/\n/g, '<br>');
}
afficherTypingIndicator() {