2 juges distincts :
Un script qui vérifie quelques erreurs potentielles,
par
exemple :
La source contient 56, mais la traduction
contient 65 ;
La source contient 20 %, mais la traduction
omet le pourcentage ;
La traduction contient une requête SQL, telle que
SELECT ... FROM ....
Un modèle plus puissant qui juge une seconde fois les cas
détectés par le premier, si il y a, et prend aussi 200 exemples
au hasard parmi les réussites pour vérifier que le modèle de
traduction a bien traduit. Il ne corrige pas, il valide ou non.
2 étapes distinctes, 1 par script. Le second juge est appelé en
batch.
Scripts
01_check_translations.py02_judge_translations.py
Fichiers créés / Clés JSON
{split}_deterministic_checks.jsonl
Enregistre le résultat des contrôles automatiques appliqués à
chaque traduction. Résultat du juge 1.
Clés JSON
iddb_idquestion_original_enquestionstatusissues[]
status vaut pass ou fail. Pour une ligne source
qui n’est pas un objet, seuls id, status et issues sont
écrits.
sol_judgments.jsonl · sol_judgments_test.jsonl
Regroupe les verdicts du second juge pour les traductions
sélectionnées. Résulat du juge 2.
Clés JSON
idselection_reasondb_idquestion_original_enschemasqlquestionverdictissues[]
verdict vaut pass, fail ou uncertain. Le fichier
suffixé _test correspond au lancement séparé avec --splits
test.
Fichiers intermédiaires du second juge
judge_selection{suffix}.jsonl
Réunit les traductions à faire examiner : tous les échecs
locaux et un échantillon des réussites.
Clés JSON
idselection_reasondb_idquestion_original_enschemasqlquestion
judge_requests{suffix}/requests_{NN}.jsonl
Découpe cette sélection en requêtes prêtes à envoyer en
batch au second juge.
Clés JSON
custom_idmethodurlbody.modelbody.reasoning.effortbody.instructionsbody.inputbody.max_output_tokens
body.input est une chaîne JSON : id, question_original_en,
question, sql, schema.
judge_batch_state{suffix}.json
Mémorise les identifiants et l’état des lots envoyés afin de
pouvoir les suivre puis récupérer les résultats.
Clés JSON
environmentmodelselectionsubmitted_atbatches[].batch_idbatches[].input_file_id
judge_raw_response{suffix}/output_{NN}.jsonl
Conserve les réponses brutes reçues du Batch avant
l’extraction des verdicts.
Clés JSON
idcustom_idresponseerror
Le JSON du verdict (id, verdict, issues) est extrait de
response.body.output[].content[].text. Les
autres métadonnées API sont conservées.
{suffix} est vide par défaut, ou _test avec --splits test ;
les autres sélections utilisent les noms des splits joints par
des underscores.