Visual Parallel Search: Learning to Search High-Resolution Images with Parallel Tile Inspection and Adaptive Zoom
Organizations: The University of Hong Kong · Huawei Research · City University of Hong Kong · Huazhong University of Science and Technology
Abstract
High-resolution visual question answering often fails because a multimodal model does not acquire the small, spatially localized evidence needed to answer a question. Sequential zooming can recover detail, but it asks the main model to choose a region before obtaining a reliable overview. We introduce VPS, a visual parallel-search framework in which a main agent first invokes grid_search to inspect image tiles in parallel with question-conditioned sub-agents, and then adaptively invokes zoom_in on a precise or merged region. The same interface supports both training-free inference and post-training of the main and sub-agents. Across five benchmark splits and three model sizes, VPS improves mean accuracy over dedicated zoom-only search in 14 of 15 same-model comparisons, with gains up to 8.0 points and especially strong improvements for smaller main models. ZoomBench retains an approximately 3.2-point gain at every tested size. We further develop a supervision pipeline with hint-free verification and a paired role-specific GRPO surrogate for learning the controller and tile-reader roles. SFT improves observed accuracy on all five benchmark splits, including a 4.17-point gain on HR-Bench 4K. Role-specific RL further reshapes search behavior: main-only RL reduces mean tool use from 2.65 to 2.11 with similar pass@1 in an internal four-response evaluation, while external accuracy changes are mixed. Joint training reveals an asymmetry between local evidence reading and global search control. Together, these results support VPS as an effective inference-time scaffold and a trainable decomposition for visual evidence acquisition.
Figures & tables
| Main | Recipe | TIR | VSTAR | ZoomBench | HR-4K | HR-8K |
|---|---|---|---|---|---|---|
| 27B | Grid + zoom | |||||
| Grid + zoom † | ||||||
| Zoom only | ||||||
| 9B | Grid + zoom | |||||
| Zoom only |
| Main | Search | 4K | 8K |
|---|---|---|---|
| 4B | Grid + zoom | 59.0 | 52.8 |
| 4B | Dedicated zoom | 48.2 | 40.2 |
| 9B | Grid + zoom | 68.3 | 62.0 |
| 9B | Dedicated zoom | 65.3 | 57.2 |
| 27B | Grid + zoom | 81.2 | 79.3 |
| 27B | Dedicated zoom | 80.8 | 78.8 |
| (a) Cross-benchmark evaluations | ||||||
|---|---|---|---|---|---|---|
| Main policy | Sub policy | TIR | VSTAR | ZoomBench | HR-4K | HR-8K |
| Pretrained | Pretrained | 59.44 | 78.36 | 51.01 | 78.58 | 76.12 |
| SFT | SFT | 72.50 | 87.96 | 60.00 | 82.75 | 82.25 |
| Main-only RL | SFT | 74.17 | 86.91 | 61.66 | see (b) | 82.75 |
Appendix figures & tables13 assets
Supplementary material from the paper’s appendix.
Appendix
| Main | Search | Replicates | TIR /120 | VSTAR /191 | ZoomBench /845 |
|---|---|---|---|---|---|
| 4B | Grid + zoom | seeds 1–3 | 74/75/65 | 146/155/148 | 427/441/425 |
| 4B | Dedicated zoom | reps 1–3 | 62/65/62 | 137/131/135 | 411/391/409 |
| 9B | Grid + zoom | seeds 1–3 | 83/80/76 | 161/160/168 | 493/481/507 |
| 9B | Dedicated zoom | base, seeds 2–3 | 79/75/79 | 151/156/136 | 462/455/482 |
| 27B | Grid + zoom | seeds 1–3 | 90/92/92 | 183/181/177 | 582/570/567 |
| 27B | Dedicated zoom | seeds 1–3 | 92/93/92 | 180/178/178 | 552/552/533 |
| Main | Search | 4K /800 | 8K /800 |
|---|---|---|---|
| 4B | Grid + zoom | 627/638/621 | 610/607/610 |
| 4B | Dedicated zoom | 592/587/587 | 553/549/554 |
| 9B | Grid + zoom | 679/669/667 | 650/638/645 |
| 9B | Dedicated zoom | 653/654/660 | 614/628/637 |
| 27B | Grid + zoom | 717/725/721 | 716/709/718 |
| 27B | Dedicated zoom | 709/710/712 | 713/712/707 |
| Main | Prompt | TIR /120 | VSTAR /191 | ZoomBench /845 |
|---|---|---|---|---|
| 4B | V1 | 84 | 168 | 527 |
| 9B | V1 | 89 | 166 | 496 |
| 27B | V1 | 97 | 188 | 599 |
| 27B | V2, seeds 1–3 | 93/97/90 | 187/185/182 | 574/571/576 |
| Correct /800 | Complete /800 | ||||
|---|---|---|---|---|---|
| Main | Sub | Pass 1 | Pass 2 | Pass 3 | Pass 3 |
| SFT | SFT | 679 | 663 | 659 | 786 |
| SFT | Early mixed | 667 | 667 | 680 | 788 |
| Main-only RL | SFT | 686 | 670 | 688 | 785 |
| Main-only RL | Early mixed | 686 | 682 | 687 | 784 |
| SFT sub | Joint RL sub | |||
|---|---|---|---|---|
| Main | Accuracy | Complete | Accuracy | Complete |
| SFT | 84.50 (676/800) | 789 | 85.88 (687/800) | 790 |
| Joint RL | 82.12 (657/800) | 720 | 82.00 (656/800) | 722 |
| Gold | SFT main | RL main | |||
|---|---|---|---|---|---|
| Benchmark | Correct | Completed | Correct | Completed | |
| TIR | 120 | 87 | 119 | 89 | 117 |
| VSTAR | 191 | 168 | 191 | 166 | 188 |
| ZoomBench | 845 | 507 | 845 | 521 | 844 |
| HR-Bench 4K | 800 | 662 | 784 | – | – |
| HR-Bench 8K | 800 | 658 | 781 | 662 | 761 |
| Metric | SFT | RL | 95% CI | |
|---|---|---|---|---|
| Pass@1 (%) | 71.25 | 72.50 | ||
| Pass@4 (%) | 89.00 | 83.00 | ||
| Tool calls | 2.645 | 2.105 |
| Matrix | Contrast | 95% CI | |
|---|---|---|---|
| Main-only/early mixed | Main RL SFT, SFT sub | ||
| Early mixed SFT sub, SFT main | |||
| Early mixed SFT sub, RL main | |||
| Main RL SFT, early mixed sub | |||
| Joint RL | Joint RL SFT sub, SFT main | ||
| Joint RL SFT main, SFT sub |
| Main | Sub | Correct/completed | Mean calls | Rows with calls |
|---|---|---|---|---|
| SFT | SFT | 676/789 | 2.22 | 18 |
| SFT | Joint RL | 687/790 | 2.11 | 14 |
| Joint RL | SFT | 657/720 | 4.35 | 107 |
| Joint RL | Joint RL | 656/722 | 4.37 | 105 |
| Policy | Accuracy | Grid | Zoom | Unfinished |
|---|---|---|---|---|
| Forced-grid warm start | 67.5% | 9.5% | 44.5% | 0.0% |
| Continuation 1 | 71.5% | 10.0% | 47.5% | 7.0% |
| Continuation 2 | 69.5% | 14.0% | 47.5% | 5.0% |
| Continuation 3 | 67.5% | 15.0% | 49.0% | 8.0% |
| Continuation 4 | 64.5% | 21.0% | 47.5% | 10.0% |
| Accuracy | Unfinished | |||
|---|---|---|---|---|
| Evaluation | Intervention | Control | Intervention | Control |
| Initial | 71.0 | 69.0 | 15.5 | 15.0 |
| Quarter | 69.5 | 69.5 | 9.5 | 13.0 |
| Half | 69.5 | 71.5 | 9.5 | 10.0 |
| Three-quarter | 72.0 | 73.5 | 8.0 | 8.5 |
| Final | 75.5 | 69.5 | 7.0 | 11.0 |
| Source pool | TIR | VSTAR | ZoomBench | HR-4K | HR-8K |
|---|---|---|---|---|---|
| SFT main | 0/0 | 0/0 | 0/0 | 0/0 | 0/0 |
| SFT sub | 0/0 | 0/0 | 3/11 | 0/0 | 0/0 |
| Main-only RL | 0/0 | 0/0 | 4/8 | 0/0 | 0/0 |
| Early mixed RL | 0/0 | 0/0 | 3/10 | 0/0 | 0/0 |
| Joint stage 1 | 0/0 | 0/0 | 3/8 | 0/0 | 0/0 |
| Joint stage 2 | 0/0 | 0/0 | 4/10 | 0/0 | 0/0 |
| Benchmark | Main | Original | Exact RGB | + pHash |
|---|---|---|---|---|
| TIR | SFT | 87/120 (72.50%) | 87/120 (72.50%) | 86/119 (72.27%) |
| TIR | Main-only RL | 89/120 (74.17%) | 89/120 (74.17%) | 88/119 (73.95%) |
| VSTAR | SFT | 168/191 (87.96%) | 168/191 (87.96%) | 168/191 (87.96%) |
| VSTAR | Main-only RL | 166/191 (86.91%) | 166/191 (86.91%) | 166/191 (86.91%) |
| ZoomBench | SFT | 507/845 (60.00%) | 502/834 (60.19%) | 495/825 (60.00%) |
| ZoomBench | Main-only RL | 521/845 (61.66%) | 507/826 (61.38%) | 507/825 (61.45%) |