esm — how to use esm for protein design how to use esm for protein design, esm vs other protein design tools, esm installation guide, what is esm protein design, esm alternative protein design tools, esm setup guide for Modal, esm protein design tutorial, esm prerequisites and requirements, esm protein language model

v1.0.0
GitHub

About this Skill

Ideal for AI Agents focused on Bioinformatics and Protein Design, such as Claude Code, requiring advanced PyTorch and CUDA capabilities. esm is a protein design skill utilizing the ESM2 Protein Language Model, requiring specific technical prerequisites for operation.

Features

Utilizes the ESM2 Protein Language Model for protein design
Requires Python 3.8+, PyTorch 1.10+, and CUDA 11.0+ for operation
Supports GPU VRAM of 8GB or more, with 24GB recommended
Can be run using the Modal platform with biomodals
Executes the modal_esm2_predict_masked.py script for predictions
Accepts input in FASTA format via the --input-faa parameter

# Core Topics

adaptyvbio adaptyvbio
[0]
[0]
Updated: 3/8/2026

Quality Score

Top 5%
59
Excellent
Based on code quality & docs
Installation
SYS Universal Install (Auto-Detect)
Cursor IDE Windsurf IDE VS Code IDE
> npx killer-skills add adaptyvbio/protein-design-skills/esm

Agent Capability Analysis

The esm MCP Server by adaptyvbio is an open-source Categories.community integration for Claude and other AI agents, enabling seamless task automation and capability expansion. Optimized for how to use esm for protein design, esm vs other protein design tools, esm installation guide.

Ideal Agent Persona

Ideal for AI Agents focused on Bioinformatics and Protein Design, such as Claude Code, requiring advanced PyTorch and CUDA capabilities.

Core Value

Empowers agents to design proteins using the ESM2 protein language model, leveraging Python, PyTorch, and CUDA for comprehensive content analysis and generation, with support for GPU acceleration and large VRAM for efficient processing.

Capabilities Granted for esm MCP Server

Designing novel proteins with specific functions
Predicting protein structures from sequences
Analyzing protein-ligand interactions with PyTorch

! Prerequisites & Limits

  • Requires Python 3.8+
  • Needs PyTorch 1.10+ and CUDA 11.0+
  • Demands significant GPU VRAM (minimum 8GB) and RAM (minimum 16GB)
Project
SKILL.md
3.9 KB
.cursorrules
1.2 KB
package.json
240 B
Ready
UTF-8

# Tags

[No tags]
SKILL.md
Readonly

ESM2 Protein Language Model

Prerequisites

RequirementMinimumRecommended
Python3.8+3.10
PyTorch1.10+2.0+
CUDA11.0+11.7+
GPU VRAM8GB24GB (A10G)
RAM16GB32GB

How to run

First time? See Installation Guide to set up Modal and biomodals.

Option 1: Modal

bash
1cd biomodals 2modal run modal_esm2_predict_masked.py \ 3 --input-faa sequences.fasta \ 4 --out-dir embeddings/

GPU: A10G (24GB) | Timeout: 300s default

Option 2: Python API (recommended)

python
1import torch 2import esm 3 4# Load model 5model, alphabet = esm.pretrained.esm2_t33_650M_UR50D() 6batch_converter = alphabet.get_batch_converter() 7model = model.eval().cuda() 8 9# Process sequences 10data = [("seq1", "MKTAYIAKQRQISFVK...")] 11batch_labels, batch_strs, batch_tokens = batch_converter(data) 12 13with torch.no_grad(): 14 results = model(batch_tokens.cuda(), repr_layers=[33]) 15 16# Get embeddings 17embeddings = results["representations"][33]

Key parameters

ESM2 Models

ModelParametersSpeedQuality
esm2_t6_8M8MFastestFast screening
esm2_t12_35M35MFastGood
esm2_t33_650M650MMediumBetter
esm2_t36_3B3BSlowBest

Output format

embeddings/
├── embeddings.npy       # (N, 1280) array
├── pll_scores.csv       # PLL for each sequence
└── metadata.json        # Sequence info

Sample output

Successful run

$ modal run modal_esm2_predict_masked.py --input-faa designs.fasta
[INFO] Loading ESM2-650M model...
[INFO] Processing 100 sequences...
[INFO] Computing pseudo-log-likelihood...

embeddings/pll_scores.csv:
sequence_id,pll,pll_normalized,length
design_0,-0.82,0.15,78
design_1,-0.95,0.08,85
design_2,-1.23,-0.12,72
...

Summary:
  Mean PLL: -0.91
  Sequences with PLL > 0: 42/100 (42%)

What good output looks like:

  • PLL_normalized: > 0.0 (more natural-like)
  • Embeddings shape: (N, 1280) for 650M model
  • Higher PLL = more natural sequence

Decision tree

Should I use ESM2?
│
├─ What do you need?
│  ├─ Sequence plausibility score → ESM2 PLL ✓
│  ├─ Embeddings for clustering → ESM2 ✓
│  ├─ Variant effect prediction → ESM2 ✓
│  └─ Structure prediction → Use ESMFold
│
├─ What model size?
│  ├─ Fast screening → esm2_t12_35M
│  ├─ Standard use → esm2_t33_650M ✓
│  └─ Best quality → esm2_t36_3B
│
└─ Use case?
   ├─ QC filtering → PLL > 0.0 threshold
   ├─ Diversity analysis → Mean-pooled embeddings
   └─ Mutation scanning → Per-position log-odds

PLL interpretation

Normalized PLLInterpretation
> 0.2Very natural sequence
0.0 - 0.2Good, natural-like
-0.5 - 0.0Acceptable
< -0.5May be unnatural

Typical performance

Campaign SizeTime (A10G)Cost (Modal)Notes
100 sequences5-10 min~$1Quick screen
1000 sequences30-60 min~$5Standard
5000 sequences2-3h~$20Large batch

Throughput: ~100-200 sequences/minute with 650M model.


Verify

bash
1wc -l embeddings/pll_scores.csv # Should match input + 1 (header)

Troubleshooting

OOM errors: Use smaller model or batch sequences Slow processing: Use esm2_t12_35M for speed Low PLL scores: May indicate unusual/designed sequences

Error interpretation

ErrorCauseFix
RuntimeError: CUDA out of memorySequence too long or large batchReduce batch size
KeyError: representationWrong layer requestedUse layer 33 for 650M model
ValueError: sequenceInvalid amino acidCheck for non-standard AAs

Next: Structure prediction with chai or boltzprotein-qc for filtering.

Related Skills

Looking for an alternative to esm or building a Categories.community AI Agent? Explore these related open-source MCP Servers.

View All

widget-generator

Logo of f
f

widget-generator is an open-source AI agent skill for creating widget plugins that are injected into prompt feeds on prompts.chat. It supports two rendering modes: standard prompt widgets using default PromptCard styling and custom render widgets built as full React components.

149.6k
0
Design

chat-sdk

Logo of lobehub
lobehub

chat-sdk is a unified TypeScript SDK for building chat bots across multiple platforms, providing a single interface for deploying bot logic.

73.0k
0
Communication

zustand

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
Communication

data-fetching

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
Communication