Spaces:
Sleeping
Sleeping
File size: 1,695 Bytes
71276a4 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | from pathlib import Path
from paper2lab.inference.pipeline import PaperPipeline
p = PaperPipeline(refinement_mode="nemotron")
total = 0
errors = 0
weak = 0
for pdf in Path("Data/papers").rglob("*.pdf"):
total += 1
try:
r = p.run(str(pdf))
c = r["paper_card_final"]
roadmap = c.get("reproduction_roadmap") or {}
if not isinstance(roadmap, dict):
roadmap = {}
kit = c.get("lab_starter_kit") or {}
if not isinstance(kit, dict):
kit = {}
datasets = c.get("datasets_or_data_sources") or []
findings = c.get("key_findings") or []
roadmap_steps = roadmap.get("experimental_steps") or []
kit_structure = kit.get("project_structure") or []
kit_risks = kit.get("reproducibility_risks") or []
is_weak = (
not c.get("title")
or not c.get("paper_type")
or not roadmap
or not kit
or len(kit_structure) == 0
)
if is_weak:
weak += 1
print("\n---", pdf.name)
print("type:", c.get("paper_type"))
print("datasets:", len(datasets), datasets[:3])
print("findings:", len(findings))
print("roadmap steps:", len(roadmap_steps))
print("lab kit structure:", len(kit_structure))
print("lab risks:", len(kit_risks))
print("refinement:", r["refinement"]["status"])
print("weak:", is_weak)
except Exception as e:
errors += 1
print("\nERROR:", pdf.name)
print(str(e))
print("\n====================")
print("TOTAL:", total)
print("ERRORS:", errors)
print("WEAK:", weak)
print("====================") |