From 76cead8561bcebadf6bae5c443cfc3bfb45a9441 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Miquel?= Date: Mon, 12 Oct 2026 22:21:43 +0200 Subject: [PATCH] Prompts improvements (?) --- copienator/commands/gemini_for_enonce.py | 9 ++++++--- copienator/prompting.py | 3 +++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/copienator/commands/gemini_for_enonce.py b/copienator/commands/gemini_for_enonce.py index 262af83..e189d1a 100644 --- a/copienator/commands/gemini_for_enonce.py +++ b/copienator/commands/gemini_for_enonce.py @@ -79,7 +79,7 @@ class ExamSolutions(BaseModel): class ExtractedContext(StatementContent): target_question_label: str = Field(description="Label exact de la PREMIÈRE question située immédiatement APRÈS cette information dans l’énoncé.") last_question_label: str = Field(description="Label exact de la DERNIÈRE question qui utilise cette information.") - context_content: str = Field(description="Texte source des définitions, notations ou hypothèses, extrait de l’énoncé.") + context_content: str = Field(description="Définitions, notations ou hypothèses extraites de l’énoncé, éventuellement raccourcies en conservant toutes les informations nécessaires aux questions concernées.") class ExamContext(BaseModel): contexts: list[ExtractedContext] @@ -222,8 +222,11 @@ Pour chaque information extraite, identifie : information dans l'énoncé (`target_question_label`). 2. Le label de la DERNIÈRE question qui utilise cette information (`last_question_label`). -Conserve le texte source dans `context_content`, sans le reformuler ni le -traduire, et conserve le LaTeX ainsi que les labels exacts. +Dans `context_content`, tu peux raccourcir ou résumer le contexte pour ne +garder que les informations nécessaires à la compréhension et à la +correction des questions concernées. Conserve toutes les définitions, +notations et hypothèses utiles, sans en modifier le sens ni en ajouter. +Ne traduis pas le texte et conserve le LaTeX ainsi que les labels exacts. Renvoie le résultat dans la liste `contexts` de l'objet JSON attendu. """ diff --git a/copienator/prompting.py b/copienator/prompting.py index 19f963d..b4f1440 100644 --- a/copienator/prompting.py +++ b/copienator/prompting.py @@ -54,6 +54,9 @@ Certains cas nécessitent une valeur particulière du champ `error` : - La réponse contient aussi une réponse à une autre question de l'exercice, sur plus de quelques lignes : note la question demandée, mais indique `additional-answer`. + Examine systématiquement le contenu situé à droite de la réponse à + noter : tout contenu supplémentaire dans cette zone doit être signalé + par `additional-answer`, même s'il ne comporte que quelques lignes. - La réponse est vide, ou l'élève a seulement recopié l'énoncé : indique `empty-answer` et ne fournis aucun commentaire. S'il n'y a aucune de ces erreurs, attribue la chaîne vide `""` à `error`.