ActiveEvidence: Decision-Focused Evidence Graphs with Verifiable Acquisition Gaps
Organizations: School of Artificial Intelligence, University of Chinese Academy of Sciences, Beijing, China · Institute of Information Engineering, Chinese Academy of Sciences, Beijing, China
Abstract
A multimodal agent must decide whether visual evidence is worth acquiring, which candidate or resolution to query, and when further interaction can no longer change its decision. We study this problem under a strict free-metadata/paid-observation boundary, stochastic vector costs, and a frozen execution trace, and treat it as decision-certifiable active evidence acquisition. A Counterfactual Evidence Interaction Graph (CEIG) represents unary evidence value, signed second-order interaction, and directed conditional harm while maintaining explicit score enclosures for unresolved interactions; a decision-weighted enclosure objective tightens the bounds that can change action identity. Gap-directed refinement evaluates only interactions that can displace the incumbent acquisition and stops once an -decision certificate shows that unresolved terms cannot change the selected action beyond a declared tolerance. The certificate is model-relative: it verifies policy-consistent optimality under the pinned learned score, and semantic quality is measured separately through post-freeze labels. Paired continuation rollouts learn the downstream value of paid previews, an online operational cost filter is separated from independent finite-policy-family trajectory certification, and an acquisition monitor with an independently implemented verifier binds every certificate to the frozen trace. On 640 cases split into 384/128/128 training, validation, and test cases, the controller reaches task score 0.842, grounding F1 0.816, evidence recall 0.873, 1.74 accepted calls, 286.5K visual tokens, and 742ms p95 latency. Dense replay of issued certificates shows 0.992 action agreement and a 0.988 certificate rate while evaluating 19.6 instead of 191.4 expensive interaction terms per decision.
Figures & tables
| method | unit | pair. | budget/risk | cert. | oracle | A/R | replay | audit | semantic |
|---|---|---|---|---|---|---|---|---|---|
| ActiveEvidence | whole image | yes | call cap / traj. risk | yes | post-freeze | yes | cross-impl. | 0.973 | held-out quality |
| VisionThink | whole image | N/R | N/R | N/R | not explicit | partial | N/R | N/R | task benchmarks |
| AdaptVision | crop/resolution | N/R | N/R | N/R | not explicit | partial | N/R | N/R | task benchmarks |
| AdaTooler-V | visual tools | N/R | N/R | N/R | not explicit | partial | N/R | N/R | task benchmarks |
| DART | visual tools | N/R | N/R | N/R | not explicit | partial | N/R | N/R | task benchmarks |
| ToolScope | multi-tool | N/R | N/R | N/R | not explicit | partial | N/R | N/R | task benchmarks |
| method | task | ground. | evidence | coverage | calls | V tok. | p95 ms | viol. |
| Text-only | 0.687 | 0.421 | 0.000 | 0.844 | 0.00 | 0.0K | 218 | 0.000 |
| Always-on | 0.817 | 0.789 | 0.948 | 0.969 | 4.93 | 808.6K | 1687 | 0.126 |
| Random | 0.731 | 0.596 | 0.623 | 0.875 | 2.91 | 476.8K | 1034 | 0.071 |
| Static metadata | 0.764 | 0.674 | 0.704 | 0.891 | 2.43 | 398.7K | 889 | 0.052 |
| Adaptive vision | 0.806 | 0.758 | 0.818 | 0.914 | 2.32 | 381.4K | 917 | 0.047 |
| Weighted metadata | 0.782 | 0.711 | 0.749 | 0.898 | 2.24 | 367.9K | 846 | 0.043 |
Appendix figures & tables29 assets
Supplementary material from the paper’s appendix.
Appendix
| policy | activ. | attempt. | accept. | V tok. | lat. (ms) | ID hit | exhaust. |
|---|---|---|---|---|---|---|---|
| text only | 0.000 | 0.00 | 0.00 | 0.00 | 1.00 | 0.000 | 0.000 |
| always-on | 1.000 | 2.24 | 1.63 | 13.00 | 4.25 | 0.500 | 0.625 |
| static selector | 1.000 | 2.01 | 1.50 | 13.00 | 4.25 | 0.625 | 0.500 |
| active evidence | 0.625 | 1.42 | 1.03 | 10.00 | 3.50 | 0.500 | 0.375 |
| study | evidence type | retained result and boundary |
|---|---|---|
| Mechanism screen | metadata fixture (proxy) | Eight metadata-only records: active selection activates 0.625 of rows, uses selected-image count 1.250, and reaches image-ID proxy 0.500. The screen is metadata-only: image decoding and vision-model execution are outside this fixture; these are mechanism diagnostics. |
| Static control | metadata fixture (proxy) | The static selector activates every row, uses 1.625 metadata-ranked images, and reaches image-ID proxy 0.625. This is a composite mechanism control; the held-out semantic task score is 0.764. |
| Field provenance | provenance record | TextConf-v0.3, VisualQuality-v0.4, and TextImageRel-v0.5 bind visible inputs and access records; ECE for is 0.041/0.036/0.039. Phase-specific oracle-access counts are reported in Appendix D.6 . |
| Matched policy controls | held-out test | The matched surface defines task/grounding/calls/V-tokens/p95 for the controls in Table 2 ; all control rows are joined under the same held-out receipt. |
| Held-out visual quality and cost | held-out test | The pinned Qwen2.5-VL-7B-Instruct study covers the 128-case test split and three controller seeds; the active semantic row is 0.842/0.816/0.873 with 1.74 calls, 286.5K visual tokens, and 742ms p95 latency. |
| Audit injection and robustness | held-out test | Injected trace-violation detection is 0.973 with clean-trace FPR 0.012; post-execution mutation detection ranges from 0.944–0.992, and matched transfer, hard-negative, and conflict task-score drops are 0.021, 0.028, and 0.034. |
| Evidence receipt | Supported interpretation |
|---|---|
| Manifest SHA-256 and 12480/12471 image hashes | Asset identity and byte-level matching |
| Accepted-call means 1.63/1.50/1.03 and exhaustion 0.625/0.500/0.375 | Final-checkpoint vector-budget accounting |
| Field ECE 0.041/0.036/0.039 | Calibrated selection-visible provenance |
| Exact/action/metric replay 0.985/0.972/0.957 | Cross-implementation trace equivalence |
| Injected violations detected at 0.973 | Audit-stress detection under the declared threat model |
| Eight-row fixture and held-out semantic table | Mechanism unit testing is separated from task quality |
| stress | protocol | task | V tok. | audit outcome |
|---|---|---|---|---|
| candidate-pool size | small/medium/large fixed pools | 0.833/0.842/ 0.846 | 231.7 /286.5/338.2K | 0.969/0.973/0.971 detection |
| hard negatives | near-duplicate and distractor candidates | 0.814 | 302.8K | 0.976 detection; 0.028 task drop |
| conflicting evidence | contradictory captions or regions | 0.808 | 310.6K | 0.979 detection; 0.034 task drop |
| metadata corruption | hash, size, dimension, and score perturbations | 0.832 | 293.4K | 0.981 detection |
| budget shifts | call/token/latency vectors | 0.823 (worst shift) | 272.9K | 0.029 violation; 0.972 detection |
| injected trace violations | oracle access, duplicate IDs, post-freeze edits | 0.841 | 287.2K | 0.973 detection; 0.012 clean FPR |
| policy | attempted | accepted | final | |
|---|---|---|---|---|
| always-on | 2.24 | 1.63 | 0.37 | 0.625 |
| static selector | 2.01 | 1.50 | 0.50 | 0.500 |
| active evidence | 1.42 | 1.03 | 0.97 | 0.375 |
| gate | ranker | stopper | activ. | selected | ID proxy | quality |
|---|---|---|---|---|---|---|
| off | static | fixed | 1.000 | 1.625 | 0.625 | 0.776 |
| on | static | fixed | 0.625 | 1.250 | 0.625 | 0.792 |
| off | active | fixed | 1.000 | 1.625 | 0.500 | 0.817 |
| on | active | fixed | 0.625 | 1.250 | 0.500 | 0.829 |
| off/on | random | fixed | 0.750 | 1.375 | 0.375 | 0.731 |
| on | learned | learned | 0.625 | 1.125 | 0.625 | 0.842 |
| policy | p95 (ms) | VRAM (GB) | abstain | fail. | disp. |
|---|---|---|---|---|---|
| text only | 218 | 11.4 | 0.156 | 0.042 | 0.006 |
| always on | 1687 | 18.7 | 0.031 | 0.051 | 0.008 |
| static selector | 889 | 15.1 | 0.102 | 0.036 | 0.007 |
| random selector | 1034 | 15.6 | 0.117 | 0.049 | 0.009 |
| active evidence | 742 | 15.8 | 0.078 | 0.023 | 0.005 |
| model | int. MAE | sign AUC | comp. | redund. | conflict |
|---|---|---|---|---|---|
| Unary only | 0.184 | 0.611 | 0.642 | 0.176 | 0.139 |
| Latent pairwise | 0.119 | 0.786 | 0.747 | 0.132 | 0.094 |
| Bundle regression | 0.142 | 0.738 | 0.709 | 0.147 | 0.112 |
| No re-scoring | 0.083 | 0.887 | 0.822 | 0.104 | 0.063 |
| No uncertainty calibration | 0.077 | 0.901 | 0.839 | 0.096 | 0.058 |
| Full CEIG | 0.071 | 0.914 | 0.861 | 0.081 | 0.047 |
| objective | task | int. MAE | dense agr. | cert. | edges | regret |
|---|---|---|---|---|---|---|
| No tightness | 0.838 | 0.069 | 0.964 | 0.923 | 34.2 | 0.012 |
| Uniform tightness | 0.840 | 0.073 | 0.978 | 0.956 | 26.8 | 0.007 |
| Decision-weighted (default) | 0.842 | 0.071 | 0.992 | 0.988 | 19.6 | 0.003 |
| controller | nom. | +20% | +50% | mixed | task | CVaR |
|---|---|---|---|---|---|---|
| Nominal hard filter | 0.061 | 0.148 | 0.319 | 0.274 | 0.788 | 0.151 |
| Nominal filter + dual price | 0.045 | 0.109 | 0.238 | 0.194 | 0.801 | 0.108 |
| Conformal feasible set | 0.025 | 0.052 | 0.113 | 0.079 | 0.814 | 0.058 |
| Full validation-calibrated controller | 0.018 | 0.024 | 0.041 | 0.029 | 0.823 | 0.032 |
| policy | approved | confirm. viol. | |||
|---|---|---|---|---|---|
| Point-cost filter | 500 | 31 | 0.082 | no | 0.061 |
| Adaptive upper-cost filter | 500 | 13 | 0.041 | yes | 0.025 |
| Complete-policy certification | 500 | 8 | 0.028 | yes | 0.018 |
| attack | cases | detect. | false acc. | impact |
|---|---|---|---|---|
| Oracle field before freeze | 200 | 0.992 | 0.004 | 0.061 |
| Candidate ID or hash substitution | 200 | 0.986 | 0.006 | 0.047 |
| Rejected attempt removed | 200 | 0.971 | 0.010 | 0.013 |
| Cost under-reporting | 200 | 0.958 | 0.016 | 0.028 |
| Feasible action omitted | 200 | 0.962 | 0.014 | 0.036 |
| Action score modified | 200 | 0.968 | 0.010 | 0.043 |
| attack | cases | reject. | wrong | unres. | chg. |
|---|---|---|---|---|---|
| Evaluation-label access before freeze | 200 | 198 | 1 | 1 | 1 |
| Undeclared pixel preview | 200 | 195 | 3 | 2 | 2 |
| Forged cost plus action-score edit | 200 | 192 | 5 | 3 | 3 |
| Omitted feasible action plus ledger edit | 200 | 191 | 6 | 3 | 4 |
| Post-freeze chain reconstruction | 200 | 189 | 7 | 4 | 5 |
| rule | agr. | regret | cert. | edges | ctrl. ms | ver. ms |
|---|---|---|---|---|---|---|
| Dense evaluation | 1.000 | 0.000 | 1.000 | 191.4 | 184.6 | 38.2 |
| Fixed- neighbors | 0.938 | 0.024 | 0.914 | 48.0 | 56.3 | 14.7 |
| Random | 0.912 | 0.038 | 0.875 | 32.5 | 49.1 | 12.5 |
| Widest envelope | 0.969 | 0.011 | 0.953 | 28.7 | 46.8 | 11.9 |
| Top challenger (default) | 0.992 | 0.003 | 0.988 | 19.6 | 41.8 | 9.4 |
| Per-compute priority | 0.994 | 0.002 | 0.991 | 16.8 | 38.5 | 8.7 |
| pool | task | calls | ctrl. ms | memory GB |
|---|---|---|---|---|
| 4 | 0.821 | 1.48 | 5.6 | 15.0 |
| 8 | 0.833 | 1.59 | 7.9 | 15.2 |
| 16 | 0.838 | 1.67 | 11.8 | 15.4 |
| 32 | 0.842 | 1.74 | 18.6 | 15.8 |
| 64 | 0.846 | 1.81 | 31.4 | 16.1 |
| pool | actions | pairs | eval. edges | fraction | cert. | p95 ms |
|---|---|---|---|---|---|---|
| 4 | 16 | 6 | 4.8 | 0.800 | 0.996 | 8.4 |
| 8 | 46 | 28 | 9.2 | 0.329 | 0.994 | 12.3 |
| 16 | 154 | 120 | 14.6 | 0.122 | 0.991 | 17.8 |
| 32 | 562 | 496 | 19.6 | 0.040 | 0.988 | 26.5 |
| 64 | 2146 | 2016 | 24.5 | 0.012 | 0.982 | 44.2 |
| supervision | unary calls | pair calls | preview rollouts | GPU-h | |
|---|---|---|---|---|---|
| Unary targets only | 7488 | 0 | 0 | 3.8 | 580 |
| CEIG pair targets | 7488 | 14750 | 0 | 11.2 | 940 |
| Paired preview and decision targets | 7488 | 14750 | 3072 | 14.8 | 1160 |
| Certificate-oriented full training | 7488 | 14750 | 3072 | 16.4 | 1290 |
| preview rule | task | net benefit | harmful | V tok. | regret |
|---|---|---|---|---|---|
| No preview | 0.816 | 0.000 | 0.000 | 0.0K | 0.089 |
| Fixed schedule | 0.828 | 0.047 | 0.241 | 118.6K | 0.063 |
| Immediate-utility gate | 0.832 | 0.076 | 0.158 | 84.3K | 0.049 |
| Unpaired return regression | 0.836 | 0.098 | 0.106 | 73.1K | 0.038 |
| Paired decision-value supervision | 0.842 | 0.124 | 0.043 | 62.4K | 0.021 |
| preview rule | perm. sens. | pre AUC (0.5 ideal) | post AUC |
|---|---|---|---|
| Unpaired return regression | 0.016 | 0.508 | 0.724 |
| Paired decision-value supervision | 0.007 | 0.502 | 0.816 |
| target | zero-shot drop | recalibr. drop | ECE | viol. |
|---|---|---|---|---|
| Smaller VLM, same domain | 0.009 | 0.000 | 0.044 | 0.019 |
| Second VLM family | 0.018 | 0.001 | 0.051 | 0.023 |
| New task domain | 0.027 | 0.002 | 0.059 | 0.028 |
| decision | issued | dense agr. | disagr. | regret |
|---|---|---|---|---|
| Acquisition | 222 | 0.991 | 0.009 | 0.003 |
| Preview | 108 | 0.991 | 0.009 | 0.002 |
| STOP | 118 | 0.992 | 0.008 | 0.002 |
| ABSTAIN | 10 | 1.000 | 0.000 | 0.000 |
| All decisions | 458 | 0.992 | 0.008 | 0.003 |
| stratum | task | calls | V tok. | 95% CI | |
|---|---|---|---|---|---|
| Domain 1 | 32 | 0.845 | 1.72 | 283.4K | [0.824, 0.866] |
| Domain 2 | 32 | 0.839 | 1.76 | 289.8K | [0.818, 0.860] |
| Domain 3 | 32 | 0.846 | 1.71 | 281.2K | [0.825, 0.867] |
| Domain 4 | 32 | 0.838 | 1.77 | 291.6K | [0.817, 0.859] |
| Low candidate count | 64 | 0.837 | 1.54 | 254.3K | [0.821, 0.853] |
| High candidate count | 64 | 0.847 | 1.94 | 318.7K | [0.831, 0.863] |
| field | configuration |
|---|---|
| Train / validation / test | 384 / 128 / 128 cases |
| Four domain names | DocVQA (multi-page documents), ChartQA (complex charts/plots), SceneInspect (embodied scenes), WebUI (multimodal interfaces) |
| Twelve question-type definitions | 12 types (key-value extraction, table/form cross-referencing, multi-page layout check, trend extrapolation, nested proportion comparison, multi-series cross-reading, spatial relation query, object state verification, viewpoint consistency, widget mapping, status verification, multi-panel consistency) |
| Candidate construction and annotation | Multi-resolution crop hierarchies; negative distractor and conflicting-evidence injection; triple-annotator consensus with frozen SHA-256 test receipt |
| Answer backbone | Qwen2.5-VL-7B-Instruct |
| Immutable model revision | commit b8c412f8a9e2d31c4e7f |
Evidence Selection
Evidence selection chooses the documents, passages, claims, or observations that best support an answer or decision.
See all 61 papers