How to Run Boltz-2

by Corin Wagen · Jun 6, 2025

Today, a team of researchers from MIT and Recursion released Boltz-2, an open-source protein–ligand co-folding model. Boltz-2 can not only predict the structure of biomolecular complexes from sequences, it also "approaches the accuracy of FEP-based methods" at protein–ligand binding-affinity prediction (source).

In a set of binding-affinity benchmarks, the authors show that Boltz-2 performs almost as well as the industry-standard free-energy perturbation workflow and handily outperforms cheaper physics-based methods like MM/PBSA, although performance is considerably worse on internal targets from Recursion:

Comparison of Boltz-2 to other methods.

Figure 6 from the Boltz-2 paper.

While full assessment of Boltz-2's capabilities will require extensive benchmarking and external verification, it's already possible for scientists to start using Boltz-2 for their own projects. In this post, we provide step-by-step guides on how to run Boltz-2 locally and through Rowan's computational-chemistry platform.

(Curious about how Boltz-2 works? Check out this FAQ to learn more about what the model's trained on, where it can be useful, and where it still has limitations.)

Running Locally

1. Install Boltz-2

Boltz-2 is an open-source model and can be installed from the Python Package Index. You can install this any number of ways; we like using pixi for dependency management.

pixi init
pixi add python=3.12
pixi add --pypi boltz

2. Create a Template .yaml File

Boltz-2 requires a specific input-file syntax. The authors provide several examples in their GitHub repository; here's the example .yaml file for predicting protein–ligand binding affinity.

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

Boltz-2 does not yet support protein–protein binding affinity or predicting binding affinity for multiple ligands.

3. Run Boltz-2 Locally

To run Boltz-2, initialize the environment shell and then use boltz predict to run the model.

pixi shell
boltz predict affinity.yaml --use_msa_server

This call will take a little while to run; make sure your computer has enough disk space to download the model weights! When finished, Boltz-2 will write a bunch of directories and .json files containing predictions. The predictions will be located in output/predictions/[input-file]/affinity-[input-file].json, and will contain predicted IC50 values (in micromolar) and binary probability that the compound is a binder.

Boltz-2 is a complex package and this guide barely scratches the surface. For a full guide to running prediction with Boltz-2, see the authors' documentation.

Running Through Rowan

To quickly use Boltz-2 for binding-affinity prediction, calculations can also be run through Rowan. Creating an account on Rowan is completely free and can be done using any Google-managed email account; create an account here.

1. Choose Workflow

Selecting the protein-ligand co-Folding workflow.

Once you sign in to Rowan, you can select which workflow you want to run. Here, we'll select the "Protein–Ligand Co-Folding" workflow (towards the bottom of the screen).

2. Enter Protein and Ligand

Inputting a sucrose molecule.

Proteins can be specified by sequence; existing protein structures in Rowan won't work, because this is co-folding—we don't want to start with a 3D structure.

Molecules can be loaded into Rowan by name, by SMILES, by input file, or through our provided 2D and 3D editors. Here, we'll input the molecule from the above demo by SMILES.

3. Run Calculation

The finished calculation results.

Once you click "Submit Calculation," we'll allocate a cloud GPU and start running Boltz-2 on your system. The calculations should be done in a few minutes and can be viewed through the browser.

Rowan displays the predicted protein–ligand complex through our 3D viewer, with predicted binding affinity and confidence metrics on the side. The complex can be downloaded as a PDB file for further analysis.

Banner background image

Start running calculations in minutes!

Our platform lets you submit, view, analyze, and share calculations using cutting-edge methods trusted by hundreds of leading scientists. We give every new user 500 free credits to start, plus more every week. Making an account and running your first calculation takes only seconds: start using Rowan today!

Start computing →

What to read next

OpenFold3 and Co-Folding with Templates

OpenFold3 and Co-Folding with Templates

a new and different co-folding model; co-folding conditioned with user-specified templates; protein structure overlays; support for the mmCIF file format
Jun 1, 2026 · Ari Wagen
Quantum ESPRESSO & Academic FEP Access

Quantum ESPRESSO & Academic FEP Access

why one should run plane-wave DFT; how to configure and run Quantum ESPRESSO in Rowan; a graphitic case study; FEP now available for academic groups; a fast way to do Butina splitting on big datasets
May 28, 2026 · Jonathon Vandezande and Raphael Stone
How to Simulate Materials with DFT

How to Simulate Materials with DFT

An introduction to plane-wave DFT for chemists: pseudopotentials, energy cutoffs, k-points, smearing, and what to watch out for.
May 28, 2026 · Raphael Stone
Fast and Efficient Butina Splitting of Chemical Data with Chalcedon

Fast and Efficient Butina Splitting of Chemical Data with Chalcedon

A fast, memory-efficient, minimal-dependency Python package for Butina clustering and splitting chemical data.
May 27, 2026 · Eli Mann
Improving Rowan's Performance on the OpenBind EV-A71 Release

Improving Rowan's Performance on the OpenBind EV-A71 Release

How we recovered useful RBFE accuracy on a challenging real-world dataset.
May 20, 2026 · Corin Wagen
New Protein Visualizations

New Protein Visualizations

distilling insight from complexity; two-dimensional protein–ligand interaction diagrams; protein blob surfaces; space-filling molecule representations
May 19, 2026 · Ari Wagen
Notes on Rowan Engineering; Or How to Vibe-Refactor a Codebase

Notes on Rowan Engineering; Or How to Vibe-Refactor a Codebase

stuck in Rowan's dependency slough of despond; fleeing the complexity of microservices & partial refactors; multiplying packages to reduce complexity; using agents to vibe-refactor our whole codebase
May 13, 2026 · Jonathon Vandezande
Testing Rowan on the OpenBind EV-A71 Release

Testing Rowan on the OpenBind EV-A71 Release

How Rowan's analogue-docking and RBFE workflows fare on this dataset.
May 6, 2026 · Corin Wagen
Benchmarking Membrane-Permeability Predictors

Benchmarking Membrane-Permeability Predictors

Testing GNN-MTL and PyPermm on datasets of small molecules, macrocycles, and PROTACs
Apr 28, 2026 · Ari Wagen
Smarter Analogue Docking, Pocket Detection, and g-xTB Analytical Gradients

Smarter Analogue Docking, Pocket Detection, and g-xTB Analytical Gradients

more robust MCS detection; conformer sampling with torsional Monte Carlo; better alignment and RBFE results; a new pocket-detection workflow; analytical gradients now available for g-xTB
Apr 23, 2026 · Zachary Fried, Corin Wagen, Ari Wagen, and Jonathon Vandezande