OWL/Wanda pruning at 70 percent sparsity
Improve activation-aware pruning of OPT-6.7B at exact 70 percent unstructured sparsity
What the agent may check
wikitext2_validation_perplexity lower is better · available throughout the four hours What decides the score
wikitext2_test_perplexity lower is better · run afterwards, never visible to the agent Validity: decoder sparsity in [0.699, 0.701] and loadable artifact
How this task ran
- Starts from
- facebook/opt-6.7b@a45aa65b
- Shipped method
- owl_wanda_unstructured_pruning
- Method source
- luuyin/OWL@dddb7a4bffe27c73e4c8cf692b3a5e36401532c8
- Agent budget
- 4 h on 1×B300
- Retrain budget
- 12 h, 3 checkpoints kept, best valid of up to 3
- Container
- 8 CPU · 64 GB RAM · no network
Across the 29 configurations that attempted it, the mean score is 0.325, the best single result is 0.420 (Claude Opus 5 at low), and 2 configurations finished below the code the repository already shipped.
What is in the box
solution/ the agent may rewrite all of it
owl_opt.pyprune.pyrun.sh
harness/ frozen; runs outside the workspace
fast_eval.pyfast_eval.shfinal_eval.pygrade.pytimer.sh
environment/ the pinned image
assets.lock.yamlcheck_image.pyDockerfilepatch_validator_device_map.pyruntime-requirements.inruntime-requirements.lock
Pinned assets
models/densefacebook/opt-6.7b@a45aa65bbeb77c1558bc99bedc6779195462dab0data/c4allenai/c4@1588ec454efa1a09f29cd18ddd04fe05fc8653a2, pinned English sharddata/wikitext2/validationSalesforce/wikitext@b08601e0, fast evaluation onlydata/wikitext2/testSalesforce/wikitext@b08601e0, score only
The instruction, as the agent received it
Produce a better unstructured sparse OPT-6.7B artifact from the fixed dense model and available calibration asset. The shipped solution uses activation-aware OWL/Wanda pruning without fine-tuning; that is a baseline method, not a restriction on candidate training.
You have up to four hours for exploration. Do not run work only to consume time, but do not treat a submit-ready candidate as completion. Preserve each trustworthy candidate as a fallback and continue scientifically meaningful exploration while the remaining budget can support experiments whose results can be completed and interpreted.
Before submitting, check the remaining budget and the plausible directions that have not yet been tested. A candidate being better than the current reference, loadable, reproducible, or artifact-valid establishes that it is a fallback; none of those facts alone establishes that exploration is complete. The default action when substantial usable budget remains is to continue exploring, analyzing, or validating.
Early submission is appropriate only when no further meaningful experiment can be completed and interpreted within the remaining budget. Do not submit merely because the current candidate is good enough or has passed its validation checks.
The submitted patch is applied in a fresh formal container for a construction run of up to 12 hours. It reconstructs each sparse artifact from the fixed dense model and calibration data, and exploration weights are not reused.
Your submission must encode a long-running recipe designed to make meaningful use of the formal training budget. It must not normally terminate early only because of a short fixed step or epoch limit.
Your formal recipe may decide when and how often to save complete and loadable checkpoints. Save each checkpoint under /out/checkpoints/checkpoint-<progress>/, where <progress> is numeric and increases with training or construction progress.
If more than three valid checkpoints are produced, only the three with the greatest <progress> values will be accepted. Every accepted checkpoint will be evaluated independently, and the run's official result is the best valid final score among them. The harness handles final artifact collection and final evaluation.
Producing one complete pruning construction is valid; its checkpoint must be a complete model loadable by the frozen evaluator.
Evaluation boundary
The exploration metric is wikitext2_validation_perplexity; the final metric is wikitext2_test_perplexity. Lower is better for both. Validation text is available during exploration; test text is mounted only during scoring.
The hard artifact gate requires decoder sparsity in [0.699, 0.701] and a loadable model. The fixed dense model is the pre-pruning start and a useful quality reference, but its zero sparsity makes it ineligible as a final task artifact. Dense and sparse perplexities may be compared to quantify sparsification cost, not as two gate-valid submissions.
The dense training start and available C4 calibration shard are fixed. Candidates may change pruning, search, calibration use, objectives, and may train using only the available asset. Formal test scoring uses the frozen evaluator outside the submitted workspace. Do not import external data or weights, read test text during exploration or construction, exceed the declared sparsity window, or implement an evaluation-specific lookup.
Shipped solution reference
The fixed dense reference and shipped sparse solution have the following test results:
| Artifact | Sparsity gate | Final test perplexity |
|---|---|---|
| Fixed dense reference | Fails: zero sparsity | 10.860456 |
Shipped sparse solution, seed 0 | Passes | 53.997456 |
Shipped sparse solution, seed 1 | Passes | 52.617988 |
Shipped sparse solution, seed 2 | Passes | 53.461515 |
| Shipped sparse solution, mean | Passes | 53.358987 |
The sparse mean is +42.498531 perplexity above the dense reference. This is the observed quality cost of producing a 70%-sparse artifact, not an improvement delta between two gate-valid task artifacts.
| Resource measurement | Result |
|---|---|
| Prune and export time | 203.67-208.50 s |
| Final scoring time | 101.80-104.52 s |
| Peak GPU memory | 23,340 MiB |
The spread across calibration seeds is material relative to small perplexity changes. Use that observed spread when deciding whether another calibration seed, deeper analysis, or a different candidate is the best use of the remaining budget.
Work surface
Read /workspace/run.sh, activation collection, scoring, layer allocation, calibration sampling, mask construction, optional training, artifact export, and sparsity checker. Everything under /workspace is editable; OWL/Wanda is the shipped implementation rather than an enforced family. These examples are illustrative, not exhaustive; they do not restrict any other change within the fixed task boundaries.
A candidate must preserve the declared global sparsity window and export a loadable model. Layer-wise allocation and training method may change, but a lower perplexity obtained by retaining extra weights or using test text is not comparable.
Running experiments
Use a new output directory for every attempt:
OUTPUT_DIR=/out/probe-name bash /workspace/run.sh
/opt/harness/fast_eval.sh /out/probe-name/pruned
/opt/harness/timer.sh
Preserve calibration identity, layer sparsities, mask statistics, construction time, peak memory, artifact hash, sparsity-check payload, evaluator payload, and failures. Stop a failed candidate on load failure, sparsity failure, non-finite scores, external-weight use, or clear matched-evaluation regression. Stopping one candidate does not by itself end exploration.
Formal replay
Formal construction applies candidate.patch to a fresh /workspace and invokes exactly:
bash /workspace/run.sh
It does not reuse exploration weights, masks, caches, output directories, or shell exports. The command must reconstruct every saved sparse checkpoint from the fixed dense model and calibration shard; each accepted checkpoint is gate-checked and scored independently.
Submission
A smoke or startup check proves only that the code can begin; it is not performance evidence.
Before ending exploration, wait for every training, evaluation, and background command and read its result, or stop it explicitly and record why. Preserve the best trustworthy candidate as a fallback while exploring other directions.
Before the final action, verify the final sparsity report and artifact loadability.
Before submitting, verify that the patch encodes the long formal recipe and checkpoint-saving policy described above.
When no further meaningful experiment can be completed and interpreted within the remaining budget, verify the final source and artifacts, then run /opt/harness/submit.sh as the final action. If no candidate is trustworthy, use /opt/harness/no_candidate.sh "reason". Deadline capture is recovery only and is not a normal submission path.