argus-uq 0.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- argus_uq-0.1.0/CITATION.cff +38 -0
- argus_uq-0.1.0/DATA_CARD.md +152 -0
- argus_uq-0.1.0/LICENSE +21 -0
- argus_uq-0.1.0/LICENSE-DATA +19 -0
- argus_uq-0.1.0/MANIFEST.in +5 -0
- argus_uq-0.1.0/NOTICES.md +71 -0
- argus_uq-0.1.0/PKG-INFO +233 -0
- argus_uq-0.1.0/README.md +149 -0
- argus_uq-0.1.0/data_release/README.md +106 -0
- argus_uq-0.1.0/data_release/derived/ause_winners.csv +17 -0
- argus_uq-0.1.0/data_release/derived/ause_winners_closed.csv +13 -0
- argus_uq-0.1.0/data_release/derived/bootstrap_ci.csv +2593 -0
- argus_uq-0.1.0/data_release/derived/bootstrap_ci_closed.csv +577 -0
- argus_uq-0.1.0/data_release/derived/cell_winners.csv +17 -0
- argus_uq-0.1.0/data_release/derived/cell_winners_closed.csv +13 -0
- argus_uq-0.1.0/data_release/derived/conformal_disks.csv +7201 -0
- argus_uq-0.1.0/data_release/derived/conformal_disks_closed.csv +5401 -0
- argus_uq-0.1.0/data_release/derived/conformal_disks_summary.csv +145 -0
- argus_uq-0.1.0/data_release/derived/conformal_disks_summary_closed.csv +109 -0
- argus_uq-0.1.0/data_release/derived/cross_cell_rho.csv +17 -0
- argus_uq-0.1.0/data_release/derived/cross_cell_rho_closed.csv +13 -0
- argus_uq-0.1.0/data_release/derived/cross_cell_rho_pairs.csv +121 -0
- argus_uq-0.1.0/data_release/derived/cross_cell_rho_pairs_closed.csv +67 -0
- argus_uq-0.1.0/data_release/derived/cross_cell_rho_stats.csv +2 -0
- argus_uq-0.1.0/data_release/derived/cross_cell_rho_stats_closed.csv +2 -0
- argus_uq-0.1.0/data_release/derived/cross_open_closed_rho.csv +13 -0
- argus_uq-0.1.0/data_release/derived/family_best_per_cell.csv +113 -0
- argus_uq-0.1.0/data_release/derived/family_best_per_cell_closed.csv +49 -0
- argus_uq-0.1.0/data_release/derived/family_means.csv +113 -0
- argus_uq-0.1.0/data_release/derived/family_means_closed.csv +49 -0
- argus_uq-0.1.0/data_release/derived/method_leaderboard.csv +28 -0
- argus_uq-0.1.0/data_release/derived/method_leaderboard_closed.csv +9 -0
- argus_uq-0.1.0/data_release/derived/nan_audit.csv +31 -0
- argus_uq-0.1.0/data_release/derived/nan_audit_closed.csv +1 -0
- argus_uq-0.1.0/data_release/derived/significance_pairs.csv +49 -0
- argus_uq-0.1.0/data_release/derived/significance_pairs_closed.csv +37 -0
- argus_uq-0.1.0/data_release/derived/tuning_deltas.csv +28 -0
- argus_uq-0.1.0/data_release/derived/tuning_deltas_closed.csv +1 -0
- argus_uq-0.1.0/data_release/manifest.json +66 -0
- argus_uq-0.1.0/data_release/panel_drops.json +32 -0
- argus_uq-0.1.0/data_release/per_item_full/GemxOSG.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/GemxSP.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/GemxUIV.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/GemxV2.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/OAIxOSG.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/OAIxSP.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/OAIxUIV.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/OAIxV2.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/PTxOSG.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/PTxSP.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/PTxV2.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/PxUIV.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/Q72xOSG.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/Q72xSP.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/Q72xUIV.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/Q72xV2.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/Q7xOSG.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/Q7xSP.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/Q7xUIV.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/Q7xV2.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/SonxOSG.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/SonxSP.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/SonxUIV.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/SonxV2.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/UIxOSG.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/UIxSP.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/UIxUIV.parquet +0 -0
- argus_uq-0.1.0/data_release/per_item_full/UIxV2.parquet +0 -0
- argus_uq-0.1.0/data_release/subsets/osg_564.json +576 -0
- argus_uq-0.1.0/data_release/subsets/ssp_300.json +368 -0
- argus_uq-0.1.0/data_release/subsets/ssv2_300.json +360 -0
- argus_uq-0.1.0/data_release/subsets/uiv_501.json +511 -0
- argus_uq-0.1.0/pyproject.toml +153 -0
- argus_uq-0.1.0/setup.cfg +4 -0
- argus_uq-0.1.0/setup.py +29 -0
- argus_uq-0.1.0/src/argus_uq/__init__.py +24 -0
- argus_uq-0.1.0/src/argus_uq/_version.py +3 -0
- argus_uq-0.1.0/src/argus_uq/analysis/__init__.py +3 -0
- argus_uq-0.1.0/src/argus_uq/api.py +338 -0
- argus_uq-0.1.0/src/argus_uq/cell.py +89 -0
- argus_uq-0.1.0/src/argus_uq/cli/__init__.py +9 -0
- argus_uq-0.1.0/src/argus_uq/cli/capture.py +87 -0
- argus_uq-0.1.0/src/argus_uq/cli/normalize.py +67 -0
- argus_uq-0.1.0/src/argus_uq/cli/prepare_data.py +307 -0
- argus_uq-0.1.0/src/argus_uq/cli/reproduce.py +147 -0
- argus_uq-0.1.0/src/argus_uq/cli/score.py +71 -0
- argus_uq-0.1.0/src/argus_uq/configs/__init__.py +1 -0
- argus_uq-0.1.0/src/argus_uq/conformal/__init__.py +86 -0
- argus_uq-0.1.0/src/argus_uq/conformal/base.py +82 -0
- argus_uq-0.1.0/src/argus_uq/conformal/crc.py +130 -0
- argus_uq-0.1.0/src/argus_uq/conformal/disk_cqr.py +114 -0
- argus_uq-0.1.0/src/argus_uq/conformal/disk_fixed.py +79 -0
- argus_uq-0.1.0/src/argus_uq/conformal/disk_normalized.py +92 -0
- argus_uq-0.1.0/src/argus_uq/data/__init__.py +98 -0
- argus_uq-0.1.0/src/argus_uq/data/cells.py +137 -0
- argus_uq-0.1.0/src/argus_uq/data/derived.py +75 -0
- argus_uq-0.1.0/src/argus_uq/data/per_item.py +53 -0
- argus_uq-0.1.0/src/argus_uq/envs/__init__.py +28 -0
- argus_uq-0.1.0/src/argus_uq/envs/base.py +138 -0
- argus_uq-0.1.0/src/argus_uq/envs/osworld_g.py +84 -0
- argus_uq-0.1.0/src/argus_uq/envs/screenspot_pro.py +74 -0
- argus_uq-0.1.0/src/argus_uq/envs/screenspot_v2.py +98 -0
- argus_uq-0.1.0/src/argus_uq/envs/ui_vision.py +77 -0
- argus_uq-0.1.0/src/argus_uq/estimators/__init__.py +62 -0
- argus_uq-0.1.0/src/argus_uq/estimators/attention.py +243 -0
- argus_uq-0.1.0/src/argus_uq/estimators/base.py +119 -0
- argus_uq-0.1.0/src/argus_uq/estimators/consistency.py +164 -0
- argus_uq-0.1.0/src/argus_uq/estimators/density.py +385 -0
- argus_uq-0.1.0/src/argus_uq/estimators/logit.py +124 -0
- argus_uq-0.1.0/src/argus_uq/estimators/prompt.py +96 -0
- argus_uq-0.1.0/src/argus_uq/estimators/sampling.py +226 -0
- argus_uq-0.1.0/src/argus_uq/estimators/vlm_native.py +154 -0
- argus_uq-0.1.0/src/argus_uq/factory.py +65 -0
- argus_uq-0.1.0/src/argus_uq/manager.py +184 -0
- argus_uq-0.1.0/src/argus_uq/models/__init__.py +51 -0
- argus_uq-0.1.0/src/argus_uq/models/base.py +125 -0
- argus_uq-0.1.0/src/argus_uq/models/closed_source/__init__.py +7 -0
- argus_uq-0.1.0/src/argus_uq/models/closed_source/anthropic.py +84 -0
- argus_uq-0.1.0/src/argus_uq/models/closed_source/base.py +156 -0
- argus_uq-0.1.0/src/argus_uq/models/closed_source/google.py +84 -0
- argus_uq-0.1.0/src/argus_uq/models/closed_source/openai.py +100 -0
- argus_uq-0.1.0/src/argus_uq/models/os_atlas.py +20 -0
- argus_uq-0.1.0/src/argus_uq/models/points_gui.py +20 -0
- argus_uq-0.1.0/src/argus_uq/models/qwen25_vl.py +35 -0
- argus_uq-0.1.0/src/argus_uq/models/ui_tars.py +18 -0
- argus_uq-0.1.0/src/argus_uq/models/whitebox.py +154 -0
- argus_uq-0.1.0/src/argus_uq/records.py +127 -0
- argus_uq-0.1.0/src/argus_uq/scoring/__init__.py +24 -0
- argus_uq-0.1.0/src/argus_uq/scoring/cached.py +115 -0
- argus_uq-0.1.0/src/argus_uq/scoring/multi_seed.py +84 -0
- argus_uq-0.1.0/src/argus_uq/stat_calculators/__init__.py +14 -0
- argus_uq-0.1.0/src/argus_uq/stat_calculators/base.py +84 -0
- argus_uq-0.1.0/src/argus_uq/ue_metrics/__init__.py +96 -0
- argus_uq-0.1.0/src/argus_uq/ue_metrics/_helpers.py +62 -0
- argus_uq-0.1.0/src/argus_uq/ue_metrics/aurc.py +37 -0
- argus_uq-0.1.0/src/argus_uq/ue_metrics/auroc.py +50 -0
- argus_uq-0.1.0/src/argus_uq/ue_metrics/ause.py +67 -0
- argus_uq-0.1.0/src/argus_uq/ue_metrics/bootstrap.py +35 -0
- argus_uq-0.1.0/src/argus_uq/ue_metrics/brier.py +24 -0
- argus_uq-0.1.0/src/argus_uq/ue_metrics/ece.py +37 -0
- argus_uq-0.1.0/src/argus_uq/ue_metrics/isotonic.py +156 -0
- argus_uq-0.1.0/src/argus_uq/ue_metrics/prr.py +77 -0
- argus_uq-0.1.0/src/argus_uq/ue_metrics/selective.py +29 -0
- argus_uq-0.1.0/src/argus_uq/ue_metrics/spearman.py +24 -0
- argus_uq-0.1.0/src/argus_uq/utils/__init__.py +21 -0
- argus_uq-0.1.0/src/argus_uq/utils/paths.py +63 -0
- argus_uq-0.1.0/src/argus_uq.egg-info/PKG-INFO +233 -0
- argus_uq-0.1.0/src/argus_uq.egg-info/SOURCES.txt +169 -0
- argus_uq-0.1.0/src/argus_uq.egg-info/dependency_links.txt +1 -0
- argus_uq-0.1.0/src/argus_uq.egg-info/entry_points.txt +5 -0
- argus_uq-0.1.0/src/argus_uq.egg-info/requires.txt +46 -0
- argus_uq-0.1.0/src/argus_uq.egg-info/top_level.txt +1 -0
- argus_uq-0.1.0/tests/test_api_real_data.py +157 -0
- argus_uq-0.1.0/tests/test_cli.py +94 -0
- argus_uq-0.1.0/tests/test_conformal.py +169 -0
- argus_uq-0.1.0/tests/test_envs.py +154 -0
- argus_uq-0.1.0/tests/test_estimators_attention.py +63 -0
- argus_uq-0.1.0/tests/test_estimators_consistency.py +81 -0
- argus_uq-0.1.0/tests/test_estimators_density.py +120 -0
- argus_uq-0.1.0/tests/test_estimators_logit.py +86 -0
- argus_uq-0.1.0/tests/test_estimators_prompt.py +38 -0
- argus_uq-0.1.0/tests/test_estimators_sampling.py +115 -0
- argus_uq-0.1.0/tests/test_estimators_vlm_native.py +72 -0
- argus_uq-0.1.0/tests/test_factory_registry.py +118 -0
- argus_uq-0.1.0/tests/test_imports.py +61 -0
- argus_uq-0.1.0/tests/test_listing1.py +78 -0
- argus_uq-0.1.0/tests/test_manager.py +81 -0
- argus_uq-0.1.0/tests/test_metrics.py +261 -0
- argus_uq-0.1.0/tests/test_models.py +129 -0
- argus_uq-0.1.0/tests/test_scoring.py +70 -0
- argus_uq-0.1.0/tests/test_vendor_isolation.py +62 -0
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
cff-version: 1.2.0
|
|
2
|
+
message: "If you use this software or data, please cite the paper below."
|
|
3
|
+
title: "argus-uq"
|
|
4
|
+
type: software
|
|
5
|
+
version: 0.1.0
|
|
6
|
+
license: MIT
|
|
7
|
+
repository-code: "https://github.com/divake/argus-uq"
|
|
8
|
+
authors: &authors
|
|
9
|
+
- family-names: Kumar
|
|
10
|
+
given-names: Divake
|
|
11
|
+
affiliation: University of Illinois Chicago
|
|
12
|
+
- family-names: Tayebati
|
|
13
|
+
given-names: Sina
|
|
14
|
+
affiliation: University of Illinois Chicago
|
|
15
|
+
- family-names: Naik
|
|
16
|
+
given-names: Devashri
|
|
17
|
+
affiliation: University of Illinois Chicago
|
|
18
|
+
- family-names: Rios
|
|
19
|
+
given-names: Amanda Sofie
|
|
20
|
+
affiliation: Intel Labs
|
|
21
|
+
- family-names: Ahuja
|
|
22
|
+
given-names: Nilesh
|
|
23
|
+
affiliation: Intel Labs
|
|
24
|
+
- family-names: Tickoo
|
|
25
|
+
given-names: Omesh
|
|
26
|
+
affiliation: Intel Labs
|
|
27
|
+
- family-names: Krishnan
|
|
28
|
+
given-names: Ranganath
|
|
29
|
+
affiliation: Capital One AI Labs
|
|
30
|
+
- family-names: Trivedi
|
|
31
|
+
given-names: Amit Ranjan
|
|
32
|
+
affiliation: University of Illinois Chicago
|
|
33
|
+
preferred-citation:
|
|
34
|
+
type: conference-paper
|
|
35
|
+
title: "Argus: A Cross-Regime Study of Uncertainty Quantification Transferability in Single-Step GUI Grounding"
|
|
36
|
+
authors: *authors
|
|
37
|
+
collection-title: "NeurIPS 2026 Evaluations and Datasets Track"
|
|
38
|
+
year: 2026
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
# Data Card - argus-uq
|
|
2
|
+
|
|
3
|
+
Argus-UQ ships per-item uncertainty quantification scores for 28 cells
|
|
4
|
+
(16 open-weight + 12 closed-API) from the paper "Argus: A Cross-Regime
|
|
5
|
+
Study of Uncertainty Quantification Transferability in Single-Step GUI
|
|
6
|
+
Grounding" (NeurIPS 2026 Evaluations and Datasets Track).
|
|
7
|
+
|
|
8
|
+
## 1. Motivation
|
|
9
|
+
|
|
10
|
+
### 1.1 Purpose
|
|
11
|
+
|
|
12
|
+
Argus-UQ exists to make UQ methods comparable across vision-language
|
|
13
|
+
models, datasets, and access tiers under one protocol. Users can
|
|
14
|
+
load any cell, score any of the 27 (open-source) or 8 (closed-source)
|
|
15
|
+
UQ methods, and reproduce every paper number from
|
|
16
|
+
``data_release/derived/`` without re-running inference.
|
|
17
|
+
|
|
18
|
+
### 1.2 Funding / acknowledgement
|
|
19
|
+
|
|
20
|
+
Created by Divake Kumar, Sina Tayebati, Devashri Naik (University of
|
|
21
|
+
Illinois Chicago); Amanda Sofie Rios, Nilesh Ahuja, Omesh Tickoo (Intel
|
|
22
|
+
Labs); Ranganath Krishnan (Capital One AI Labs); Amit Ranjan Trivedi
|
|
23
|
+
(University of Illinois Chicago). Funding and competing interests are
|
|
24
|
+
stated in the paper.
|
|
25
|
+
|
|
26
|
+
## 2. Composition
|
|
27
|
+
|
|
28
|
+
### 2.1 Instances
|
|
29
|
+
|
|
30
|
+
Each instance is one (model, dataset, item) triple with:
|
|
31
|
+
|
|
32
|
+
- a stable item id
|
|
33
|
+
- a binary correctness label (whether the agent's greedy click landed
|
|
34
|
+
in the gold bbox)
|
|
35
|
+
- the normalised distance from the predicted click to the bbox
|
|
36
|
+
- 27 (open-source) or 8 (closed-source) per-method UQ scores
|
|
37
|
+
|
|
38
|
+
There are 28 cells (model x dataset combinations) and 19,538 instances
|
|
39
|
+
across all cells (14,749 open-weight, 4,789 closed-API).
|
|
40
|
+
|
|
41
|
+
### 2.2 Cell catalog
|
|
42
|
+
|
|
43
|
+
**Open-source (16 cells)**: 4 models x 4 datasets
|
|
44
|
+
|
|
45
|
+
| Models | Datasets |
|
|
46
|
+
|---|---|
|
|
47
|
+
| Q7 = Qwen2.5-VL-7B-Instruct | V2 = ScreenSpot-v2 (1,272 items) |
|
|
48
|
+
| Q72 = Qwen2.5-VL-72B-Instruct-AWQ | SP = ScreenSpot-Pro (1,581 items) |
|
|
49
|
+
| UI = UI-TARS-1.5-7B | OSG = OSWorld-G non-refusal subset (564 items) |
|
|
50
|
+
| PT = POINTS-GUI-G-8B | UIV = UI-Vision Element Grounding 501-item subset |
|
|
51
|
+
|
|
52
|
+
**Closed-source (12 cells)**: 3 vendors x 4 datasets (V2 / SP / OSG /
|
|
53
|
+
UIV; V2 and SP use the 300-item subsets)
|
|
54
|
+
|
|
55
|
+
| Vendors |
|
|
56
|
+
|---|
|
|
57
|
+
| OAI = OpenAI GPT-5.4 |
|
|
58
|
+
| Son = Anthropic Claude Sonnet 4.6 |
|
|
59
|
+
| Gem = Google Gemini 3.1 Pro |
|
|
60
|
+
|
|
61
|
+
### 2.3 Method panels
|
|
62
|
+
|
|
63
|
+
Open-source cells carry **27 method scores per item** spanning seven
|
|
64
|
+
families: logit (5), sampling (6), consistency (3), density (5),
|
|
65
|
+
attention (3), prompt (3), VLM-native (2).
|
|
66
|
+
|
|
67
|
+
Closed-source cells carry **8 OS-identical method scores per item**:
|
|
68
|
+
self_consistency, semantic_entropy, lexical_similarity, ccp,
|
|
69
|
+
verbalized_1s, verbalized_2s, hedge, imghedge. The other 19 methods
|
|
70
|
+
are open-source-only because the closed APIs do not expose token
|
|
71
|
+
logprobs, hidden states, or attention tensors.
|
|
72
|
+
|
|
73
|
+
## 3. Collection process
|
|
74
|
+
|
|
75
|
+
### 3.1 Open-source
|
|
76
|
+
|
|
77
|
+
- Models: HuggingFace transformers; loaded onto NVIDIA RTX A6000 Ada
|
|
78
|
+
(48 GB) with bfloat16 precision (or int4-AWQ for the 72B Qwen).
|
|
79
|
+
- Inference: per item, run greedy decode + N=5 stochastic samples
|
|
80
|
+
(temperature=1.0, top_p=0.95) + 3 prompt probes (P(True),
|
|
81
|
+
Verbalized-1S, Verbalized-2S) + 3 paraphrased-instruction HEDGE
|
|
82
|
+
variants + 3 image-perturbed IMG-HEDGE variants. Capture per-token
|
|
83
|
+
logprobs, per-token last-layer hidden states, and per-step
|
|
84
|
+
per-layer per-head attention tensors during greedy decoding.
|
|
85
|
+
- Scoring: Phase B reads cached records, fits trainable methods
|
|
86
|
+
(SAPLMA, SEP, Mahalanobis, Mahalanobis-RMD, Mahalanobis-RDE) on a
|
|
87
|
+
calibration split, and scores the 27 methods on the test split.
|
|
88
|
+
|
|
89
|
+
### 3.2 Closed-source
|
|
90
|
+
|
|
91
|
+
- API surface: vendor-isolated agents under
|
|
92
|
+
``argus_uq.models.closed_source.{openai, anthropic, google}``. The
|
|
93
|
+
released classes hold configuration only; generation methods raise
|
|
94
|
+
``NotImplementedError``.
|
|
95
|
+
- Per-item calls: 16 (greedy + 5 samples + 3 hedge_text + 3
|
|
96
|
+
hedge_image + p_true + verbalized_1s + 2 stages of verbalized_2s).
|
|
97
|
+
- Per-cell budget: ~300-564 items x 16 calls = ~5k-9k API calls per
|
|
98
|
+
cell. ~$50-200 per cell at 2026 prices.
|
|
99
|
+
|
|
100
|
+
## 4. Preprocessing / cleaning / labelling
|
|
101
|
+
|
|
102
|
+
- Click parsing: Qwen2.5-VL tool-call output has its coordinates in
|
|
103
|
+
the model-resized image space; each agent's parser rescales to
|
|
104
|
+
original-image space using the smart_resize ratio.
|
|
105
|
+
- Closed-source vendor renames (to match the open-source method names):
|
|
106
|
+
- ``coord_agreement`` -> ``ccp``
|
|
107
|
+
- ``hedge_text`` -> ``hedge``
|
|
108
|
+
- ``hedge_image`` -> ``imghedge``
|
|
109
|
+
- Closed-source ``records.jsonl`` files contain no API keys. Local
|
|
110
|
+
image paths are replaced with dataset-relative paths or ``<cache>/``.
|
|
111
|
+
Model responses are verbatim and can quote text visible in the public
|
|
112
|
+
dataset screenshots, such as email addresses and file paths.
|
|
113
|
+
|
|
114
|
+
## 5. Uses
|
|
115
|
+
|
|
116
|
+
### 5.1 Recommended
|
|
117
|
+
|
|
118
|
+
- Reproducing the paper's headline AUROC / PRR / AUSE / ECE numbers.
|
|
119
|
+
- Comparing two UQ methods on a fixed cell (and confidence interval).
|
|
120
|
+
- Constructing deployable conformal click-disks for selective
|
|
121
|
+
abstention in production grounding agents.
|
|
122
|
+
- Ablating UQ methods on a custom set of records (via
|
|
123
|
+
``argus_uq.manager.ScoringManager``).
|
|
124
|
+
|
|
125
|
+
### 5.2 Out of scope
|
|
126
|
+
|
|
127
|
+
- **Multi-step trajectory UQ.** Argus-UQ benchmarks per-step
|
|
128
|
+
grounding only.
|
|
129
|
+
- **Inference-from-scratch closed-source experiments.** Vendor agents
|
|
130
|
+
in this library do not implement full inference; the bundled
|
|
131
|
+
closed-source records are the canonical artefact.
|
|
132
|
+
- **Fine-tuning models.** Argus-UQ scores frozen VLMs.
|
|
133
|
+
|
|
134
|
+
## 6. Distribution
|
|
135
|
+
|
|
136
|
+
### 6.1 License
|
|
137
|
+
|
|
138
|
+
- Library code: MIT (``LICENSE``).
|
|
139
|
+
- Released per-item records, derived CSVs, and subset definitions:
|
|
140
|
+
CC-BY-4.0 (``LICENSE-DATA``).
|
|
141
|
+
- Underlying datasets carry their own upstream licenses
|
|
142
|
+
(Apache 2.0 / research / MIT); see ``NOTICES.md``.
|
|
143
|
+
|
|
144
|
+
### 6.2 Where it lives
|
|
145
|
+
|
|
146
|
+
The code repository listed in ``pyproject.toml`` and ``CITATION.cff``
|
|
147
|
+
holds the code and all of ``data_release/``.
|
|
148
|
+
|
|
149
|
+
## 7. Maintenance
|
|
150
|
+
|
|
151
|
+
The repository is the system of record. Issues, fixes, and method
|
|
152
|
+
additions land via PRs.
|
argus_uq-0.1.0/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 The Argus-UQ Authors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
Argus-UQ released datasets and per-item records are licensed under the
|
|
2
|
+
Creative Commons Attribution 4.0 International License (CC-BY-4.0).
|
|
3
|
+
|
|
4
|
+
You are free to:
|
|
5
|
+
- Share -- copy and redistribute the material in any medium or format.
|
|
6
|
+
- Adapt -- remix, transform, and build upon the material for any purpose,
|
|
7
|
+
even commercially.
|
|
8
|
+
|
|
9
|
+
Under the following terms:
|
|
10
|
+
- Attribution -- You must give appropriate credit, provide a link to the
|
|
11
|
+
license, and indicate if changes were made.
|
|
12
|
+
|
|
13
|
+
Full license text: https://creativecommons.org/licenses/by/4.0/legalcode
|
|
14
|
+
|
|
15
|
+
Note: this license covers the authors' own contributions (UQ scores, derived
|
|
16
|
+
tables, subset definitions). The underlying datasets carry their own upstream
|
|
17
|
+
licenses, and text or annotations taken from them (instructions, target boxes,
|
|
18
|
+
item metadata) stay under those licenses. Vendor API responses stay subject to
|
|
19
|
+
the vendors' terms. See NOTICES.md for the per-source attribution.
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
include CITATION.cff DATA_CARD.md setup.py
|
|
2
|
+
recursive-include data_release/per_item_full *.parquet
|
|
3
|
+
recursive-include data_release/derived *.csv
|
|
4
|
+
recursive-include data_release/subsets *.json
|
|
5
|
+
include data_release/manifest.json data_release/panel_drops.json data_release/README.md
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# NOTICES
|
|
2
|
+
|
|
3
|
+
`argus-uq` builds on prior open-source work and cites the canonical
|
|
4
|
+
references for every UQ method and metric implemented in the package.
|
|
5
|
+
|
|
6
|
+
## Library architecture inspiration
|
|
7
|
+
|
|
8
|
+
- **lm-polygraph** (Fadeeva et al. 2024). https://github.com/IINemo/lm-polygraph.
|
|
9
|
+
MIT. We adopt the StatCalculator + Estimator + UEManager design pattern.
|
|
10
|
+
- **torch-uncertainty** (Lafage & Laurent 2025). https://github.com/ENSTA-U2IS-AI/torch-uncertainty.
|
|
11
|
+
Apache 2.0. Packaging convention (`pyproject.toml` extras) inspired this repo.
|
|
12
|
+
|
|
13
|
+
## UQ method canonical references (also cited in each estimator's docstring)
|
|
14
|
+
|
|
15
|
+
- MSP, perplexity, mean token entropy, sequence probability: standard
|
|
16
|
+
logit baselines (Hendrycks & Gimpel 2017; Malinin & Gales 2018).
|
|
17
|
+
- Self-consistency: Wang et al. 2023 (arXiv 2203.11171).
|
|
18
|
+
- Semantic entropy: Kuhn et al. 2023; Farquhar et al. *Nature* 2024.
|
|
19
|
+
- MCSE / MCNSE: Malinin & Gales 2021.
|
|
20
|
+
- Lexical similarity: Fomicheva et al. 2020.
|
|
21
|
+
- CCP / CoCoA / CoCoA-1MCA: Vashurin et al. 2025 (AAAI).
|
|
22
|
+
- Mahalanobis: Lee et al. 2018.
|
|
23
|
+
- Mahalanobis-RMD: Ren et al. 2023 (arXiv 2209.15558).
|
|
24
|
+
- Mahalanobis-RDE: KernelPCA + MinCovDet (Rousseeuw 1984) on the
|
|
25
|
+
positive class.
|
|
26
|
+
- SAPLMA: Azaria & Mitchell 2023 (EMNLP).
|
|
27
|
+
- SEP (Semantic Entropy Probes): Kossen et al. 2024 (arXiv 2406.15927).
|
|
28
|
+
- FOCUS: Zhang et al. 2023.
|
|
29
|
+
- RAUQ: Vazhentsev et al. 2023.
|
|
30
|
+
- UQAC: attention-aggregation method (2025).
|
|
31
|
+
- P(True): Kadavath et al. 2022 (arXiv 2207.05221).
|
|
32
|
+
- Verbalized 1S: Tian et al. 2023 (arXiv 2305.14975).
|
|
33
|
+
- Verbalized 2S: Xiong et al. 2024 (arXiv 2306.13063).
|
|
34
|
+
- HEDGE / IMG-HEDGE: Gautam et al. 2025.
|
|
35
|
+
- Inductive split CP: Vovk et al. 2005; Angelopoulos & Bates 2023.
|
|
36
|
+
- Conformalized quantile regression (CQR): Romano et al. 2019.
|
|
37
|
+
- Conformal Risk Control: Bates et al. 2024.
|
|
38
|
+
|
|
39
|
+
## Metric references
|
|
40
|
+
|
|
41
|
+
- AUROC: Hendrycks & Gimpel 2017 (incorrectness-prediction usage).
|
|
42
|
+
- PRR (Prediction-Rejection Ratio): Malinin & Gales 2018.
|
|
43
|
+
- AUSE: Ilg et al. 2018 (ECCV; per-item-error sparsification).
|
|
44
|
+
- ECE / MCE: Guo et al. 2017 (ICML).
|
|
45
|
+
- Brier score: Brier 1950.
|
|
46
|
+
- Selective accuracy at coverage: Geifman & El-Yaniv 2017.
|
|
47
|
+
- Risk-Coverage AUC: standard selective-prediction usage.
|
|
48
|
+
|
|
49
|
+
## Datasets
|
|
50
|
+
|
|
51
|
+
Licenses below are as declared by the upstream hosts.
|
|
52
|
+
|
|
53
|
+
- **ScreenSpot-v2** (Apache 2.0). https://huggingface.co/datasets/OS-Copilot/ScreenSpot-v2
|
|
54
|
+
- **ScreenSpot-Pro** (MIT). https://huggingface.co/datasets/likaixin/ScreenSpot-Pro
|
|
55
|
+
- **OSWorld-G** non-refusal subset. https://github.com/xlang-ai/OSWorld-G
|
|
56
|
+
(repository: Apache 2.0; the Hugging Face copy `MMInstruction/OSWorld-G`
|
|
57
|
+
declares no license).
|
|
58
|
+
- **UI-Vision Element Grounding** 501-item subset (MIT). https://huggingface.co/datasets/ServiceNow/ui-vision
|
|
59
|
+
|
|
60
|
+
This repository does not redistribute any screenshots. It does redistribute
|
|
61
|
+
item identifiers, and `data_release/closed_source_records/` also contains the
|
|
62
|
+
instruction text, target boxes and item metadata from ScreenSpot-v2,
|
|
63
|
+
ScreenSpot-Pro, OSWorld-G and UI-Vision, under the upstream terms above. To run anything
|
|
64
|
+
that needs images, obtain the datasets from their upstream sources.
|
|
65
|
+
|
|
66
|
+
## Closed-source APIs
|
|
67
|
+
|
|
68
|
+
The closed-source matrix uses commercial APIs from OpenAI, Anthropic,
|
|
69
|
+
and Google. Vendor SDK usage is governed by their respective Terms of
|
|
70
|
+
Service. We release request / response records; we do not redistribute
|
|
71
|
+
model weights.
|
argus_uq-0.1.0/PKG-INFO
ADDED
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: argus-uq
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: Uncertainty quantification benchmark for VLM GUI grounding agents.
|
|
5
|
+
Author: Divake Kumar, Sina Tayebati, Devashri Naik, Amanda Sofie Rios, Nilesh Ahuja, Omesh Tickoo, Ranganath Krishnan, Amit Ranjan Trivedi
|
|
6
|
+
License: MIT License
|
|
7
|
+
|
|
8
|
+
Copyright (c) 2026 The Argus-UQ Authors
|
|
9
|
+
|
|
10
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
11
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
12
|
+
in the Software without restriction, including without limitation the rights
|
|
13
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
14
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
15
|
+
furnished to do so, subject to the following conditions:
|
|
16
|
+
|
|
17
|
+
The above copyright notice and this permission notice shall be included in all
|
|
18
|
+
copies or substantial portions of the Software.
|
|
19
|
+
|
|
20
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
21
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
22
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
23
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
24
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
25
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
26
|
+
SOFTWARE.
|
|
27
|
+
|
|
28
|
+
Project-URL: Homepage, https://github.com/divake/argus-uq
|
|
29
|
+
Keywords: uncertainty quantification,vision-language models,GUI grounding,computer-use agents,conformal prediction,benchmark
|
|
30
|
+
Classifier: Development Status :: 4 - Beta
|
|
31
|
+
Classifier: Intended Audience :: Science/Research
|
|
32
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
33
|
+
Classifier: Operating System :: OS Independent
|
|
34
|
+
Classifier: Programming Language :: Python :: 3
|
|
35
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
36
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
37
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
38
|
+
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
39
|
+
Requires-Python: <3.13,>=3.10
|
|
40
|
+
Description-Content-Type: text/markdown
|
|
41
|
+
License-File: LICENSE
|
|
42
|
+
License-File: LICENSE-DATA
|
|
43
|
+
License-File: NOTICES.md
|
|
44
|
+
Requires-Dist: numpy<2.0,>=1.26
|
|
45
|
+
Requires-Dist: pandas<3.0,>=2.2
|
|
46
|
+
Requires-Dist: scipy<2.0,>=1.13
|
|
47
|
+
Requires-Dist: scikit-learn<2.0,>=1.5
|
|
48
|
+
Requires-Dist: pyarrow<26,>=16.0
|
|
49
|
+
Requires-Dist: pyyaml>=6.0
|
|
50
|
+
Requires-Dist: omegaconf>=2.3
|
|
51
|
+
Requires-Dist: click<9.0,>=8.1
|
|
52
|
+
Requires-Dist: tqdm>=4.66
|
|
53
|
+
Requires-Dist: pillow>=10.0
|
|
54
|
+
Provides-Extra: whitebox
|
|
55
|
+
Requires-Dist: torch<3.0,>=2.2; extra == "whitebox"
|
|
56
|
+
Requires-Dist: torchvision<1.0,>=0.17; extra == "whitebox"
|
|
57
|
+
Requires-Dist: transformers>=4.45; extra == "whitebox"
|
|
58
|
+
Requires-Dist: accelerate>=1.0; extra == "whitebox"
|
|
59
|
+
Requires-Dist: huggingface-hub>=0.25; extra == "whitebox"
|
|
60
|
+
Requires-Dist: opencv-python-headless>=4.9; extra == "whitebox"
|
|
61
|
+
Provides-Extra: closed
|
|
62
|
+
Requires-Dist: openai>=1.50; extra == "closed"
|
|
63
|
+
Requires-Dist: anthropic>=0.40; extra == "closed"
|
|
64
|
+
Requires-Dist: google-genai>=0.3; extra == "closed"
|
|
65
|
+
Provides-Extra: paper
|
|
66
|
+
Requires-Dist: matplotlib<4.0,>=3.9; extra == "paper"
|
|
67
|
+
Requires-Dist: seaborn>=0.13; extra == "paper"
|
|
68
|
+
Requires-Dist: jinja2>=3.1; extra == "paper"
|
|
69
|
+
Provides-Extra: hydra
|
|
70
|
+
Requires-Dist: hydra-core>=1.3; extra == "hydra"
|
|
71
|
+
Provides-Extra: dev
|
|
72
|
+
Requires-Dist: pytest>=8.0; extra == "dev"
|
|
73
|
+
Requires-Dist: pytest-cov>=5.0; extra == "dev"
|
|
74
|
+
Requires-Dist: ruff>=0.6; extra == "dev"
|
|
75
|
+
Requires-Dist: mypy>=1.10; extra == "dev"
|
|
76
|
+
Requires-Dist: pre-commit>=3.5; extra == "dev"
|
|
77
|
+
Provides-Extra: docs
|
|
78
|
+
Requires-Dist: mkdocs>=1.6; extra == "docs"
|
|
79
|
+
Requires-Dist: mkdocs-material>=9.5; extra == "docs"
|
|
80
|
+
Requires-Dist: mkdocstrings[python]>=0.26; extra == "docs"
|
|
81
|
+
Provides-Extra: all
|
|
82
|
+
Requires-Dist: argus-uq[closed,dev,docs,hydra,paper,whitebox]; extra == "all"
|
|
83
|
+
Dynamic: license-file
|
|
84
|
+
|
|
85
|
+
# argus-uq
|
|
86
|
+
|
|
87
|
+
A Python library for uncertainty quantification on vision-language-model
|
|
88
|
+
GUI grounding agents.
|
|
89
|
+
|
|
90
|
+
`argus-uq` is the first reproducible benchmark library that unifies
|
|
91
|
+
**twenty-seven UQ methods across seven families** (logit, sampling,
|
|
92
|
+
consistency, density, attention-trace, verbalised, VLM-native) on the
|
|
93
|
+
four canonical single-step grounding datasets (ScreenSpot-v2,
|
|
94
|
+
ScreenSpot-Pro, OSWorld-G, UI-Vision) for both **open-weight VLMs**
|
|
95
|
+
(Qwen2.5-VL family, UI-TARS-1.5-7B, POINTS-GUI-G-8B) and
|
|
96
|
+
**closed-API frontier vendors** (OpenAI GPT, Anthropic Claude, Google
|
|
97
|
+
Gemini, paneled across the eight vendor-API-feasible methods that share
|
|
98
|
+
formula identity with the open-weight panel).
|
|
99
|
+
|
|
100
|
+
It loads per-item records and 50-seed metric matrices for **16
|
|
101
|
+
open-weight cells and 12 closed-API cells**, re-scores any of the 27 UQ
|
|
102
|
+
methods on user-supplied grounding records, and emits **deployable
|
|
103
|
+
inductive-conformal click-disks** with formal marginal-coverage
|
|
104
|
+
guarantees in three variants (Disk-Fixed, Disk-Normalized, Disk-CQR).
|
|
105
|
+
|
|
106
|
+
The package accompanies the paper *Argus: A Cross-Regime Study of
|
|
107
|
+
Uncertainty Quantification Transferability in Single-Step GUI Grounding*
|
|
108
|
+
(**NeurIPS 2026 Evaluations and Datasets Track**).
|
|
109
|
+
|
|
110
|
+
## Install
|
|
111
|
+
|
|
112
|
+
Python 3.10 to 3.12.
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
pip install argus-uq
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
The wheel bundles the per-item scores, derived tables and subset
|
|
119
|
+
definitions, so `load`, `score`, `conformal_disk` and the CLIs work
|
|
120
|
+
without this repository. The raw closed-source API records
|
|
121
|
+
(`data_release/closed_source_records/`) and the master long CSVs are in
|
|
122
|
+
this repository only; no public call needs them.
|
|
123
|
+
|
|
124
|
+
To work from source:
|
|
125
|
+
|
|
126
|
+
```bash
|
|
127
|
+
git clone https://github.com/divake/argus-uq
|
|
128
|
+
cd argus-uq
|
|
129
|
+
python -m venv .venv && source .venv/bin/activate
|
|
130
|
+
pip install -e . # core library
|
|
131
|
+
pip install -e .[whitebox] # + HF transformers VLM stack
|
|
132
|
+
pip install -e .[closed] # + closed-source vendor SDKs
|
|
133
|
+
pip install -e .[paper] # + paper-reproducing scripts
|
|
134
|
+
pip install -e .[dev] # + linting and testing
|
|
135
|
+
pip install -e .[all] # everything
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
To use your own copy of the data, set
|
|
139
|
+
`export ARGUS_DATA_DIR=/path/to/data_release`.
|
|
140
|
+
|
|
141
|
+
## Quickstart
|
|
142
|
+
|
|
143
|
+
```python
|
|
144
|
+
import argus_uq
|
|
145
|
+
|
|
146
|
+
# Load a cell - per-item records and per-seed scores from the released
|
|
147
|
+
# artifacts.
|
|
148
|
+
cell = argus_uq.load("PTxOSG") # POINTS-GUI-G x OSWorld-G
|
|
149
|
+
|
|
150
|
+
# Score any of the 27 UQ methods. Returns AUROC, PRR_normalized@0.5, AUSE,
|
|
151
|
+
# AURC, ECE_iso, Brier_iso with bootstrap CIs (multi-seed if seeds=50).
|
|
152
|
+
result = argus_uq.score(cell, method="saplma", seeds=50)
|
|
153
|
+
print(result.auroc, result.auroc_std) # ~0.802, ~0.011
|
|
154
|
+
|
|
155
|
+
# Build a deployable conformal click-disk at marginal coverage 1 - alpha.
|
|
156
|
+
disk = argus_uq.conformal_disk(
|
|
157
|
+
cell,
|
|
158
|
+
plug_in="saplma", # any of the 27 UQ methods or "none"
|
|
159
|
+
alpha=0.10,
|
|
160
|
+
variant="normalized", # "fixed" | "normalized" | "cqr"
|
|
161
|
+
)
|
|
162
|
+
print(disk.radius_pixels, disk.coverage)
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
## Reproducing the paper
|
|
166
|
+
|
|
167
|
+
```bash
|
|
168
|
+
argus_reproduce --list # every table name
|
|
169
|
+
argus_reproduce --table cells # the 16+12 cell catalog
|
|
170
|
+
argus_reproduce --table leaderboard # open-weight mean AUROC across cells
|
|
171
|
+
argus_reproduce --table leaderboard_closed # closed-API mean AUROC across cells
|
|
172
|
+
argus_reproduce --table rho # 16x16 cross-cell Spearman matrix
|
|
173
|
+
argus_reproduce --all # every table
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
These commands print the released CSVs in `data_release/derived/`, which
|
|
177
|
+
hold the numbers reported in the paper. `argus_uq.score` and
|
|
178
|
+
`argus_uq.conformal_disk` recompute from the per-item scores with the
|
|
179
|
+
package's own random splits. Their AUROC means differ from the CSVs by
|
|
180
|
+
up to about 0.006, the top method of every closed-API cell is unchanged,
|
|
181
|
+
and their AUSE and conformal radii use different conventions
|
|
182
|
+
from the CSVs, so use the CSVs to compare against the paper.
|
|
183
|
+
|
|
184
|
+
`argus_capture` scores raw per-item signals (logprobs, hidden states,
|
|
185
|
+
sample clicks; see `argus_uq.records.Record`). The released parquets hold
|
|
186
|
+
finished scores, not raw signals, so it returns NaN or chance-level
|
|
187
|
+
metrics on them. Use `argus_score` for released cells.
|
|
188
|
+
|
|
189
|
+
## Layout
|
|
190
|
+
|
|
191
|
+
```
|
|
192
|
+
src/argus_uq/ importable library
|
|
193
|
+
├── api.py the 3-entry-point Listing 1 surface
|
|
194
|
+
├── cell.py Cell dataclass + per-item record loader
|
|
195
|
+
├── factory.py name -> class registry
|
|
196
|
+
├── manager.py ScoringManager (topo-orders stat calculators + estimators)
|
|
197
|
+
├── estimators/ 27 UQ methods (one file per family)
|
|
198
|
+
├── stat_calculators/ inputs to estimators (greedy, samples, hidden, attention)
|
|
199
|
+
├── models/ agent abstractions (whitebox HF + closed-source APIs)
|
|
200
|
+
├── envs/ ScreenSpot-v2, ScreenSpot-Pro, OSWorld-G, UI-Vision
|
|
201
|
+
├── ue_metrics/ AUROC, PRR, AUSE, AURC, ECE, Brier, isotonic
|
|
202
|
+
├── conformal/ Disk-Fixed, Disk-Normalized, Disk-CQR, CRC
|
|
203
|
+
├── analysis/ leaderboard, cross-cell rho, family aggregates
|
|
204
|
+
├── data/ released-artifact loaders (parquets + CSVs)
|
|
205
|
+
└── utils/ paths, seeds, logging
|
|
206
|
+
|
|
207
|
+
examples/ quickstart.py and two cross-cell examples
|
|
208
|
+
tests/ 225 unit + integration tests + 7 live smoke tests
|
|
209
|
+
data_release/ 16+12 per-item parquets, 29 derived CSVs, 4 subsets
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
## License
|
|
213
|
+
|
|
214
|
+
- Code: MIT (`LICENSE`).
|
|
215
|
+
- Released datasets and per-item records: CC-BY-4.0 (`LICENSE-DATA`).
|
|
216
|
+
- Third-party attributions: `NOTICES.md`.
|
|
217
|
+
|
|
218
|
+
## Citation
|
|
219
|
+
|
|
220
|
+
If you use `argus-uq`, please cite the paper (`CITATION.cff` has the same
|
|
221
|
+
information):
|
|
222
|
+
|
|
223
|
+
```bibtex
|
|
224
|
+
@inproceedings{kumar2026argus,
|
|
225
|
+
title = {Argus: A Cross-Regime Study of Uncertainty Quantification
|
|
226
|
+
Transferability in Single-Step GUI Grounding},
|
|
227
|
+
author = {Kumar, Divake and Tayebati, Sina and Naik, Devashri and
|
|
228
|
+
Rios, Amanda Sofie and Ahuja, Nilesh and Tickoo, Omesh and
|
|
229
|
+
Krishnan, Ranganath and Trivedi, Amit Ranjan},
|
|
230
|
+
booktitle = {NeurIPS 2026 Evaluations and Datasets Track},
|
|
231
|
+
year = {2026}
|
|
232
|
+
}
|
|
233
|
+
```
|