56 lines
2.8 KiB
Markdown
56 lines
2.8 KiB
Markdown
# Reprendre la génération Gemini de l’énoncé
|
||
|
||
Relancez la même commande après une erreur ou une interruption :
|
||
|
||
```sh
|
||
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 :
|
||
|
||
```sh
|
||
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.
|