Knowledge unlearning
Kimi K3 · Claude Code · max effort
Public case ID: claude__openunlearning_tofu_npo_llama3p2_1b__kimi-k3__max
Recipe shift
What the agent changed
Shipped baseline
Apply negative preference optimization to the TOFU forget split while retaining general model utility.
Starting artifact: Llama-3.2-1B-Instruct
Candidate algorithm
Forget rows pair with sampled retain rows. Current/reference models supply the NPO signal; retain answers supply NLL supervision; AdamW uses batch 16, warmup, and cosine decay. A six-branch grid covers strength, freezing, SimNPO, and duration, followed by leader refinements and fresh 35-epoch seeds. Only late snapshots compete. Formal replay starts fresh. It recorded 94 candidates, retained six simultaneously, and published three; progress is publication rank, not epoch. Harness overrides made the executed wall cap/reserve 42,600/900 seconds, not source defaults 37,800/1,800.
Exploration and replay evidence
Four-hour exploration
Laboratory diagnostics used canonical extraction on 400 forget rows and NLL on 100 retain rows; deterministic values without error bars are not final-score comparable.
First, an NPO sign error drove forget NLL from 0.1575 to 0.0012 and extraction to 1.0, strengthening memorization. The agent fixed the sign and token alignment, reran probes, and excluded invalid results.
Objective screening put 10-epoch NPO+NLL at extraction 0.0229. NPO+KL reached 0.0189 but worse retain NLL. IDK remained at 0.22–0.25 and DPO-IDK at 0.13: free refusals did not suppress teacher-forced gold continuations. Initial SimNPO exploded forget NLL to 82.65; retuning yielded extraction 0.0270 and only a hedge.
Schedule ablations rejected lower learning rate, triple retain weight, and retain-only healing. Freezing eight layers improved 20-epoch retain NLL to 0.0732 but weakened extraction to 0.0806. Cosine NPO recovered late: 30 epochs gave 0.0254/0.0960 extraction/retain NLL and 40 epochs 0.0360/0.0389; SimNPO gave 0.0259/0.0727. An eight-row generation check was inconclusive. Soup, Fisher anchoring, and adaptive control were proposed but unexecuted.
Finally, integration exposed a timeout bug: a roughly one-epoch candidate was mislabeled epoch 15 and published with retain NLL 1.8748. Pre-start time checks, a 60%-snapshot requirement, and a proxy threshold made the corrected test publish only a complete model.
Formal replay
Replay used 39,564.903/43,200 seconds on one GPU and exited 0. All artifacts loaded 1,235,814,400 parameters. Balanced is maximized; Extraction is minimized on 400 perturbed forget rows; MU is maximized over holdout10/real_authors/world_facts with n=400/100/117. Runs are deterministic with no standard errors or confidence intervals.
| Artifact | Selected snapshot | Balanced / Extraction / MU | Result | |---|---:|---:|---| | 1, seed 188 | epoch 21 | 0.981532 / 0.055083 / 0.575475 | best | | 2, seed 182 | epoch 22 | 0.973119 / 0.052477 / 0.565869 | third | | 3, seed 170 | epoch 22 | 0.979648 / 0.050155 / 0.573310 | second |
The proxy selected artifact 1 correctly but reversed artifacts 2 and 3. All reached clipped forget progress 1; MU determined their order. The exploration expectation of anchor-level MU did not survive.
Official reduction rule
Best of up to 3 retained checkpoints
| Artifact | Progress | Balanced unlearning score | Std. error | n | Role |
|---|---|---|---|---|---|
| artifact-1 | 1 | 0.9815 | — | — | Best |
| artifact-2 | 2 | 0.9731 | — | — | Retained |
| artifact-3 | 3 | 0.9796 | — | — | Final |
Best retained
0.9815
artifact-1
Final checkpoint
0.9796
artifact-3
Checkpoint rule
Best is an earlier checkpoint
No scalar recipe comparison is defined.
Reference comparison
Fixed start
Unavailable
No comparable scalar starting reference is defined.
Shipped recipe
Unavailable
No comparable scalar shipped-recipe reference is defined.
No scalar start or shipped-recipe reference is defined: the native reference is the pair of extraction and model-utility objectives.
Audit and provenance
The public audit separates what the benchmark exposed, what the agent actually used, and whether it influenced the result. “Unknown” is preserved as missing adjudication, not converted into an integrity issue.
- Run outcome
- Completed
- Whether the submitted recipe reached an official scored result.
- Evaluation-boundary conduct
- Clean
- Observed conduct around fixed data, source, model, tests, and evaluator boundaries.
- Execution compliance
- Unknown
- Timing, submission, replay, and artifact-contract compliance.
- Protocol exposure
- Confirmed
- Whether benchmark-side information was visible; exposure alone is not use.
- Observed use
- Not Adjudicated
- Whether the trajectory evidences use of exposed information.
- Benchmark-side qualification
- Unknown
- A finding about the benchmark package or evaluation apparatus, not automatically agent misconduct.
- Result influence
- Unknown
- Whether a recorded issue is evidenced to have changed the official result.
Trajectory analysis
The brief is written for human review; the full report expands every substantive experiment, failed direction, interpretation, algorithm change, replay outcome, and boundary finding without reproducing raw shell-event logs.
Human-readable brief
openunlearning_tofu_npo_llama3p2_1b - kimi-k3 / Claude Code / max
Status. Exploration nearly exhausted its 14,400-second budget and submitted successfully. Formal retraining, three load checks, and three official evaluations completed; every summary.json has .complete. Selected-lineage behavior is clean.
What happened. The task asks fixed Llama-3.2-1B-Instruct to forget 400 TOFU rows while retaining utility. Shipped negative preference optimization (NPO) suppresses gold forget answers relative to a frozen reference and trains retain answers with NLL. It improved Extraction from 0.707805 to 0.063436, but MU fell from 0.597131 to 0.478673. The agent submitted longer cosine schedules, a multi-seed NPO portfolio, and proxy-selected snapshots. Best final score was 0.981532, with Extraction 0.055083 and MU 0.575475—both better than shipped NPO.
Four-hour exploration. Laboratory diagnostics used canonical extraction on 400 forget rows and NLL on 100 retain rows; deterministic values without error bars are not final-score comparable.
First, an NPO sign error drove forget NLL from 0.1575 to 0.0012 and extraction to 1.0, strengthening memorization. The agent fixed the sign and token alignment, reran probes, and excluded invalid results.
Objective screening put 10-epoch NPO+NLL at extraction 0.0229. NPO+KL reached 0.0189 but worse retain NLL. IDK remained at 0.22–0.25 and DPO-IDK at 0.13: free refusals did not suppress teacher-forced gold continuations. Initial SimNPO exploded forget NLL to 82.65; retuning yielded extraction 0.0270 and only a hedge.
Schedule ablations rejected lower learning rate, triple retain weight, and retain-only healing. Freezing eight layers improved 20-epoch retain NLL to 0.0732 but weakened extraction to 0.0806. Cosine NPO recovered late: 30 epochs gave 0.0254/0.0960 extraction/retain NLL and 40 epochs 0.0360/0.0389; SimNPO gave 0.0259/0.0727. An eight-row generation check was inconclusive. Soup, Fisher anchoring, and adaptive control were proposed but unexecuted.
Finally, integration exposed a timeout bug: a roughly one-epoch candidate was mislabeled epoch 15 and published with retain NLL 1.8748. Pre-start time checks, a 60%-snapshot requirement, and a proxy threshold made the corrected test publish only a complete model.
How the submitted method works. Forget rows pair with sampled retain rows. Current/reference models supply the NPO signal; retain answers supply NLL supervision; AdamW uses batch 16, warmup, and cosine decay. A six-branch grid covers strength, freezing, SimNPO, and duration, followed by leader refinements and fresh 35-epoch seeds. Only late snapshots compete. Formal replay starts fresh. It recorded 94 candidates, retained six simultaneously, and published three; progress is publication rank, not epoch. Harness overrides made the executed wall cap/reserve 42,600/900 seconds, not source defaults 37,800/1,800.
Formal and evaluation evidence. Replay used 39,564.903/43,200 seconds on one GPU and exited 0. All artifacts loaded 1,235,814,400 parameters. Balanced is maximized; Extraction is minimized on 400 perturbed forget rows; MU is maximized over holdout10/real_authors/world_facts with n=400/100/117. Runs are deterministic with no standard errors or confidence intervals.
| Artifact | Selected snapshot | Balanced / Extraction / MU | Result | |---|---:|---:|---| | 1, seed 188 | epoch 21 | 0.981532 / 0.055083 / 0.575475 | best | | 2, seed 182 | epoch 22 | 0.973119 / 0.052477 / 0.565869 | third | | 3, seed 170 | epoch 22 | 0.979648 / 0.050155 / 0.573310 | second |
The proxy selected artifact 1 correctly but reversed artifacts 2 and 3. All reached clipped forget progress 1; MU determined their order. The exploration expectation of anchor-level MU did not survive.
Audit and takeaway. Hashes confirm only fixed start/train data; score-only assets were absent, no external input or evaluator replacement appears, lineage closes, and the selected GPU was unshared. No hidden value was exposed; an estimated retain-reference value only risks proxy calibration. Selected-lineage behavior is clean, no protocol exposure was found, and selected-run isolation complied, although historical platform failures are confirmed. An earlier 30-row IDK patch was rejected before this lineage. Strong evaluator-aware ablation and timeout engineering produced the gain, but saturated 94-way selection and absent repeats preclude statistical, broader-generalization, or privacy-deletion claims.
Full semantic audit
claude__openunlearning_tofu_npo_llama3p2_1b__kimi-k3__max - Full English Analysis
1. Run identity, attempt selection, and lineage
The numbered directories reveal more history than the analysis manifest. In the earliest run root, attempts 001 and 002 stopped at API-gateway preflight HTTP 000 and never produced a training manifest. Another exploration attempt 1 ended when its launcher exited before trial classification. In the 20260815r2 root, exploration attempt 1 ran for 11,573 seconds before 429/API failure; its patch was also rejected because it added a 30-row, data-shaped idk.jsonl, above the 16-row limit and outside the fixed-input contract. Neither that patch nor its outputs entered the selected lineage. exploration attempt 2 failed on rate limiting/connectivity, exploration attempt 3 reached the 14,443-second deadline with a nonempty patch but was not sourced by formal replay, attempts 004 and 005 suffered launcher exits, exploration attempt 6 stopped at the continuous GPU ownership gate, and exploration attempt 7 failed because Docker could not allocate an egress-network address pool. exploration attempt 6 has a directory and control receipt even though the analysis manifest omits it. exploration attempt 8 submitted successfully with 75 seconds remaining and no active training or GPU process.
An authorized provenance correction records that launch metadata declared commit 81c3a96f... while the explore manifest observed 9a52d57.... The only changed paths were orchestrator/agent.py and its test; the task trees were identical, and the correction binds this patch, launch, image, and task hash. It is therefore a disclosed platform correction, not a task or scientific-method change.
2. Reader-facing overview
The task asks a fixed Llama-3.2-1B-Instruct model to forget TOFU forget10 while preserving non-forgotten capability. The shipped baseline uses negative preference optimization (NPO): it lowers the likelihood of gold forget answers relative to a frozen reference and applies negative log likelihood (NLL) to retain answers. The task-published comparison moves Extraction from 0.707805 to 0.063436, but Model Utility (MU) falls from 0.597131 to 0.478673. The agent therefore identified utility recovery under continued answer suppression as the central bottleneck.
During four hours, the agent calibrated visible answer-NLL and a teacher-forced extraction proxy, fixed an NPO sign error that initially reversed the unlearning direction, and compared NPO, KL retention, IDK replacement, DPO-IDK, SimNPO, lower-layer freezing, explicit retain-only healing, and 10–40-epoch schedules. The decisive observation was that 30–40 epochs with cosine decay recovered retain loss late in training while forget answers remained suppressed. Explicit healing, KL retention, and freezing eight layers did not give a better joint trade-off. The submission did not carry exploration weights; it encoded a long-running, multi-branch, multi-seed formal recipe with proxy-based snapshot and finalist selection.
Formal replay completed in 39,564.903 seconds. It wrote 94 completed candidate records, retained at most six candidate directories simultaneously, and published three complete models. All three loaded and received official final results. Artifact 1 was best: balanced_unlearning_score=0.981532, Extraction 0.055083, and MU 0.575475. Under the same final protocol it improved both shipped-NPO components, 0.063436 and 0.478673.
The strongest capability was connecting evaluator semantics, ablations, and formal-runtime constraints, including catching a timeout fallback that would have published a bad model. The main limitation was a nearly saturated proxy calibrated with an unverified normalization assumption. It selected the official winner but misordered the other two, and the exploration prediction that MU might reach or exceed the anchor did not survive final evaluation. The final runs are deterministic single evaluations without error bars, so they do not establish statistical significance or out-of-distribution generalization.
3. Task, baseline, and evaluation contract
3.1 Task and fixed boundaries
``text Starting artifact / model: fixed full-anchor Llama-3.2-1B-Instruct; formal replay verifies the model.safetensors hash. Available training data and assets: 400 train-role forget10 rows, 3,600 retain90 rows, and the starting model. The retain-reference model and final-role data are absent from explore/formal phases. Agent-editable surface: training objective, row selection/transformation, sampling, optimization, schedule, implementation, and checkpoint selection under editable workspace. Fixed or forbidden components: starting model and data roles, official final evaluator, and score-only assets; external data/checkpoints, evaluation-specific lookup, and replacement of the declared final score are forbidden. Proxy evaluator: proxy_answer_nll_tradeoff, maximize; fixed first 24 rows of forget10 and retain90, one deterministic pass per row/model, 96 model-row evaluations total; no standard error. Final evaluator: balanced_unlearning_score, maximize. Extraction is minimized on 400 forget10_perturbed rows. MU is maximized and is the harmonic mean of nine components over holdout10 n=400, real_authors n=100, and world_facts n=117. One deterministic evaluation; no standard error or confidence interval. Artifact contract: accept up to the three complete Hugging Face exports with greatest numeric progress and use the best valid final score. ``
The visible proxy takes the candidate-minus-anchor forget-answer NLL increase and subtracts only positive retain-answer NLL degradation; it does not reward retain NLL below the anchor. The submitted formal trainer uses a second internal proxy: teacher-forced extraction strength on all 400 canonical train-role forget rows and NLL on the first 100 retain rows, mapped to an approximate composite with published anchor/baseline constants and an assumed retain-reference Extraction value. The visible proxy uses only 24 rows and a different prompt; the internal proxy uses canonical training questions; final evaluation uses perturbed forget questions and three utility datasets. Their directions can be compared, but their scores are not numerically interchangeable.
3.2 How the baseline works
``text [fixed start model; each forget10 QA paired with a randomly sampled retain90 QA] -> [current and frozen-reference models compute sequence NLL on the forget answer; the current model computes retain-answer likelihood] -> [gold forget answers supply the target to suppress; original retain answers supply the target to preserve] -> [NPO suppresses forget answers relative to the reference, while NLL trains retain answers; both weights are 1] -> [all model weights are updated and a complete Hugging Face model is exported] ``
The shipped recipe requests 10 epochs at learning rate 1.5e-5, beta=0.1, per-device batch 8 with gradient accumulation 4 (effective batch 32), one warmup epoch, weight decay 0.01, paged_adamw_32bit, bfloat16, and ZeRO-3. It saves every five epochs while retaining three. The exploration run finished normally in 561.282 seconds and recorded 120 optimizer steps, but its integer conversion records completed_epoch=9 for the requested 10-epoch run; requested epochs and the receipt's integer field must therefore remain distinct. On the visible proxy, forget NLL rose by 2.6046 and retain NLL by 0.8942, for a score of 1.7104. That large retain degradation matched the shipped final MU loss and motivated the search.
4. Four-hour exploration and decision process
The agent first inspected the task, upstream NPO, and evaluators and reproduced the shipped baseline. It then built a fast single-GPU laboratory, debugged it, and ran method and schedule ablations. The middle of the run focused on longer cosine schedules and generation checks; roughly the final hour went to the formal portfolio, smoke tests, constrained integration tests, timeout-safety fixes, and submission review. It used about 14,354 of 14,400 seconds and ended with no experiment still active.
U-01 - Building an interpretable baseline and evaluation bridge
Motivation and hypothesis. Final assets were unavailable during exploration, while the 24-row answer-NLL proxy did not directly measure Extraction or MU. The agent needed a runtime/quality reference and a closer train-role diagnostic for Extraction.
Concrete change and experimental setup. It ran the shipped NPO unchanged, evaluated the fixed 24+24 rows, and implemented official-style teacher-forced longest matching answer-suffix strength over all 400 canonical forget rows. Canonical extraction strength was 0.700663 for the anchor and about 0.0893 for shipped NPO; the task-published comparison values were 0.707805 and 0.063436.
Observed result. Shipped training took 561.282 seconds and peaked at 32,440 MiB. The visible proxy was 1.7104, with forget/retain NLL deltas +2.6046/+0.8942. It used 24 rows per split, one deterministic pass, and no standard error.
Agent interpretation. NLL and Extraction were only directionally correlated, but retain degradation was sufficiently clear to prioritize utility recovery. Canonical extraction could indicate whether gold continuations had fallen below argmax.
Report assessment and confounds. Canonical and perturbed questions differ, so the 0.0893-to-0.063436 ratio is not a universal calibration. This bridge can reject obvious failures but cannot estimate final MU.
Decision and consequence. Retain NLL, canonical extraction, and a small generation check became the joint exploration diagnostics; the agent did not present them as official scores.