fix: Abbildungs-Gegenprobe ohne kopierbares Beispiel, Kennungen vereinheitlicht
- Prompt-Beispiel '1 → 2: 3' durch Schema 'A → B: Wert' ersetzt: eine Lesung hatte nur die Beispielzeile übernommen statt aller fünf Pfeile; alle Datenpunkte verlangt - canonical_figure_id: '1' und 'Abbildung 1' gelten als dieselbe Abbildung – beim Vergleich, in der Pipeline und im Report (Formfehler im zweiten Testlauf) Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
101d55b713
commit
89b61d8c62
1 changed files with 35 additions and 9 deletions
|
|
@ -22,7 +22,7 @@ from modeling.extraction import revise_model, text_to_model
|
|||
from reporting.report import write_report
|
||||
from solving.script_export import build_solver_script
|
||||
from solving.solver_stage import check_feasibility, check_multistart, check_sensitivity, run_solver_code, solve
|
||||
from understanding.figures import FigureError, split_figures, with_transcriptions
|
||||
from understanding.figures import FigureError, normalize_figure_ids, split_figures, with_transcriptions
|
||||
from understanding.understand import read_figures, understand_task
|
||||
|
||||
MAX_REVISIONS = int(os.environ.get("MAX_REVISIONS", "2"))
|
||||
|
|
@ -76,7 +76,8 @@ def _checked_figure_readings(session, task: str, figures, first, label: str) ->
|
|||
und der Befund macht das Ergebnis unzuverlässig – die Daten der Aufgabe stünden auf ungeprüftem Ablesen.
|
||||
"""
|
||||
log(f"[{label}] Lese {len(figures)} Abbildung(en) ein zweites Mal (Gegenprobe) ...")
|
||||
zweite = read_figures(session, task, figures).figures
|
||||
first = normalize_figure_ids(first)
|
||||
zweite = normalize_figure_ids(read_figures(session, task, figures).figures)
|
||||
befunde = check_figure_readings(first, zweite)
|
||||
if not befunde:
|
||||
return first, []
|
||||
|
|
@ -84,7 +85,7 @@ def _checked_figure_readings(session, task: str, figures, first, label: str) ->
|
|||
for nummer, lesung in ((1, first), (2, zweite)):
|
||||
for f in lesung:
|
||||
log(f" Lesung {nummer}, {f.id}: " + f.transcription.replace("\n", " | ")[:300])
|
||||
dritte = read_figures(session, task, figures).figures
|
||||
dritte = normalize_figure_ids(read_figures(session, task, figures).figures)
|
||||
if not check_figure_readings(first, dritte):
|
||||
return first, []
|
||||
if not check_figure_readings(zweite, dritte):
|
||||
|
|
|
|||
Loading…
Reference in a new issue