WebArena-Verified reward averages evaluator scores instead of using the benchmark's task score (partial credit for failed tasks)
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 32/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- playwright, python
- 領域
- backend, testing-qa
調査の方向性
Read WebArenaVerifiedEvaluator.__call__ in browsergym/webarena_verified/src/browsergym/webarena_verified/evaluators.py around lines 124–131, then inspect the harness TaskEvalResult.create behavior described in the issue. Reproduce task 44 with one passing and one failing evaluator, and add a test for the task-level score. Done means BrowserGym returns the harness score of 0.0 for failed or errored tasks instead of averaging evaluator scores; the issue author says they plan to open a PR.
索引モデルが issue の本文から書いたものです。
説明
WebArenaVerifiedEvaluator.__call__ returns the mean of the per-evaluator scores when a task has several evaluators:
webarena-verified scores a task differently. In TaskEvalResult.create (webarena-verified 1.2.3, types/eval.py), the task score is 1.0 only if every evaluator scores 1.0, and 0.0 if any evaluator fails or errors. A task whose answer is correct but whose required backend change was never made is a failure in the benchmark. In BrowserGym it gets a reward of 0.5.
This happens on a lot of tasks: 488 of the 812 tasks in webarena-verified.json have two or more evaluators (391 have 2, 97 have 3 to 11). AgentLab reports avg_reward, the mean of cum_reward, so these partial rewards go straight into the reported success rate. That number is then higher than what the official harness would report for the same runs.
Reproduced on main at 4ccc723 with webarena-verified 1.2.3. I called the evaluator on task 44 (AgentResponseEvaluator + NetworkEventEvaluator), with the harness mocked to return its own TaskEvalResult for one passing and one failing evaluator. The browser trace, WebArena instance and Playwright were stubbed.
per-evaluator scores=[1.0, 0.0] webarena-verified task score=0.0 (failure) BrowserGym reward=0.5
The same happens when one evaluator passes and the other errors: the harness reports status error, score 0.0, and BrowserGym returns 0.5.
The docstring of __call__ already says it returns "1.0 or 0.0". I'll open a PR that returns results.score, the harness's task score, and adds a test.
- 主要言語
- Python
- スター
- 1.4k
- フォーク
- 202
- 平均マージ
- 6日 12時間
- マージ済み PR(30日)
- 2
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
ServiceNow/BrowserGym のほかの issue
-
[Feature Proposal]: Add experiment lifecycle callbacks to `ExpArgs` in `loop.py`対応中かも @sriram687 が今日担当しました。 オープン
ServiceNow/BrowserGym#417 · 担当者 1 名 ·
-
full_reset() gives no signal whether the environment was reset; skipped reset is indistinguishable from a successful one対応中かも @Tharun-Varshan-S が 6 日前に担当しました。 オープン
難易度 4/5 3〜5日 初心者へのやさしさ 38/100
ServiceNow/BrowserGym#406 · コメント 3 件 ·
-
AssistantBench scorer treats a thousands separator as a decimal point: "3,080,000" scores 0 against gold 3080000, while "1,000" scores 1.0 against gold 1対応中かも @Andiii208 が 25 日前に担当しました。 オープン
難易度 3/5 1〜2日 初心者へのやさしさ 25/100
ServiceNow/BrowserGym#404 · コメント 1 件 ·
-
難易度 5/5 1週間以上 初心者へのやさしさ 28/100
ServiceNow/BrowserGym#401 ·
-
`miniwob.find-greatest` can be marked successful after selecting a non-maximum card対応中かも @jstar0 が 102 日前に担当しました。 オープン
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
ServiceNow/BrowserGym#392 ·
ServiceNow/BrowserGym の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
btclib-org/btclib-wallet#587 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
documentation
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
Judgment-Pack/judgment-pack-spec#275 ·
メンテナーはふだん 1 日以内に返信
-
ai-generated
難易度 2/5 1〜3時間 初心者へのやさしさ 77/100
メンテナーはふだん 1 日以内に返信
-
documentation good first issue priority: low size: XS
難易度 1/5 1〜3時間 初心者へのやさしさ 92/100
yeongseon/azure-functions-doctor-python#651 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
Changaco/python-libarchive-c#146 ·