ArrowCrisis commited on
Commit
f242870
·
verified ·
1 Parent(s): bf3df8b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -7
app.py CHANGED
@@ -2,6 +2,7 @@ from flask import Flask, request, jsonify
2
  from flask_cors import CORS
3
  import requests
4
  import os
 
5
 
6
  app = Flask(__name__)
7
  CORS(app)
@@ -14,7 +15,7 @@ ALBERT_URL = "https://albert.api.etalab.gouv.fr/v1/chat/completions"
14
 
15
  @app.route('/')
16
  def home():
17
- return "Serveur Albert Proxy en ligne (Racines Carrées) !"
18
 
19
  @app.route('/verify', methods=['POST'])
20
  def verify_math():
@@ -28,7 +29,7 @@ def verify_math():
28
  return jsonify({"error": "Clé API ALBERT_KEY manquante dans les Settings"}), 500
29
 
30
  # 2. Préparation du prompt (Consignes strictes de formatage et de validation)
31
- # Adapté pour l'exercice de Simplification de Racines Carrées
32
  system_prompt = (
33
  "Tu es un professeur de mathématiques expert. "
34
  "Ton rôle est de vérifier la simplification d'une expression irrationnelle (type (a√b - √c)²). "
@@ -38,11 +39,12 @@ def verify_math():
38
  " - Refuse systématiquement (isCorrect: false) si l'expression contient des parenthèses ou des calculs non effectués (ex: (2\\sqrt{3})^2, 4*3)."
39
  " - Refuse si la racine n'est pas réduite au maximum (ex: \\sqrt{12} au lieu de 2\\sqrt{3})."
40
  "RÈGLES DE RÉPONSE :"
41
- "1. Réponds UNIQUEMENT au format JSON : {\"isCorrect\": boolean, \"feedback\": \"string\"}."
42
- "2. LOGIQUE DU FEEDBACK (Pour le tri par l'interface) :"
43
- " - Cas 1 (Juste et simplifié) -> isCorrect: true, feedback: 'Bravo'."
44
- " - Cas 2 (Mathématiquement juste MAIS forme non simplifiée/attendue) -> isCorrect: false, feedback: 'La réponse est juste mathématiquement mais la forme n'est pas celle demandée (simplification)'."
45
- " - Cas 3 (Faux) -> isCorrect: false, feedback: 'C'est faux'."
 
46
  )
47
 
48
  user_prompt = f"Expression attendue (forme simplifiée) : {expected_latex}. Réponse de l'élève : {user_latex}."
 
2
  from flask_cors import CORS
3
  import requests
4
  import os
5
+ import re
6
 
7
  app = Flask(__name__)
8
  CORS(app)
 
15
 
16
  @app.route('/')
17
  def home():
18
+ return "Serveur Albert Proxy en ligne (Racines Carrées v2) !"
19
 
20
  @app.route('/verify', methods=['POST'])
21
  def verify_math():
 
29
  return jsonify({"error": "Clé API ALBERT_KEY manquante dans les Settings"}), 500
30
 
31
  # 2. Préparation du prompt (Consignes strictes de formatage et de validation)
32
+ # CORRECTION : Utilisation explicite de \" pour les guillemets doubles dans les exemples JSON
33
  system_prompt = (
34
  "Tu es un professeur de mathématiques expert. "
35
  "Ton rôle est de vérifier la simplification d'une expression irrationnelle (type (a√b - √c)²). "
 
39
  " - Refuse systématiquement (isCorrect: false) si l'expression contient des parenthèses ou des calculs non effectués (ex: (2\\sqrt{3})^2, 4*3)."
40
  " - Refuse si la racine n'est pas réduite au maximum (ex: \\sqrt{12} au lieu de 2\\sqrt{3})."
41
  "RÈGLES DE RÉPONSE :"
42
+ "1. Réponds UNIQUEMENT au format JSON valide (RFC 8259)."
43
+ "2. UTILISE EXCLUSIVEMENT DES DOUBLES GUILLEMETS \" POUR LES CLÉS ET LES VALEURS."
44
+ "3. LOGIQUE DU FEEDBACK (Pour le tri par l'interface) :"
45
+ " - Cas 1 (Juste et simplifié) -> {\"isCorrect\": true, \"feedback\": \"Bravo\"}"
46
+ " - Cas 2 (Mathématiquement juste MAIS forme non simplifiée/attendue) -> {\"isCorrect\": false, \"feedback\": \"La réponse est juste mathématiquement mais la forme n'est pas celle demandée (simplification)\"}"
47
+ " - Cas 3 (Faux) -> {\"isCorrect\": false, \"feedback\": \"C'est faux\"}"
48
  )
49
 
50
  user_prompt = f"Expression attendue (forme simplifiée) : {expected_latex}. Réponse de l'élève : {user_latex}."