Build a complete AI-powered protein design pipeline with cloud GPU compute and automated wet-lab validation. End-to-end, from a laptop, for ~$1.7K per 3-round campaign.
In 2006, AWS eliminated the need to buy servers. A developer could rent GPU by the second and deploy within hours. A similar compression is happening in biotech right now — except instead of serving web pages, you're designing proteins.
Cloud GPU (Modal) + protein design tools (biomodals) + automated lab (Adaptyv Bio) = the full stack for AI-driven binder discovery, accessible to a single researcher. — ~$1.7K for 3 rounds of design-validate-iterate vs. $1-3M for traditional CRO
wget https://files.rcsb.org/download/5JDS.pdb
grep "^ATOM.* A " 5JDS.pdb > 5JDS_chainA.pdb
GPU=A100 uvx modal run modal_bindcraft.py \
--input-pdb 5JDS_chainA.pdb \
--number-of-final-designs 5
experiment = client.experiments.create(
assay_type="binding",
target_id="comp-pdl1-human",
sequences=[{"name":"d1","sequence":"QVQLV..."}]
)
# Filter and iterate
hits = [r for r in results if r.kd < 1e-8]
best = min(hits, key=lambda r: r.kd) if hits else None
Modal provides serverless A100/L40S GPU compute billed per second. biomodals wraps the best open-source protein engineering tools into one-line Modal commands. Modal free tier: $30/month (~6 complete dry rounds).
Protein expression, binding assays, real Kd — delivered by API. No lab bench required. — Adaptyv Bio, $8M seed, Lausanne 2025
{
"sequence_name": "VHH-01",
"target_name": "HER2 / ERBB2",
"kd": 8.1e-10, // M
"kon": 2400000, // M^-1 s^-1
"koff": 0.0019, // s^-1
"binding_strength": "strong",
"r_squared": 0.999
}
curl -LsSf https://astral.sh/uv/install.sh | sh
python -m modal setup # get token at modal.com ($30 free/month)
pip install adaptyv-sdk # API client for wet lab
git clone https://github.com/hgbrian/biomodals
cd biomodals
wget https://files.rcsb.org/download/5JDS.pdb
GPU=A100 uvx modal run modal_bindcraft.py \
--input-pdb 5JDS.pdb --number-of-final-designs 5
from adaptyv_sdk import AdaptyvClient
client = AdaptyvClient(api_key="your_key")
exp = client.experiments.create(
assay_type="binding",
target_id="comp-pdl1-human",
sequences=[{"name":"d1","sequence":"QVQLV..."}]
)
results = client.results.list(experiment_id=exp.id)
for r in results:
print(f"{r.sequence_name}: Kd = {r.kd:.2e} M")
| Resource | URL |
|---|---|
| GitHub repo | github.com/junior1p/one-person-pharma |
| Agent skill | github.com/junior1p/one-person-pharma/tree/main/skills |
| biomodals | github.com/hgbrian/biomodals |
| Boolean Biotech Blog | blog.booleanbiotech.com |
| Adaptyv API docs | docs.adaptyvbio.com |
| Adaptyv AI Agents | agents.adaptyvbio.com |
| Adaptyv EGFR竞赛 | biorxiv.org/content/10.1101/2025.04.17.648362 |