longbench2_multi group omits longbench2_legal_multi, so it disagrees with the longbench2 tag roll-up

Author: wanhutigerCreated Sep 16, 2026Updated Sep 16, 2026

Problem

longbench2_multi lists its subtasks explicitly and omits longbench2_legal_multi:

yaml
# lm_eval/tasks/longbench2/_longbench2_multi.yaml
group: longbench2_multi
group_alias: "Multi-Document QA"
task:
  - longbench2_govt_multi
  - longbench2_academic_multi
  - longbench2_fin_multi
  - longbench2_news_multi     # legal_multi missing

legal_multi.yaml exists, is well-formed, and already carries the tag:

yaml
include: _longbench_common_yaml
tag:
  - longbench2_tasks
  - longbench2_multi_tasks    # <- tagged, but not in the group
task: longbench2_legal_multi
dataset_name: legal_multi

Why it is inconsistent rather than intentional

The top-level longbench2 group aggregates by tag, not by an explicit list:

yaml
# _longbench2.yaml
task:
  - longbench2_multi_tasks
  - ...

So the same subtask is included or dropped depending on which entry point is used:

invocation resolves via legal_multi included?
--tasks longbench2 tag longbench2_multi_tasks yes
--tasks longbench2_multi explicit task: list no

All five multi-doc tasks carry longbench2_multi_tasks; only the group manifest disagrees:

group `longbench2_multi` declares: academic_multi, fin_multi, govt_multi, news_multi
tagged longbench2_multi_tasks:     academic_multi, fin_multi, govt_multi, news_multi, legal_multi

tagged but not declared: ['longbench2_legal_multi']
declared but not tagged: []

Impact

--tasks longbench2_multi silently evaluates 4 of the 5 multi-document subtasks, and the aggregate acc (which is weight_by_size: True) is computed over the smaller pool. Nothing warns that a subtask was dropped, and the number is not comparable to the longbench2 roll-up, which does include it.

This is an audit finding, not something I hit at runtime: I scanned every _*.yaml group manifest in lm_eval/tasks against the task files beside it. longbench2 and mela (#4153, already being fixed in #4154) were the only two directories where a task file existed but no sibling group referenced it.

Expected behavior

longbench2_multi should cover the same five tasks the tag does.

Proposed resolution

Add longbench2_legal_multi to _longbench2_multi.yaml. Happy to open a PR if that is the direction you want — flagging it first in case the omission was deliberate (e.g. a dataset-availability issue with the legal split that I am not aware of).


Found with AI assistance; I verified the manifest/tag comparison myself.

Source: EleutherAI/lm-evaluation-harness