Boltz Structure Prediction

SkillAI & models

Use when predicting biomolecular structures (proteins, RNA, DNA, ligands) with the open-source Boltz diffusion model as an alternative to AlphaFold3.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Boltz Structure Prediction skill

What this skill tells your AI

The instructions your AI receives, as published by lamm-mit/scienceclaw in skills/boltz/SKILL.md and read by ahel’s review.

Predict biomolecular structures using Boltz, an open-source diffusion model. Boltz handles proteins, RNA, DNA, small molecules, ions, and covalent modifications in a single model without requiring multiple sequence alignments (MSA-optional). It serves as a strong open-source alternative to AlphaFold3.

Requirements

  • Python 3.10+
  • 24 GB GPU VRAM minimum (A10G/A100 recommended)
  • ~10 GB disk for model weights

Installation

pip install boltz

Input Format (YAML)

Boltz uses YAML for flexible entity specification:

# complex.yaml — protein + ligand
version: 1
sequences:
  - protein:
      id: A
      sequence: MTEYKLVVVGAGGVGKSALTIQLIQNHFVDEYDPTIEDSY...
  - ligand:
      id: B
      smiles: "CC1=CC=C(C=C1)S(=O)(=O)N"  # or CCD code
      ccd: ATP  # alternative: use CCD code

# binder-target complex
version: 1
sequences:
  - protein:
      id: [A, B]  # homodimer
      sequence: MTEYKLVVVGAGGVGKS...
      count: 2
  - protein:
      id: C
      sequence: EVQLVESGGGLVQPGG...  # binder

Running Predictions

# Single prediction
boltz predict complex.yaml \
    --out_dir results/ \
    --accelerator gpu \
    --devices 1 \
    --num_workers 4

# Batch prediction (multiple YAML files)
boltz predict inputs/ \
    --out_dir results/ \
    --accelerator gpu

# Without MSA (faster, slightly lower accuracy for monomers)
boltz predict complex.yaml \
    --out_dir results/ \
    --use_msa_server false

Python API

from boltz.main import predict

predict(
    data="complex.yaml",
    out_dir="results/",
    accelerator="gpu",
    devices=1,
    num_predictions=1,  # ensemble size
    recycling_steps=3,
    diffusion_samples=1
)

Output Files

results/
  boltz_results_complex/
    predictions/
      complex/
        complex_model_0.cif          # Predicted structure (CIF format)
        complex_confidence_model_0.json  # Confidence scores
    lightning_logs/                  # Training logs (ignore)

Confidence Metrics

import json

with open("complex_confidence_model_0.json") as f:
    conf = json.load(f)

# Key metrics
plddt = conf["plddt"]                    # Per-residue confidence (0-100)
ptm = conf["ptm"]                        # Global fold confidence (0-1)
iptm = conf["iptm"]                      # Interface confidence (0-1)
ligand_iptm = conf.get("ligand_iptm")    # Ligand interface confidence
pde = conf.get("pde")                    # Predicted Distance Error

print(f"pTM={ptm:.3f}, ipTM={iptm:.3f}")

Quality Thresholds

MetricMarginalAcceptableGood
pLDDT (mean)<6060–80>80
ipTM<0.50.5–0.7>0.7
pTM<0.40.4–0.6>0.6

vs. AlphaFold2/3

FeatureBoltzAF2AF3
Open source✓ (weights)
Ligands
RNA/DNA
MSA requiredOptionalYesOptional
Local runLimited
CIF outputPDBCIF

Convert CIF to PDB

# Using BioPython
python3 -c "
from Bio.PDB import MMCIFParser, PDBIO
parser = MMCIFParser()
structure = parser.get_structure('pred', 'complex_model_0.cif')
io = PDBIO()
io.set_structure(structure)
io.save('complex_model_0.pdb')
"

Signals

GitHub stars
242
Forks
42
Last commit
Aug 2026
Advanced
Catalog kind
skill
Gateway key
boltz-lamm-mit
Source
github.com/lamm-mit/scienceclaw