Files
Copies/docs/statement_recovery.md
T

2.8 KiB
Raw Blame History

Reprendre la génération Gemini de l’énoncé

Relancez la même commande après une erreur ou une interruption :

python -m copienator statement Interro05

Sans --restart, les sources sont supposées inchangées. Les questions, solutions et contextes validés sont conservés dans Cache/statement_*.json. Une réponse lisible contenant un élément invalide conserve ses autres éléments valides. Les solutions et contextes incomplets sont redemandés pour leurs labels manquants. Une réponse JSON illisible reste archivée, mais ses éléments ne sont pas récupérés automatiquement.

Les questions sont redemandées sous forme d’une liste complète et ordonnée : avant leur extraction, aucun inventaire indépendant de labels n’est disponible. Les labels déjà observés doivent rester présents. Vérifiez la liste contre enonce.pdf dans l’éditeur de groupes avant de l’approuver, notamment pour repérer une question que Gemini aurait entièrement omise.

Les modifications de Tmp/exam_items.txt survivent à une interruption de l’éditeur. Après approbation, les groupes sont enregistrés dans Cache/statement_grouping.json ; une reprise utilise ce checkpoint sans rouvrir l’éditeur. Les fichiers générés déjà présents sont conservés, les fichiers manquants sont complétés, et seuls les PDF manquants, échoués ou plus anciens que leur source générée sont recompilés. Les contextes ne sont pas ajoutés une seconde fois lors d’une reprise.

Les barèmes Persp valides sont conservés, y compris ceux des autres questions d’une réponse dont un barème est invalide. Les labels et groupes sont écrits avant la génération des barèmes et la compilation, ce qui permet aussi une reprise par statement Interro05 --persp-only.

Toutes les réponses d’extraction sont archivées avant décodage dans Cache/statement_responses/. Les erreurs, avec le texte échappé et le chemin de la réponse, sont affichées et ajoutées à Cache/statement_errors.log. Les barèmes utilisent Cache/rubric_responses/ et Cache/rubric_errors.log. Les anciens caches gemini_questions.json, gemini_solutions.json et gemini_context.json sont importés une fois : une réponse invalide n’est pas rechargée indéfiniment.

Pour recommencer explicitement depuis les sources, notamment après les avoir modifiées :

python -m copienator statement Interro05 --restart

Les checkpoints et modifications des groupes précédents sont déplacés dans Cache/statement_history/. Les anciennes sorties y sont également déplacées quand la nouvelle extraction et les groupes sont prêts, avant leur remplacement. Une erreur d’extraction conserve donc les anciennes sorties. Les réponses brutes restent disponibles. Si ce nouveau départ échoue, relancez sans --restart pour reprendre sa progression.