AgentSkillsCN

boltz

使用 Boltz-1/Boltz-2 结构预测,一种开放的生物分子结构预测器。当满足以下条件时使用此技能:(1) 预测蛋白质复合物结构,(2) 验证设计的结合剂,(3) 需要 AF2 的开源替代方案,(4) 预测蛋白质配体复合物,(5) 使用本地 GPU 资源。 对于 QC 阈值,使用 protein-qc。对于 AlphaFold2 预测,使用 alphafold。对于 Chai 预测,使用 chai。

SKILL.md
--- frontmatter
name: boltz
description: >
  Structure prediction using Boltz-1/Boltz-2, an open biomolecular structure predictor.
  Use this skill when: (1) Predicting protein complex structures,
  (2) Validating designed binders,
  (3) Need open-source alternative to AF2,
  (4) Predicting protein-ligand complexes,
  (5) Using local GPU resources.

  For QC thresholds, use protein-qc.
  For AlphaFold2 prediction, use alphafold.
  For Chai prediction, use chai.
license: MIT
category: design-tools
tags: [structure-prediction, validation, open-source]
biomodals_script: modal_boltz.py

Boltz Structure Prediction

Prerequisites

RequirementMinimumRecommended
Python3.10+3.11
CUDA12.0+12.1+
GPU VRAM24GB48GB (L40S)
RAM32GB64GB

How to run

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

Option 1: Modal

bash
cd biomodals
modal run modal_boltz.py \
  --input-faa complex.fasta \
  --out-dir predictions/

GPU: L40S (48GB) | Timeout: 1800s default

Option 2: Local installation

bash
pip install boltz

boltz predict \
  --fasta complex.fasta \
  --output predictions/

Key parameters

ParameterDefaultRangeDescription
--recycling_steps31-10Recycling iterations
--sampling_steps20050-500Diffusion steps
--use_msa_servertrueboolUse MSA server

FASTA Format

code
>protein_A
MKTAYIAKQRQISFVK...
>protein_B
MVLSPADKTNVKAAWG...

Output format

code
predictions/
├── model_0.cif       # Best model (CIF format)
├── confidence.json   # pLDDT, pTM, ipTM
└── pae.npy          # PAE matrix

Note: Boltz outputs CIF format. Convert to PDB if needed:

python
from Bio.PDB import MMCIFParser, PDBIO
parser = MMCIFParser()
structure = parser.get_structure("model", "model_0.cif")
io = PDBIO()
io.set_structure(structure)
io.save("model_0.pdb")

Comparison

FeatureBoltz-1Boltz-2AF2-Multimer
MSA-free modeYesYesNo
DiffusionYesYesNo
SpeedFastFasterSlower
Open sourceYesYesYes

Sample output

Successful run

code
$ boltz predict --fasta complex.fasta --output predictions/
[INFO] Loading Boltz-1 weights...
[INFO] Predicting structure...
[INFO] Saved model to predictions/model_0.cif

predictions/confidence.json:
{
  "ptm": 0.78,
  "iptm": 0.65,
  "plddt": 0.81
}

What good output looks like:

  • pTM: > 0.7 (confident global structure)
  • ipTM: > 0.5 (confident interface)
  • pLDDT: > 0.7 (confident per-residue)
  • CIF file: ~100-500 KB for typical complex

Decision tree

code
Should I use Boltz?
│
├─ What are you predicting?
│  ├─ Protein-protein complex → Boltz ✓ or Chai or ColabFold
│  ├─ Protein + ligand → Boltz ✓ or Chai
│  └─ Single protein → Use ESMFold (faster)
│
├─ Need MSA?
│  ├─ No / want speed → Boltz ✓
│  └─ Yes / maximum accuracy → ColabFold
│
└─ Why Boltz over Chai?
   ├─ Open weights preference → Boltz ✓
   ├─ Boltz-2 speed → Boltz ✓
   └─ DNA/RNA support → Consider Chai

Typical performance

Campaign SizeTime (L40S)Cost (Modal)Notes
100 complexes30-45 min~$8Standard validation
500 complexes2-3h~$35Large campaign
1000 complexes4-6h~$70Comprehensive

Per-complex: ~15-30s for typical binder-target complex.


Verify

bash
find predictions -name "*.cif" | wc -l  # Should match input count

Troubleshooting

Low confidence: Increase recycling_steps OOM errors: Use MSA-free mode or A100-80GB Slow prediction: Reduce sampling_steps

Error interpretation

ErrorCauseFix
RuntimeError: CUDA out of memoryComplex too largeUse --use_msa_server false or larger GPU
KeyError: 'iptm'Single chain onlyEnsure FASTA has 2+ chains
FileNotFoundError: weightsMissing modelRun boltz download first
ValueError: invalid residueNon-standard AACheck for modified residues in sequence

Boltz-1 vs Boltz-2

AspectBoltz-1Boltz-2
SpeedFast~2x faster
AccuracyGoodImproved
LigandsBasicBetter support
Release2024Late 2024

Next: protein-qc for filtering and ranking.