| Name | Size | Uploaded | Xet hash |
|---|---|---|---|
| data | 3 items | ||
| logs | 917 items | ||
| README.md | 6.99 kB xet | aa81e6b8 | |
| logs_manifest.csv | 96.6 kB xet | c49d306a |
Inference scaling paper — data release (with eval logs)
This package contains the analysis tables and the Inspect AI .eval trajectory logs behind the paper's main analysis.
Benchmarks: FrontierMath (frontiermath), SWE-Bench Pro
(swebenchpro), HealthBench (healthbench), Humanity's Last Exam
(hle), Terminal-Bench (terminalbench). The paper's cyber CTF, TLO and
CT evaluations are not part of this release.
Models: claude-opus-4-0, claude-opus-4-5, claude-opus-4-6, gpt-5-2025-08-07, gpt-5.2-2025-12-11, gpt-5.4-2026-03-05.
Conditions: S-adaptive (no feedback), S-adaptive+C (oracle feedback).
Files
data/trajectory_data.csv — one row per trajectory
The unit of analysis: a single agent run on a single benchmark task under
one (model, condition, token limit). Adds stopping_reason,
error_message, and trajectory-level token totals to the key columns.
data/submission_data.csv — one row per answer submission
Each trajectory may submit multiple candidate answers. submit_number is
the 1-based submission index; score is the submission's score
(benchmark-specific scale; 0/1 for pass–fail benchmarks,
continuous for HealthBench). The unprefixed token columns
(output_tokens_target_model, input_tokens_all_models, ...) are
cumulative counts at the moment of the submission, so they give the
inference spend up to each answer.
data/turn_data.csv — one row per agent turn
turn_number is the 1-based turn index; working_time / wall_time are
seconds since the trajectory started. The unprefixed token columns are
cumulative counts up to and including the turn.
Note on loading: the CSVs carry full double precision. To reproduce the
source values bit-exactly with pandas, pass
float_precision="round_trip" to read_csv — the default fast parser
can be one unit-in-the-last-place off on a handful of values.
Key columns shared by all three tables:
| Column | Description |
|---|---|
eval |
Benchmark: frontiermath, swebenchpro, healthbench, hle, terminalbench. |
model |
Evaluated model (the "target model"). |
condition |
Agent scaffold condition (S-adaptive = adaptive serial scaling; S-adaptive+C = the same plus context compaction). |
sample_id |
Benchmark task/sample identifier. |
epoch |
Repeat index of this task used in the analysis (epochs are re-assigned when trajectories are aggregated across runs). |
original_epoch |
Epoch recorded inside the .eval log. Use (log_file, sample_id, original_epoch) to locate the corresponding sample in a log. |
token_limit |
Token budget for the trajectory. |
log_file |
Package-relative path (logs/...) of the Inspect .eval log the row was extracted from. |
submit_count / turn_count |
Number of answer submissions / agent turns in the trajectory. |
total_*_tokens_* |
Trajectory-level token totals. target_model = the evaluated model; other_models = auxiliary models (e.g. the gpt-4o-mini repetition-guard judge); all_models = both. |
stopping_reason (trajectory table) takes: completed_with_submit,
completed_no_submit, token_limit (budget exhausted — a normal outcome
under inference-scaling conditions, not an error), repetition_guard
(stopped after repeated identical submissions). Trajectories that errored
at the framework level were excluded upstream and re-run, so they do not
appear here (error_message is always empty).
Provenance and filtering
Trajectories were produced with Inspect AI and post-processed as follows:
- Trajectories that failed at the framework level were excluded and
re-run. A sample was treated as errored/incomplete if (a) it carried a
framework error (
sample.error), (b) its event stream contained anErrorEvent(retry-wrapped or sandbox-adapter failures), or (c) any of its submissions received no valid score ("silent scorer"). Failing tool calls (non-zero exits etc.) are normal agent behaviour and were not treated as errors. - Trajectories were aggregated across runs, capped to the target number of epochs per task, and restricted to a canonical task subset per benchmark; submissions without a valid score were dropped.
- Rows for evals not included in this release (cyber CTFs, TLO, CT) were removed.
Notes for exact reproduction:
- These tables are byte-for-byte the analysis inputs used for the paper
(only the excluded evals' rows were removed and
log_filepaths were made package-relative). Analyses that pool across the full seven-eval set in the paper will differ where the excluded evals contributed. - A small number of turn/submission rows reference trajectories that have
no
trajectory_data.csvrow: they come from superseded logs whose per-turn rows remained in the analysis cache and contributed to the paper's typical-token-budget calculation. They are retained to keep the shared data identical to the paper's inputs. - One referenced log (
logs/hle/flow_S-adaptive_HLE_gpt-5.2_5M_e1_s3.eval, 21 rows) no longer exists and is absent from the full package.
Eval logs (logs/)
Every .eval file referenced by the tables' log_file column, grouped
into one directory per benchmark (logs/frontiermath/,
logs/healthbench/, logs/hle/, logs/swebenchpro/,
logs/terminalbench/). Each filename begins with a prefix recording
where the run originally lived: flow_completed_ / flow_partial_ =
the main experiment run (partial logs were salvaged from interrupted
runs and carry no header-level results); from_ole_ = supplementary
SWE-Bench Pro runs; iterations_<timestamp>_ = pilot runs whose data
feeds the analysis. Files are Inspect AI eval logs; read them with
from inspect_ai.log import read_eval_log, read_eval_log_samples
log = read_eval_log("logs/hle/<name>.eval") # full log
samples = read_eval_log_samples("logs/hle/<name>.eval",
all_samples_required=False) # streaming
or browse them with inspect view --log-dir logs/.
Errored/incomplete samples (definition above) were removed from the shared logs:
- Logs consisting only of errored samples are excluded entirely.
- Logs mixing complete and errored samples were rewritten with the
errored samples removed. Rewritten logs' header-level
results/statsblocks predate the removal and may overcount — per-file original/kept/removed counts are inlogs_manifest.csv. - Untouched logs were copied byte-for-byte.
logs_manifest.csv lists every referenced log with its action
(copied / rewritten / excluded_all_errored / missing_at_source)
and per-reason removed-sample counts.
Match a table row to its log sample via
(log_file, sample_id, original_epoch) — original_epoch corresponds to
the sample's epoch field inside the log. Because logs are shared
per-file, they may also contain samples (extra epochs, non-canonical
tasks) that the filtered tables do not use.
- Total size
- 20.2 GB
- Files
- 922
- Last updated
- Aug 11
- Pre-warmed CDN
- US EU US EU