PM-JAY Claim Adjudication
Automated Evidence Verification for Ayushman Bharat

Problem
AB-PMJAY hospitals submit claim packets as blurry scans, photos, and multilingual PDFs — Hindi, Bengali, Gujarati, Assamese mixed with English, handwriting, rubber stamps, and 20+ document types where pre- vs post-treatment reports look alike. Manual Standard Treatment Guideline (STG) review cannot scale; missed negations (e.g. "no pallor"), hallucinated dates, and weak visual proof directly affect reimbursement.
Approach
Five-stage claim adjudication pipeline: (1) ingest and normalize pages via PyMuPDF rasterization at 1.5× → 1024px JPEG; (2) multimodal extraction with dual cached Gemma 3 12B calls — primary for doc_type, OCR snippet, entities, and visual flags; secondary for 3–4 per-package clinical binary flags; (3) reconstruct episode timeline from earliest event occurrences; (4) negation-aware keyword layer + intersection fusion (VLM proposes → rules verify → both must agree, with numeric vitals bypass); (5) STG rule engine aggregates per-page outputs into case-level Pass (0.95), Conditional (0.75), or Fail (0.90) with full provenance (page · doc_type · confidence · evidence_excerpt).
At a glance
Placement
Top 3 Runner-Up · ₹3L
Clinical F1 gain
+3.4 pts (hybrid)
Pure VLM → Hybrid
0.7567 → 0.7909
STG packages
4 modules
VLM calls
2 / page (cached)
Token budget
~750k total
Tech decisions
Intersection fusion (keyword ∧ Gemma) over pure VLM
Pure VLM hallucinates dates and confuses similar doc types; pure keywords miss handwriting and multilingual context. Intersection commits only when both agree — +3.4 clinical F1 on the live strict-label evaluator.
Two-tier prompt-versioned disk cache (vlm_cache + vlm_clinical_cache)
Cache hits cost zero tokens and zero latency; reruns stay within the ~750k token budget across 4 packages, cases, and pages.
Laplacian blur score (threshold 80) + pyzbar visual detect
Flags poor-quality pages without dropping them; stamps, signatures, and QR/barcodes feed mandatory visual proof checks.
40-char negation-aware keyword lookback + numeric gates
Stops false positives from "no pallor" / "denies fever"; Severe Anemia requires Hb < 7.0 g/dL on any page, not diagnosis text alone.
RANK_MAP + SG039C continuity + per-package schema strip
Multi-page PDFs share canonical file rank when titles appear only on page 1; output must match PACKAGE_SCHEMAS key order exactly for compliance grading.