Choosing which protein variants to measure when every experimental well counts
epibudget is a Python tool and evaluation study for budgeted protein experiments. It separates predicted fitness from experimental value, compares label-blind plate-selection strategies, and documents what the resulting evidence can, and cannot, support.
Key finding
Historical v1 downstream studies showed that measurement design mattered: particular loop-count plates outperformed fitness-greedy plates on GB1 and TrpB. Masking dispersion has not yet shown added value beyond loop coverage. A subsequent audit sharpened the recovery question and led to a stricter Fourier-coefficient test.
The problem in one sentence
A four-site design generates 29,678 candidate variants and a plate measures 96 of them, so the scarce resource is not the candidate but the measurement.
Under budgets of 48, 96, or 192 wells, that scarcity decides whether an experiment concentrates on predicted winners or samples the variants that constrain how mutations interact. epibudget selects measurements; it is neither a fitness optimizer nor an epistasis-inference package.
What was built
Given a wild-type sequence, candidate positions, a budget B, and an ESM-2 checkpoint, the CLI returns an ordered list of B single-, double-, and triple-mutant variants.
- Conjoint ESM-2 scoring applies every mutation in a variant before computing conditional scores, preserving context-dependent interaction signal.
- Interaction-graph construction represents WT-referenced pairwise and third-order inclusion–exclusion families.
- Label-blind allocation ranks candidates before measured fitness enters the pipeline: loop-count allocation (named
structuralin the artifacts) uses interaction-term coverage alone, whereasinfoweights that coverage by ESM masking dispersion. - Downstream evaluation fits the same pairwise-ridge learner to each selected plate and scores held-out double and triple mutants.
Interaction-term coverage, masking dispersion, and predicted fitness remain separable signals, allowing their contributions to be evaluated independently.

From target protein to experimental plate
Candidates are scored and ranked without any access to measured fitness. A fixed budget then converts that ranking into the plate that will be measured.
Evidence status
The boundary below is what the tracked artifacts currently support. It is narrower than the project's original framing, because an audit of the recovery metric showed that predicted and measured epistasis contrasts shared the same purchased lower-order measurements.
| Status | Public statement |
|---|---|
| Supported mechanism | Conjoint scoring preserves the possibility of context-dependent, non-additive ESM-2 signal. |
| Historical observation | Particular v1 loop-count plates outperformed fitness-greedy plates downstream; robustness across tie seeds was not estimated. |
| Not yet demonstrated | Masking dispersion has not shown added value beyond loop coverage in the tested v1 procedure. |
| Withdrawn, replaced | The earlier map-recovery interpretation is withdrawn; the audit replaced its confounded correlation with a stricter Fourier-coefficient test. |
No tracked corrected-recovery artifact currently demonstrates positive error reduction, so the project makes no public claim that any method reconstructed an epistasis map. The former correlations are retained only as diagnostics.
Engineering highlights
- Reproducible selection. A declared
tie_seedfixes which of the many equally scored candidates enter a plate, separating the scoring rule from enumeration order. - Gates registered before inspection. Success criteria are written down ahead of the final results, which is why the
infoversus loop-count comparison could be reported as a failed gate rather than quietly dropped. - Artifact provenance. Results live in tracked JSON artifacts carrying their eligibility flags, so a claim on this page can be traced to the run that produced it.
- Limitations kept in the repository. LIMITATIONS.md and the audit remediation notes are the canonical record of what the evidence does not cover.
Limitations and status
All comparative results remain provisional. GB1 map recovery remains inconclusive_zero_gpu with public_claim_eligible=false, and the TrpB source mirror contains 871 imputed fitness values that are not identified row by row. The loop-count score is constant within a mutation order, and the tracked runs do not sample tie seeds, so they do not estimate the acquisition method over its selection distribution. No general claim is made beyond these two landscapes and the fixed downstream learner.