PlanSightRAG: A Visual-First Multimodal RAG for Automating Question Answering and Compliance Checking for Civil Standard Plans
Organizations: Department of Electrical Engineering & Computer Science, University of Wyoming · Department of Civil & Architectural Engineering & Construction Management, University of Wyoming, 1000 E. University Ave., Laramie, 82071, WY, USA
Abstract
Civil infrastructure compliance checking has long relied on engineers manually reading legacy 2D plans; however, OCR-based automation strips away the geometry and layout essential for interpreting these plans. We present a Visual-First Multimodal Retrieval-Augmented Generation (RAG) framework called PlanSightRAG. It indexes and reasons directly over plan imagery, integrates a ColNomic-3B multi-vector retrieval, an agentic Planner-Retriever-Auditor-Synthesizer, and MaxSim heatmaps as an evidence trail. We introduce a 4,056-pair benchmark from five state Departments of Transportation (DOT) standard plans (1,898 pages). PlanSightRAG achieves 91.47% Recall@5 on zero-shot retrieval, while on a held-out Michigan DOT corpus, it achieves 91.40%. On synthetic, parametrically-generated compliance drawings, our Qwen2.5-VL-72B pipeline reaches 100% verdict accuracy only when supplied a pre-resolved rule threshold, a controlled ceiling that a non-VLM OCR baseline already reaches at 76.4%. Finally, we demonstrate autonomous visual rule-grounding by extracting numeric limits directly from a specification corpus without any human-supplied rules.
Figures & tables
| Category | Recall@5 (%) | Judge (%) | |
| Dimensional | 29 | 100.00 [100.0, 100.0] | 79.31 [62.1, 93.1] |
| Visual | 16 | 87.50 [68.8, 100.0] | 68.75 [43.8, 87.5] |
| Logical | 17 | 94.12 [82.4, 100.0] | 94.12 [82.4, 100.0] |
| Hallucination | 16 | 75.00 [50.0, 93.8] | 81.25 [62.5, 100.0] |
| Overall | 78 | 91.03 [84.6, 96.2] | 80.77 [71.8, 89.7] |
| Category | WYDOT | Caltrans | AZDOT | CDOT | FDOT | Total |
| Visual Interpretation | 201 | 416 | 149 | 85 | 549 | 1,400 |
| Dimensional Accuracy | 170 | 287 | 144 | 87 | 327 | 1,015 |
| Logical Reasoning | 172 | 331 | 104 | 104 | 446 | 1,157 |
| Hallucination Rate | 15 | 192 | 17 | 2 | 258 | 484 |
| Total | 558 | 1,226 | 414 | 278 | 1,580 | 4,056 |
| Model | Type | Params | Tier |
| Qwen2.5-VL-72B-Instruct | Open-source | 72B | Primary |
| Qwen2.5-VL-7B-Instruct | Open-source | 7B | Primary |
| InternVL-2.5-8B | Open-source | 8B | Primary |
| Method | Modality | Mechanism | Recall@5 | |
| Strong modern baselines (2024–2026) | ||||
| Nemotron-ColEmbed-8B [ 43 ] | Visual (Patch) | Multi-vector late-int. | 1898 | 95.28% |
| Nemotron-ColEmbed-4B [ 43 ] | Visual (Patch) | Multi-vector late-int. | 1898 | 92.92% |
| ColNomic-7B [ 38 ] | Visual (Patch) | Multi-vector late-int. | 1898 | 91.27% |
| ColQwen2.5-v0.2 [ 7 ] | Visual (Patch) | Multi-vector MaxSim | 1898 | 87.26% |
| DSE-Qwen2-2B [ 44 ] | Visual (Global) | Single-vector dense | 1898 | 22.17% |
| Configuration | Recall@5 (%) |
| ColPali (Stage 1 only) | 76.89 |
| ColPali + MonoQwen2-VL rerank | 85.14 |
| Top-20 ceiling | 86.79 |
| Agency | Zero-shot Recall@5 (%) | |
| WYDOT | 558 | 93.37 |
| FDOT | 1,580 | 91.27 |
| Caltrans | 1,226 | 91.92 |
| AZDOT | 414 | 89.13 |
| CDOT | 278 | 90.29 |
| Overall | 4,056 | 91.47 |
| Category | Zero-shot Recall@5 (%) | |
| Hallucination Rate | 484 | 88.84 |
| Dimensional Accuracy | 1,015 | 95.37 |
| Visual Interpretation | 1,400 | 92.71 |
| Logical Reasoning | 1,157 | 87.64 |
| Overall | 4,056 | 91.47 |
| Technique | Qwen-7B | Qwen-72B |
| Zero-shot | 78.30 | 76.89 |
| Chain-of-thought (CoT) | 70.75 | 72.17 |
| Self-consistency (5 samples) | 69.58 | 69.10 |
| Retrieval-augmented | 62.50 | 70.75 |
| Sliding-window tiling | 64.39 | 72.17 |
| OCR-hybrid | 77.12 | 78.07 |
| Judge Configuration | Compliant | Non-compliant | Overall |
| Qwen2.5-VL-7B (plain) | 5/5 | 1/5 | 60% |
| Qwen2.5-VL-7B (CoT) | 0/5 | 5/5 | 50% |
| Qwen2.5-VL-72B (plain) | 5/5 | 3/5 | 80% |
| Qwen2.5-VL-72B (CoT + thresholds) | 5/5 | 5/5 | 100% |
| Multi-agent (Plan–Audit–Synth, 72B + thresholds) | 5/5 | 5/5 | 100% |
| Dense multi-view drawings ( , best configuration): | |||
| plans | Before d/2 fix | After d/2 fix |
| 25/25 | 25/25 | |
| 25/25 | 25/25 | |
| 25/25 | 25/25 | |
| 13/25 | 25/25 | |
| Total | 88/100 (88%) | 100/100 (100%) |
| Set | Compliant | Non-compliant | Overall |
| single-doc (pilot) | 5/5 | 5/5 | 100% |
| dense multi-view (pilot) | 2/2 | 2/2 | 100% |
| multi-plan (pilot) | 4/5 | 5/5 | 90% |
| single-doc (scale) | 250/250 | 250/250 | 100% |
| multi-plan (scale, after fix) | 48/48 | 52/52 | 100% |
| adversarial near-threshold (stress) | 25/25 | 25/25 | 100% |
| Archetype | Gov. dim. (layout) | OCR found | OCR acc | VLM acc |
| Culvert | cover, horiz. | 100.0 | 100.0 | 100.0 |
| Inlet | grate, horiz. | 98.0 | 99.0 | 100.0 |
| Guardrail | footing, rotated | 32.0 | 82.0 | 100.0 |
| Sign post | anchor, rotated | 3.0 | 51.0 | 100.0 |
| Rebar | stirrup, distractor | 0.0 | 50.0 | 100.0 |
| Overall | 46.6 | 76.4 | 100.0 |
| Retrieval pool | Cand. | R@1 | R@5 | Extract | Verdict |
| Spec only | 15 | 100.0 | 100.0 | 100.0 | 100.0 |
| 1,898 plan pages | 1,913 | 80.0 | 100.0 | 100.0 | 100.0 |
| Injected-threshold ref. (human rule) | 100.0 | ||||
| Capability | Synthetic | Real plans |
| Standard retrieval (rel.@5) | — | 83.3% |
| Verdict acc. (supplied rule) | 100% | 100% |
| Threshold extraction (auto.) | 100% | unreliable |
| Retriever | Trainable params | 5-DOT test R@5 (%) | Michigan R@5 (%) |
| Adopted backbone | |||
| ColNomic-3B (zero-shot) | 0 | 92.69 | 93.55 |
| ColNomic-3B + head-LoRA, gentle | 332k (0.009%) | 92.69 ( 0.00 ) | 93.55 ( 0.00 ) |
| ColNomic-3B + head-LoRA, standard | 332k (0.009%) | 93.16 ( ) | 92.47 ( ) |
| ColNomic-3B + full-LM LoRA | 37.2M (0.98%) | 55.66 ( ) | 75.27 ( ) |
| Predecessor backbone (companion) | |||
| Granularity | R@5 (%) | Tiles/Page |
| Full-page (200 DPI) | 76.89 | 1 |
| Tile-level (400 DPI) | 82.08 | 15 |
| Retrieval granularity | Judge accuracy (%) |
| Full-page (200 DPI) | 64.23 [59.4, 68.8] |
| Tile-level (400 DPI) | 68.77 [64.2, 73.3] |
| Gain (tile full) | +4.53 pp |
Appendix figures & tables11 assets
Supplementary material from the paper’s appendix.
Appendix
| Model | Category | Hit (%) | Judge (%) |
| Qwen2.5-VL-72B | Dimensional | 86.61 [80.4, 92.9] | 62.16 [53.2, 71.2] |
| Visual | 86.21 [80.0, 91.7] | 78.47 [71.5, 84.7] | |
| Logical | 52.50 [43.3, 61.7] | 69.17 [60.8, 77.5] | |
| Hallucination | 87.23 [76.6, 95.7] | 70.21 [57.4, 83.0] | |
| Overall | 76.89 [72.9, 80.9] | 70.62 [66.1, 74.9] | |
| Qwen2.5-VL-7B | Dimensional | 86.61 [80.4, 92.9] | 60.36 [51.4, 69.4] |
| Method | Overall (%) | WYDOT | Caltrans | AZDOT | CDOT | FDOT |
| ColQwen2.5-v0.2 | 87.26 [84.0, 90.3] | 92.5 [84.9, 98.1] | 87.3 [81.3, 92.5] | 82.6 [71.7, 93.5] | 87.1 [74.2, 96.8] | 86.9 [81.2, 91.9] |
| DSE-Qwen2-2B | 22.17 [18.2, 26.2] | 30.2 [18.9, 43.4] | 20.1 [13.4, 26.9] | 26.1 [13.0, 39.1] | 25.8 [9.7, 41.9] | 19.4 [13.1, 25.6] |
| VisRAG-Ret | 53.77 [49.1, 58.5] | 58.5 [45.3, 71.7] | 46.3 [38.1, 54.5] | 67.4 [54.3, 80.4] | 48.4 [32.3, 64.5] | 55.6 [47.5, 63.1] |
| BGE-M3 + OCR | 36.79 [32.3, 41.5] | 45.3 [32.1, 58.5] | 26.1 [18.7, 33.6] | 45.7 [32.6, 60.9] | 41.9 [25.8, 58.1] | 39.4 [31.9, 46.9] |
| CLIP ViT-B/32 | 1.89 [0.7, 3.3] | 0.0 [0.0, 0.0] | 0.0 [0.0, 0.0] | 8.7 [2.2, 17.4] | 0.0 [0.0, 0.0] | 2.5 [0.6, 5.0] |
| LayoutLMv3 | 0.00 [0.0, 0.0] | 0.0 [0.0, 0.0] | 0.0 [0.0, 0.0] | 0.0 [0.0, 0.0] | 0.0 [0.0, 0.0] | 0.0 [0.0, 0.0] |
| Category | R@1 | R@5 | MRR | nDCG@10 | |
| Dimensional | 112 | 67.86 | 97.32 | 0.803 | 0.847 |
| Visual | 145 | 68.28 | 93.10 | 0.788 | 0.828 |
| Logical | 120 | 69.17 | 88.33 | 0.778 | 0.810 |
| Hallucination | 47 | 53.19 | 89.36 | 0.682 | 0.741 |
| Overall | 424 | 66.75 | 92.45 | 0.777 | 0.819 |
| Candidate pool | # Candidates | R@1 | R@5 |
| Joint ( ) | 2,196 | 68.82 | 91.40 |
| Michigan-only | 298 | 74.19 | 93.55 |
| ID | Plans | GT | Pred | Match | Steps |
| comp_01 | 511-1A, 203-2A | PASS | PASS | ✓ | 8 |
| comp_02 | 606-7C, 606-2B | PASS | PASS | ✓ | 7 |
| comp_03 | 511-1A | PASS | PASS | ✓ | 8 |
| comp_04 | 202-1 | PASS | PASS | ✓ | 9 |
| comp_05 | 511-1A | PASS | PASS | ✓ | 10 |
| comp_06 | 606-4B | PASS | PASS | ✓ | 8 |
| Stratum | PASS / FAIL | |
| GT PASS (originals) | 8 | 8 / 0 |
| GT FAIL, M dim | 8 | 1 / 7 |
| GT FAIL, M note | 8 | 1 / 7 |
| GT FAIL, M sym | 8 | 3 / 5 |
| Overall | 32 | 13 / 19 |
| Percentile | Full-page (424 queries, 1,898-page index) |
| min | 98.72 |
| p25 | 100.24 |
| p50 | 101.26 |
| p75 | 101.74 |
| p95 | 102.48 |
| p99 | 103.71 |
| Stage | Cost | Notes |
| Indexing (1,898 pages) | min (one-time) | pages/s, offline |
| Retrieval / query | s (p50) | query enc. MaxSim |
| Re-rank (optional) | s/cand. | passes; early-stop |
| VQA answer / query | – s | single-shot 72B |
| Agentic audit / query | s | sequential steps |
Multimodal RAG
Multimodal retrieval-augmented generation grounds AI answers in retrieved text, images, video, audio, and structured visual evidence.
See all 153 papers