r0mant1c's picture
Remove dead chat code and obsolete planning docs.
4d757c0
|
Raw
History Blame Contribute Delete
2.36 kB

A newer version of the Gradio SDK is available: 6.20.0

Upgrade

Real lab-report eval set

Hand-collected, publicly available sample lab reports (fake patients, no PHI), used to measure extraction accuracy on real-world formats β€” the credibility number for the OpenBMB before/after. These are for evaluation (and demo), not the primary training source: the model trains on the synthetic generator (train/synth_reports.py); these tell us how well it generalizes to messy real layouts.

Files (13 reports, varied labs/countries/panels)

File Lab / format Notes
01_sterling_accuris.pdf Sterling (IN), 19 pages huge multi-panel; first pages = CBC
02_cbc_umc_johndoe.pdf US CBC, 1 page labeled βœ“ (macrocytic-anemia picture)
03_lpl_wm17s.pdf Dr Lal PathLabs (IN), 7p multi-panel
04_pk0016_urine.pdf urine + chem, 13p
05_gribbles_cbm.pdf Gribbles (AU/MY), 3p
06_drlogy_cbc.pdf Drlogy CBC, 1 page labeled βœ“
07_sample_505271.pdf US, 2p
08_investigation_scanned.pdf image-only / scanned no text layer β†’ good vision-modality test
09_pathkind_pl02.pdf Pathkind (IN), 8p
11_functionaldx.pdf FunctionalDX, 24p interpretive; heavy
12_lpl_k017.pdf LPL (IN), 2p
15_gribbles_crp.pdf Gribbles, 9p pediatric
16_zrt_female_hormones.pdf ZRT hormones, 5p estradiol/progesterone/cortisol etc.

Removed: a veterinary (dog) report β€” wrong domain. Reference tables (PSAP, NBME) moved to kb/references/ (they're KB material, not reports β€” see below).

Labels

labels.jsonl β€” one row per report: {"image": "<file>.pdf", "tests": [...], "notes": []}. The extractor reads PDFs directly (it renders pages to images), so image points at the PDF. Currently labeled: 02 and 06 (full, verified). The rest are best labeled via bootstrap:

# 1) draft labels with the current extractor, then hand-correct into gold
EXTRACTOR_BACKEND=transformers python eval/run_eval.py \
    --labels eval/data/real/labels.jsonl --run

To add a report: run the extractor on it, copy the predicted tests into a new labels.jsonl row, and correct any mistakes against the PDF. Faster and more accurate than typing from scratch.

Run the eval

python eval/run_eval.py --labels eval/data/real/labels.jsonl --run

Use it twice (base vs fine-tuned GGUF) for the before/after.