Caltech / University of Queensland / Aithyra
Catalytic residue prediction from enzyme sequence alone, pairing frozen ESM2 embeddings with contrastive learning. Reaches F1 0.86 on Uni3175.
Catalytic residues are the handful of amino acids that perform an enzyme's chemistry, and pinpointing them is a prerequisite for annotating enzyme function, engineering activity, and mining databases for new biocatalysts. Two families of methods dominate. Sequence-similarity search with BLAST is fast and interpretable but only works when an annotated homolog already exists. The best machine learning methods — AEGAN, SCREEN, EasIFA — are more accurate but require a high-quality three-dimensional structure for every query, which makes database-scale screening prohibitively slow once structure prediction is added to the bill.
Squidly, from the Mora, Boden, and Arnold groups at Caltech, the University of Queensland, and Aithyra, takes the sequence-only route. It reads per-token embeddings from a frozen ESM2 protein language model and trains a lightweight contrastive head to pull catalytic residues together in embedding space and push non-catalytic residues away. The contribution is less the architecture than the pairing scheme: instead of sampling contrastive pairs at random, Squidly constructs them from EC-number and amino-acid annotations so that negatives are biologically hard — a residue of the same chemical type from an enzyme of a different reaction class. That single design choice is what carries the model past a conventional baseline.
The preprint was posted to bioRxiv in June 2025 and is under review at eLife as a reviewed preprint, with public reviews posted and no version of record yet.
Per-residue embeddings are taken from the final encoder layer of ESM2-3B (2,560-dimensional) or ESM2-15B (5,120-dimensional) without fine-tuning. A small MLP with two hidden layers (1,280 and 640 units) and 10% dropout projects each residue to a 128-dimensional space under a cosine embedding loss, trained on batches of 16,000 pairs drawn from 8 to 10 million candidate pairs. A two-layer bidirectional LSTM with 128 hidden units then classifies residues as catalytic or not, with a 100-fold class weight on the positive class. Training used the Uni14230 set (8,784 sequences after 60% identity filtering, from UniProt and M-CSA).
On the Uni3175 benchmark, the best configuration — reaction-informed scheme 3 with ESM2-15B — reached F1 0.86, against 0.73 for an LSTM on unmodified ESM2 embeddings and marginally above the structure-dependent AEGAN. On CataloDB, where sequence and structural similarity to training data are held low, Squidly recorded F1 0.66 (precision 0.81, recall 0.61) at 15B and F1 0.69 (precision 0.86, recall 0.52) at 3B, while BLAST managed F1 0.37 and a retrained SCREEN fell between the two. Throughput is roughly 10 sequences per second on an H100 with the 3B model — about 200-fold faster than generating structures with Chai-1 as a preprocessing step. The 3B and 15B models need roughly 25 GB and 74 GB of VRAM, and inputs are capped at 1,024 residues.
Squidly is aimed at researchers annotating enzymes at scale: functional characterization of uncharacterized proteins, prioritizing candidates from metagenomic surveys, and identifying the active-site positions that enzyme engineers must leave untouched when designing variants. Because it needs no structures, it fits into pipelines where predicting a structure for every sequence would dominate the compute budget, and the BLAST ensemble makes it usable across both well-annotated families and orphan sequences.
Squidly demonstrates that carefully constructed contrastive pairs can substitute for structural input on a residue-level protein task, matching structure-based state of the art at a fraction of the cost. The accompanying CataloDB benchmark addresses a methodological gap, since existing catalytic-residue test sets share substantial similarity with training data and are enriched for enzymes whose structures were likely in AlphaFold's training set. The authors flag the limits plainly: public annotation is skewed toward well-studied enzyme classes, performance drops for underrepresented EC classes such as 6 and 7, optimal thresholds shift by EC number, and generalization to distant lineages remains unproven. Weights are on HuggingFace under GPL-2.0 and data on Zenodo, though the GitHub repository ships an empty LICENSE file, leaving the source code without explicit terms.
Papers that recently cited this model.
The most-cited papers that cite this model.
Providers that host Squidly for inference, fine-tuning, or weight download.
No providers recorded yet. Browse all providers
Not enough data