Skip to content

moritztng/tt-boltz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TT-Boltz

Original Repo | Paper

Introduction

TT-Boltz is the Boltz-1 fork that runs on a single Tenstorrent Wormhole n150 or n300.

Boltz-1 is the state-of-the-art open-source model to predict biomolecular structures containing combinations of proteins, RNA, DNA, and other molecules. It also supports modified residues, covalent ligands and glycans, as well as conditioning the prediction on specified interaction pockets or contacts.

All the code and weights are provided under MIT license, making them freely available for both academic and commercial uses. For more information about the model, see our technical report.

For an intuitive understanding of AlphaFold 3, I recommend The Illustrated AlphaFold.

Installation

Clone

git clone https://github.com/moritztng/tt-boltz.git
cd tt-boltz

Create Virtual Environment

python3 -m venv env
source env/bin/activate

Build TT-Metal from Source

Don't install tt-nn with ./create_venv.sh.

Tenstorrent Installation Guide

Install TT-NN

pip config set global.extra-index-url https://download.pytorch.org/whl/cpu
pip install setuptools wheel
pip install -r <path-to-tt-metal-repo>/tt_metal/python_env/requirements-dev.txt
pip install <path-to-tt-metal-repo>

Install TT-Boltz

pip install -e .

You can ignore the error about the pandas version.

Inference

You can run inference using Boltz-1 with:

boltz predict input_path --use_msa_server --accelerator=tenstorrent

Pass --accelerator=tenstorrent to run on Tenstorrent Wormhole.

Boltz currently accepts three input formats:

  1. Fasta file, for most use cases

  2. A comprehensive YAML schema, for more complex use cases

  3. A directory containing files of the above formats, for batched processing

To see all available options: boltz predict --help and for more information on these input formats, see our prediction instructions.

Current Runtime

We didn't even start writing low-level code yet and Tenstorrent Blackhole was just released. I'm confident we'll get to 2 minutes.

Hardware ~Minutes
AMD Ryzen 5 8600G 45
Nvidia T4 9
Tenstorrent Wormhole n300 7
Nvidia RTX 4090 2

Evaluation

To encourage reproducibility and facilitate comparison with other models, we provide the evaluation scripts and predictions for Boltz-1, Chai-1 and AlphaFold3 on our test benchmark dataset as well as CASP15. These datasets are created to contain biomolecules different from the training data and to benchmark the performance of these models we run them with the same input MSAs and same number of recycling and diffusion steps. More details on these evaluations can be found in our evaluation instructions.

Test set evaluations CASP15 set evaluations

Community

Cite

If you use this code or the models in your research, please cite the following paper:

@article{wohlwend2024boltz1,
  author = {Wohlwend, Jeremy and Corso, Gabriele and Passaro, Saro and Reveiz, Mateo and Leidal, Ken and Swiderski, Wojtek and Portnoi, Tally and Chinn, Itamar and Silterra, Jacob and Jaakkola, Tommi and Barzilay, Regina},
  title = {Boltz-1: Democratizing Biomolecular Interaction Modeling},
  year = {2024},
  doi = {10.1101/2024.11.19.624167},
  journal = {bioRxiv}
}

In addition if you use the automatic MSA generation, please cite:

@article{mirdita2022colabfold,
  title={ColabFold: making protein folding accessible to all},
  author={Mirdita, Milot and Sch{\"u}tze, Konstantin and Moriwaki, Yoshitaka and Heo, Lim and Ovchinnikov, Sergey and Steinegger, Martin},
  journal={Nature methods},
  year={2022},
}

About

Boltz-1 fork that runs on Tenstorrent Wormhole

Resources

License

Stars

Watchers

Forks

Contributors 2

  •  
  •  

Languages