diff --git a/copienator/commands/gemini_for_enonce.py b/copienator/commands/gemini_for_enonce.py index a461ddd..2e6625b 100644 --- a/copienator/commands/gemini_for_enonce.py +++ b/copienator/commands/gemini_for_enonce.py @@ -86,6 +86,11 @@ même si certains textes fournis sont dans une autre langue. Conserve les formules mathématiques, les labels exacts des questions et les clés JSON `rubrics`, `label` et `rubric_content` sans les traduire. Chaque question DOIT être notée sur exactement 4 points. Propose une répartition logique de ces points. +Il est inutile d'indiquer dans `rubric_content` que le barème totalise 4 points : +ce total est toujours implicite. +N'utilise pas de caractères mathématiques Unicode dans `rubric_content`. +Écris les expressions mathématiques en LaTeX, par exemple +`$\\lfloor \\sqrt{k} \\rfloor$` plutôt qu'avec des symboles Unicode. Par exemple : - Au moins 2 points si le résultat est correct. - Mettre la moitié des points si le raisonnement est correct mais pas le résultat. diff --git a/copienator/prompting.py b/copienator/prompting.py index 9823442..74542f7 100644 --- a/copienator/prompting.py +++ b/copienator/prompting.py @@ -2,6 +2,11 @@ from pathlib import Path import io from . import utils +PERSPECTIVE_GUIDANCE = ( + "Ce barème est indicatif, si une réponse est entièrement correcte mais utilise " + "une méthode différente, elle mérite quand même tous les points." +) + main_prompt = """Je te fournis une image contenant plusieurs réponses manuscrites à un examen. Chaque réponse est séparée de la précédente par une ligne horizontale noire. @@ -103,7 +108,13 @@ def make_prompt(input_dir,full_label): # print("Debug : l/t/c/p", full_label, text, corr, persp) if persp: - persp = "\n\nVoici des consignes de notation complémentaires : \n\n```\n" + persp +"\n```\n" + persp = ( + "\n\nVoici des consignes de notation complémentaires :\n\n" + + PERSPECTIVE_GUIDANCE + + "\n\n```\n" + + persp + + "\n```\n" + ) return main_prompt.replace("<>", text).replace("<>", corr).replace("<>", persp).replace("<