Skip to content
Community

Boltz-2 Complex Prediction and Small-Molecule Affinity Analysis

Use the documented Boltz-2 YAML interface to predict a protein–ligand complex, inspect confidence and optional affinity files, and keep their scientific interpretations separate.

Level: Intermediate Cost: Free Privacy: Depends on configuration ~60 min
Start Setup

You'll be able to

  • Produce traceable computational candidate artifacts and inspect the documented acceptance criteria.

What you'll build

Documentation-based review draft. This workflow has not been executed in this batch; no installation, inference, optimization or experimental result has been verified.

Scope and inputs

For structural-biology researchers inspecting a protein–small-molecule complex. Use the pinned Boltz 2.2.1 source and its Boltz-2 model, not a generic Boltz-1 affinity claim. YAML contains version, sequence entities, unique chain IDs and optional properties.affinity.binder. Ligand SMILES and CCD are mutually exclusive. The documented affinity module permits one small-molecule ligand, not a protein/DNA/RNA binder; its limit is 128 counted atoms and the authors discourage ligands much larger than 56. Protein–protein structures can be a different structure-only task.

Outputs and interpretation

Retain input YAML, MSA records, checkpoint hashes, model/configuration and all raw outputs. Expected products include predicted mmCIF, confidence JSON and an affinity JSON when requested. Structure confidence, ipTM and pLDDT are not experimental affinity. affinity_pred_value is a prediction of log10(IC50 in micromolar); affinity_probability_binary is a model-estimated binder probability, not a measured binding assay. Do not reinterpret either as Kd or free energy. Record ligand protonation/stereochemistry and compare only scientifically matched assay contexts.

Environment, access and limits

Source requires Python >=3.10,<3.13 and PyTorch >=2.2; optional CUDA extras depend on hardware. CPU inference is documented but can be slow. The baseline uses the upstream public example and --use_msa_server: sequences leave the machine. For confidential sequences use the documented local precomputed-MSA route and reassess input pairing; no private data is uploaded by this review. Upstream explicitly releases Boltz code and weights under MIT; input data, MSA services and downstream experiments have separate conditions. Installation time excludes inference and model downloads. No clinical conclusion or speed/accuracy benchmark is asserted.

Official references

Boltz-2 structure and optional ligand-affinity prediction

Boltz

Stack Components

Boltz

Boltz-2 structure and optional ligand-affinity prediction · 2.2.1 source b1ebfc46ecf57f5414e0d1a6f9027bbb122c53bc; Boltz-2 checkpoints

Documentation-based review draft. This workflow has not been executed in this batch; no installation, inference, optimization or experimental result has been verified.

Code is open source; compute/storage and any external-service conditions remain the user's responsibility.

View Resource

Compatibility

ClientOSArchitectureVersion requirements
Python LinuxAny>= 3.10 <= 3.12

Setup & Test

1. Select the supported complex and privacy policy

Linux

Use the official public protein–ligand affinity example first. Check the ligand chain, atom limit, Python range and MSA access; do not treat a protein–protein binder as a supported affinity request.

Official source

Expected result

A supported YAML task and an explicit decision about external sequence submission.

2. Install the inspected Boltz source

Linux

Use a fresh Python 3.10–3.12 environment. This base install permits CPU use; follow upstream CUDA-extra instructions only after hardware review. Freeze resolved dependencies and preserve downloaded model hashes.

python -m pip install 'boltz @ git+https://github.com/jwohlwend/boltz.git@b1ebfc46ecf57f5414e0d1a6f9027bbb122c53bc'
boltz predict --help
Official source

Expected result

Boltz CLI is available in the recorded environment; inference has not yet been checked.

3. Save the official affinity YAML

Linux

Save this unchanged as affinity.yaml in a new run directory. Chain B is the small-molecule binder. This public example checks the interface, not a claim about the example's experimental binding.

version: 1  # Optional, defaults to 1
sequences:
  - protein:
      id: A
      sequence: MVTPEGNVSLVDESLLVGVTDEDRAVRSAHQFYERLIGLWAPAVMEAAHELGVFAALAEAPADSGELARRLDCDARAMRVLLDALYAYDVIDRIHDTNGFRYLLSAEARECLLPGTLFSLVGKFMHDINVAWPAWRNLAEVVRHGARDTSGAESPNGIAQEDYESLVGGINFWAPPIVTTLSRKLRASGRSGDATASVLDVGCGTGLYSQLLLREFPRWTATGLDVERIATLANAQALRLGVEERFATRAGDFWRGGWGTGYDLVLFANIFHLQTPASAVRLMRHAAACLAPDGLVAVVDQIVDADREPKTPQDRFALLFAASMTNTGGGDAYTFQEYEEWFTAAGLQRIETLDTPMHRILLARRATEPSAVPEGQASENLYFQ
  - ligand:
      id: B
      smiles: 'N[C@@H](Cc1ccc(O)cc1)C(=O)O'
properties:
  - affinity:
      binder: B
Official source

Expected result

Unique entity IDs and properties.affinity.binder refer to the same ligand chain.

4. Run the bounded public example

Linux

This command uses the external MSA service. Run only after agreeing to that boundary and choose a fresh output directory. Existing cached output is not evidence of a new run.

boltz predict affinity.yaml --use_msa_server --out_dir boltz_review
Official source

Expected result

Expected: mmCIF, confidence JSON and affinity JSON under the documented output hierarchy, or an explicit failed/incomplete run. No values were measured in this batch.

Troubleshooting

  • Invalid YAML: check IDs, indentation and mutually exclusive SMILES/CCD.
  • Missing affinity: confirm a single small-molecule binder and properties entry, not just a structure prediction.
  • MSA/network failure: preserve errors or use documented precomputed local MSA; do not invent alignments.
  • Memory failure: review hardware and documented batch/sample options.
  • Reused predictions: retain distinct run directories and inspect cache policy.
  • Implausible output: investigate chemistry and inputs before interpretation; confidence is not assay evidence.
Still not working

Alternatives

Use a structure-only Boltz workflow when affinity's ligand scope is not met. An external binding assay is independent validation, not an interchangeable predicted score.