cd /news/artificial-intelligence/literature-in-the-loop-citation-grou… · home topics artificial-intelligence article
[ARTICLE · art-111673] src=dev.to ↗ pub= topic=artificial-intelligence verified=true sentiment=· neutral

Literature-in-the-Loop: Citation-Grounded Triage for AI Protein Design

A developer proposes a 'literature-in-the-loop' approach for AI-driven protein and antibody design, addressing the gap between the tens of thousands of candidates generated per cycle and the few hundred that can be tested. The method adds a citation-grounded evidence-ranking step between generation and assay selection, retrieving published structures, affinities, and negative results to rerank candidates while reserving capacity for novel designs. The proposal is based on documented limitations in existing systems, such as Genentech/Prescient Design's lab-in-the-loop antibody design system.

read15 min views1 publishedAug 26, 2026

Quick answer: Lab-in-the-loop protein and antibody design generates tens of thousands of candidates per cycle but tests a few hundred. What lab-in-the-loop needs is literature-in-the-loop: a citation-grounded evidence-ranking step between generation and assay selection that retrieves published structures, affinities, homologous sequences, and negative results to rerank candidates, while reserving explicit capacity for novel designs.

The scale of the mismatch is documented. In Genentech/Prescient Design's lab-in-the-loop antibody design system, the generative methods "may produce up to 30,000 designs per lead molecule" in a single round. Across four rounds, four clinically relevant targets (EGFR, IL-6, HER2, and OSM), and ten lead molecules, more than 1,800 unique antibody variants were actually designed, synthesised, and tested.

Averaged out, that is roughly 45 variants assayed per lead molecule per round against a generation ceiling of 30,000. That gap is closer to three orders of magnitude than two. Every candidate that occupies an assay slot displaces another. Which means the ranking function that fills the queue is one of the highest-leverage components in the entire pipeline, and it is usually built from model-internal signals alone.

Published lab-in-the-loop systems do not describe a literature-based evidence-ranking step between generation and assay selection. Candidates are ranked on model confidence, predicted structure quality, and predicted binding. These three signals answer fundamentally different questions. When they are treated as interchangeable, candidates with strong prior literature support can be deprioritised relative to novel designs that happen to score well under a model's internal metric.

Lab-in-the-loop needs literature-in-the-loop: a triage layer that retrieves published structural, sequence, and affinity data to rerank candidates before wet-lab slots are allocated. Not as a veto gate that eliminates novel binders, but as a layer that enriches the assay queue with evidence-supported candidates while reserving explicit capacity for genuinely novel architectures.

The standard design-to-assay loop works like this: a generative model proposes a batch of sequences, each annotated with predicted properties, and a ranking system selects which candidates to synthesise and test.

The Prescient/Genentech system annotates generated designs with predicted expression, binding affinity, and non-specificity. Worth being precise about how those labels are constructed, because it is the crux of the problem. From the paper:

All properties have associated binary labels (e.g., 1:1 binding to target antigen is or is not detected by SPR at a fixed concentration) modeled by binary classifiers, and expression yield and binding affinity are modeled as scalars.

So binding ground truth is a binary readout from SPR at a single fixed concentration, alongside scalar regressors for yield and affinity. That is a perfectly reasonable experimental design. The problem arises downstream, when teams treat these heterogeneous predictions as interchangeable proxies for "this candidate will work."

pLDDT (predicted Local Distance Difference Test) is AlphaFold2's per-residue confidence score, ranging from 0 to 100, estimating agreement between predicted Cα positions and the unknown true structure. Scores above 90 indicate accuracy comparable to experimentally determined structures; 70 to 90 is generally sufficient for backbone prediction; below 70 requires careful interpretation. AlphaFold's own guidance is that long regions below 50 "should not be interpreted" as structure at all, but read as a prediction of disorder.

A model can place every residue with high pLDDT and still produce a loop conformation at the paratope, or an interface geometry, that is incompatible with binding. High pLDDT means the model agrees with itself.

Predicted binding, whether from docking, interface energy calculations, or specialised classifiers, attempts to estimate the likelihood or strength of an interaction. This is a separate question from structural confidence, and current metrics are not good at it.

The Adaptyv EGFR binder design competition analysis (Cotet et al., 2025) evaluated structure-prediction confidence scores against experimental outcomes across the competition's characterised designs. ipTM (interface predicted TM-score) achieved an AUROC of 0.64 for binding classification. The authors concluded these metrics were "insufficiently predictive of true experimental binding probability or affinity."

An AUROC of 0.64 sits modestly above the random baseline of 0.5. It carries real signal. It is not a defensible sole selection criterion for a resource as expensive as an assay slot.

Log-likelihood, pLDDT of the designed structure, or a classifier output on a held-out validation set measures the model's internal consistency and its agreement with its training distribution, not its agreement with physical reality.

Treating these three as interchangeable creates two failure modes:

The second failure mode is the expensive one, because it is invisible. Nobody logs the binder you never tested.

The triage step belongs between candidate generation and assay queue assembly: after the generative model has produced a batch, before wet-lab slots are allocated.

It is not a replacement for the model's own ranking. It is a re-ranking layer that supplements model outputs with external evidence the model did not see at training time or could not fully encode.

For each candidate, the triage step should produce an evidence packet containing:

The packet should be machine-readable for automated reranking and human-readable for review of ambiguous cases.

Here is a concrete retrieval step for one candidate, using the Valyu TypeScript SDK:

import { Valyu } from "valyu-js";

const valyu = new Valyu(process.env.VALYU_API_KEY!);

// search(query, options): query is positional, options are camelCase.
const literatureResponse = await valyu.search(
  "anti-HER2 antibody CDR-H3 binding affinity epitope SPR",
  {
    searchType: "proprietary",
    includedSources: ["valyu/valyu-pubmed", "valyu/valyu-biorxiv"],
    maxNumResults: 15,
    startDate: "2015-01-01", // plain hyphens; YYYY-MM-DD is validated
  },
);

// Each result carries a primary source URL, a source identifier, and a
// relevance score. The triage layer joins these items with sequence and
// structural evidence before reranking the candidate.
const evidencePacket = literatureResponse.results.map((r) => ({
  title: r.title,
  url: r.url,
  source: r.source,
  relevance: r.relevance_score,
  excerpt: r.content,
}));

Not all evidence carries equal weight. A high-affinity SPR measurement for a homologous antibody against the same epitope is a fundamentally different kind of claim than a qualitative ELISA binding report for a distantly related sequence. The ranking system must encode this hierarchy explicitly.

Target biology establishes functional context: whether the target is a receptor with a known active site, a shed antigen, or a membrane protein with restricted epitope accessibility. This constrains which epitopes are plausible and which design strategies have precedent.

Epitope accessibility determines whether a binder can physically reach its target. A structurally buried epitope on the native conformation may not be accessible in vivo. Published epitope mapping (alanine scanning, hydrogen–deuterium exchange, cryo-EM reconstructions) provides direct evidence of which surface patches are exposed.

Homologous sequences offer the strongest signal for novel candidates. If a generated CDR-H3 shares significant similarity with a known binder against the same target, that is a positive signal; similarity to a known non-binder, or to a binder against an unrelated target, is a cautionary one. Similarity is most informative at the CDR level, where variation most directly relates to binding, rather than at the framework level where germline similarity is common and uninformative.

Known structures provide geometric constraints. If a PDB structure of an antibody–target complex exists, the paratope–epitope interface geometry is known, and a candidate predicted to occupy a similar geometry has structural precedent. Resolution matters: higher-resolution structures provide stronger geometric evidence.

Measured affinities provide quantitative anchors. ChEMBL 37 (prepared 1 May 2026) contains 2,921,148 distinct compounds, 24,527,044 activities across 1,970,438 assays, and 18,552 targets. Critically, ChEMBL classifies assay data into Binding (B), Functional (F), ADME (A), Toxicity (T), and Physicochemical (P) types, plus Unclassified (U), so a KD from a binding assay is machine-distinguishable from a functional cell-based readout.

That distinction is the whole point. A retrieval step for measured affinities must keep the source identifier and assay type attached to every measurement, so the ranking function never treats a ChEMBL KD and a qualitative PubMed observation as the same kind of evidence:

const affinityResponse = await valyu.search(
  "HER2 antibody KD IC50 Ki binding affinity assay",
  {
    searchType: "proprietary",
    includedSources: ["valyu/valyu-chembl", "valyu/valyu-pubmed"],
    maxNumResults: 25,
  },
);

// Literature writes affinities in two orders. Matching only one of them
// silently drops most of the corpus. "KD = 5 nM" is far more common in
// prose than "5 nM (KD)".
const LABEL = String.raw`K[Dd]|IC50|EC50|K[Ii]`;
const VALUE = String.raw`(\d+(?:\.\d+)?)\s*(pM|nM|µM|uM|mM)`;

const labelFirst = new RegExp(`(${LABEL})\\s*(?:=|≈|~|:|of)?\\s*${VALUE}`, "g");
const valueFirst = new RegExp(`${VALUE}\\s*\\(?(${LABEL})\\)?`, "g");

const measurements = affinityResponse.results.flatMap((r) => {
  // content is `string | object | any[]`. Structured records (data_type
  // === "structured") arrive as objects and should be read as fields;
  // regex is only for the unstructured prose path.
  if (typeof r.content !== "string") return [];

  const fromLabelFirst = [...r.content.matchAll(labelFirst)].map((m) => ({
    assayType: m[1].toUpperCase(),
    value: parseFloat(m[2]),
    unit: m[3],
  }));

  const fromValueFirst = [...r.content.matchAll(valueFirst)].map((m) => ({
    assayType: m[3].toUpperCase(),
    value: parseFloat(m[1]),
    unit: m[2],
  }));

  return [...fromLabelFirst, ...fromValueFirst].map((m) => ({
    ...m,
    sourceUrl: r.url,
    sourceId: r.source,      // log this once to confirm the exact string
    relevance: r.relevance_score,
  }));
});

const chemblMeasurements = measurements.filter(
  (m) => m.sourceId === "valyu/valyu-chembl",
);
const literatureMeasurements = measurements.filter(
  (m) => m.sourceId === "valyu/valyu-pubmed",
);

ChEMBL returns structured bioactivity records; PubMed hits are frequently qualitative. Keeping the source identifier explicit is part of representing uncertainty. If a query returns no measurements at all, that coverage gap is itself a first-class output, not something to bury inside an averaged confidence score.

The central risk of literature-in-the-loop triage is that it degenerates into a novelty penalty: candidates with no prior literature support get systematically deprioritised, and the assay queue fills with minor variants of known binders. This is the exploration-versus-exploitation problem in active learning, applied to wet-lab selection.

Three mechanisms prevent the collapse.

1. An explicit exploration budget. Reserve a meaningful fraction of assay slots for candidates the evidence step scores as low-evidence but the generative model scores as high-confidence or high-novelty. Label them as exploration candidates and track them separately. The budget structurally prevents the ranking system from optimising purely for prior support.

2. A novelty-conditional scoring function. Rather than ranking all candidates on a single evidence score, compute a conditional one: for candidates with close literature analogues, weight evidence heavily; for candidates in sparsely populated regions of sequence or structure space, weight evidence lightly and lean on model confidence and structural plausibility. The function should be transparent and auditable, not a black-box reranker.

3. Human review for ambiguous cases. Flag candidates where evidence conflicts, where the closest homolog is a known non-binder, or where the epitope is disputed in the literature. A computational biologist or antibody engineer with the full evidence packet can make a judgment that automated ranking cannot. This is not a failure of automation. It is an acknowledgment that some decisions require domain expertise no ranking function fully encodes.

The output is a reranked queue with three tiers: evidence-supported, exploration, and flagged for human review. Assay slots are allocated across tiers according to the exploration budget, not purely by score.

The value of literature-in-the-loop triage can be assessed retrospectively using a public antibody lineage with a documented history of measured affinities and validation outcomes.

The anti-HER2 lineage suits this well. The murine monoclonal 4D5 was described in Hudziak et al., 1989 (Mol Cell Biol) and humanized onto a consensus human IgG1 framework to produce trastuzumab in Carter et al., 1992. The lineage continues through trastuzumab-based antibody–drug conjugates (ado-trastuzumab emtansine and trastuzumab deruxtecan), which retain the 4D5-derived variable domains.

One clarification that matters for this protocol: pertuzumab is not in the 4D5 lineage. It is rhuMAb 2C4, derived from a separate murine parent antibody and binding a distinct epitope on HER2 domain II (the dimerization arm), where trastuzumab binds domain IV. It is a same-target, different-lineage antibody. In a protocol whose ranking turns on CDR-level sequence homology, conflating the two would produce meaningless results. Treat it as a useful negative control for homology-based ranking instead: a clinically successful anti-HER2 antibody that CDR similarity to 4D5 should not, and does not, predict.

The protocol:

The historical cutoff maps directly onto the endDate

parameter:

const evidenceBeforeCutoff = await valyu.search(
  "HER2 antibody trastuzumab 4D5 affinity structure PDB",
  {
    searchType: "proprietary",
    includedSources: ["valyu/valyu-pubmed", "valyu/valyu-chembl"],
    maxNumResults: 20,
    endDate: "2010-12-31", // simulate pre-disclosure state
  },
);

One caveat worth stating plainly: date filtering operates on the publication date attached to the indexed document. For literature that maps cleanly. For curated database records, the deposit date and the date of the underlying experiment can differ, so a strict cutoff is an approximation of historical knowledge, not a perfect reconstruction of it.

This protocol is a proposal, not a completed experiment. I have not run it, and no candidate counts, enrichment rates, or false-negative rates should be read as findings. Its value is in being specifiable and auditable in advance, and in surfacing its own coverage gaps. A retrospective built only on PubMed and ChEMBL would systematically underestimate negative evidence, because failed binders are underpublished. That biases the analysis toward overestimating support for candidates whose failures never made it into print.

The triage step needs something most lab-in-the-loop systems were not designed around: on-demand retrieval of structured, auditable literature and bioactivity data, callable at candidate-selection time, with every result traceable to a primary source.

Three capabilities.

Semantic search over biomedical literature. PubMed comprises more than 40 million citations of biomedical literature, updated daily by the NLM. Note that not every citation carries an abstract (coverage is uneven, especially for older records), and PubMed does not host full text, though it links out where available. A query for "anti-HER2 antibody CDR-H3 affinity" should return relevant studies with metadata and links. Valyu's PubMed index covers 37M+ papers and supports natural-language queries structured around candidate features such as target name, epitope description, or CDR sequence motif, rather than requiring hand-built Boolean strings. Its index refreshes monthly, which is fine for a design-cycle cadence and worth knowing if you need same-week publications.

Structured bioactivity retrieval. ChEMBL's 24.5M activities across 18,552 targets cover IC50, Ki, KD, EC50, functional potencies, and ADMET properties. That is the upstream database's full scale, and any given retrieval layer indexes some subset of it, so check the coverage figures for whichever provider you use rather than assuming parity. The retrieval system has to query across multiple dimensions and return structured records rather than free text. Valyu's search results carry a data_type

of "structured"

or "unstructured"

, so a caller can branch on it rather than regexing everything and hoping.

Provenance and auditability. Every evidence item must carry a traceable link to its primary source: the PubMed PMID, the ChEMBL assay ID, the PDB entry, the UniProt accession. When a candidate is reranked because a homologous antibody has a published KD, the ranking record must include the assay type, source identifiers, and measurement conditions. This audit trail is what lets a human reviewer verify evidence during ambiguous-case review, and what makes retrospective analysis of ranking decisions possible at all.

Valyu is one implementation of this shape: ChEMBL bioactivity data and 37M+ PubMed papers behind a natural-language semantic search API. The critical requirement is not a specific vendor. It is the ability to retrieve structured, cited evidence programmatically, at the speed of candidate selection, with enough coverage of both positive and negative published results to be worth trusting.

And the infrastructure has to be honest about its limits. PubMed abstracts and ChEMBL records do not capture every experimental detail, and they capture almost no unpublished data. The evidence-ranking system should represent coverage uncertainty as a first-class output rather than burying it inside a single confidence score.

Why is a design-to-assay loop incomplete when model confidence, predicted structure quality, and predicted binding are treated as interchangeable?

Model confidence measures the internal consistency of the generative model. pLDDT measures per-residue structural prediction confidence. Predicted binding estimates the likelihood of an interaction, and does it weakly: ipTM scored an AUROC of 0.64 in the Adaptyv EGFR competition analysis. Each answers a different question. Treating them as one signal lets a candidate with high pLDDT and poor predicted binding rank above one with moderate structural confidence and strong published precedent against the same epitope.

Where should literature-in-the-loop triage sit, and what should it produce?

Between generative candidate production and assay queue assembly. For each candidate it produces an evidence packet: target biology context with citations, epitope and accessibility data, homologous sequence alignments with identity percentages, known PDB structures with resolution and method, measured affinities with assay type and conditions, negative and conflicting results, and per-item source quality metadata.

How should source quality and uncertainty be represented?

Per evidence item, not per candidate: peer-reviewed vs. preprint, assay type (SPR, BLI, ELISA, cell-based), measurement reproducibility, and whether conditions match the intended assay. Per-candidate uncertainty should then capture the ratio of supportive to cautionary evidence, the spread of measured affinities for related binders, and the degree of novelty relative to the closest known sequence or structure. Zero retrieved evidence is a distinct state from conflicting evidence, and the two should never collapse into the same score.

How does evidence rerank candidates without becoming a hard gate that removes novel binders?

An explicit exploration budget reserving assay slots for low-evidence, high-novelty candidates; a novelty-conditional scoring function that weights evidence heavily only where close analogues exist; and human review for conflicting or disputed cases. The output is a three-tier queue (evidence-supported, exploration, flagged), with slots allocated across tiers rather than purely by score.

What retrospective protocol could validate this on a public lineage?

Assemble a panel of known lineage sequences and generated decoys, set a historical evidence cutoff preceding later-generation disclosures, run blinded evidence-based ranking on pre-cutoff data only, compare against post-cutoff measured-affinity labels, and report candidates deprioritised, enrichment among evidence-supported survivors, and any false rejection of a real binder. This is a proposed protocol. It has not been run, and nothing here should be read as a result.

Can literature-in-the-loop triage replace wet-lab validation?

No. Literature evidence informs prioritisation. It cannot confirm that a specific generated candidate binds its target, expresses at usable levels, or meets developability criteria. Wet-lab validation remains the only source of ground truth for a novel candidate. Triage changes which candidates are tested first, not whether they are tested.

── more in #artificial-intelligence 4 stories · sorted by recency
── more on @genentech 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/literature-in-the-lo…] indexed:0 read:15min 2026-08-26 ·