The modfications are:
- --num_seeds flag added to run_alphafold.py to run multiple seeds automatically
- --num_recycles flag added to run_alphafold.py to set the number of trunk recycles (default 10)
- Saving output files and printing logs as they come in
- wiki doc page docs/wiki.md
Warning: This is a custom fork and not the official version. In active dev. Bugs expected. Use at your own risk. Fixes and PRs welcome.
This package provides an implementation of the inference pipeline of AlphaFold 3. See below for how to access the model parameters. You may only use AlphaFold 3 model parameters if received directly from Google. Use is subject to these terms of use.
Any publication that discloses findings arising from using this source code, the model parameters or outputs produced by those should cite the Accurate structure prediction of biomolecular interactions with AlphaFold 3 paper.
Please also refer to the Supplementary Information for a detailed description of the method.
AlphaFold 3 is also available at alphafoldserver.com for non-commercial use, though with a more limited set of ligands and covalent modifications.
If you have any questions, please contact the AlphaFold team at alphafold@google.com.
This repository contains all necessary code for AlphaFold 3 inference. To request access to the AlphaFold 3 model parameters, please complete this form. Access will be granted at Google DeepMind’s sole discretion. We will aim to respond to requests within 2–3 business days. You may only use AlphaFold 3 model parameters if received directly from Google. Use is subject to these terms of use.
See the installation documentation.
Once you have installed AlphaFold 3, you can test your setup using e.g. the
following input JSON file named alphafold_input.json
:
{
"name": "2PV7",
"sequences": [
{
"protein": {
"id": ["A", "B"],
"sequence": "GMRESYANENQFGFKTINSDIHKIVIVGGYGKLGGLFARYLRASGYPISILDREDWAVAESILANADVVIVSVPINLTLETIERLKPYLTENMLLADLTSVKREPLAKMLEVHTGAVLGLHPMFGADIASMAKQVVVRCDGRFPERYEWLLEQIQIWGAKIYQTNATEHDHNMTYIQALRHFSTFANGLHLSKQPINLANLLALSSPIYRLELAMIGRLFAQDAELYADIIMDKSENLAVIETLKQTYDEALTFFENNDRQGFIDAFHKVRDWFGDYSEQFLKESRQLLQQANDLKQG"
}
}
],
"modelSeeds": [1],
"dialect": "alphafold3",
"version": 1
}
You can then run AlphaFold 3 using the following command:
docker run -it \
--volume $HOME/af_input:/root/af_input \
--volume $HOME/af_output:/root/af_output \
--volume <MODEL_PARAMETERS_DIR>:/root/models \
--volume <DATABASES_DIR>:/root/public_databases \
--gpus all \
alphafold3 \
python run_alphafold.py \
--json_path=/root/af_input/fold_input.json \
--model_dir=/root/models \
--output_dir=/root/af_output
There are various flags that you can pass to the run_alphafold.py
command, to
list them all run python run_alphafold.py --help
. Two fundamental flags that
control which parts AlphaFold 3 will run are:
--run_data_pipeline
(defaults totrue
): whether to run the data pipeline, i.e. genetic and template search. This part is CPU-only, time consuming and could be run on a machine without a GPU.--run_inference
(defaults totrue
): whether to run the inference. This part requires a GPU.
See the input documentation.
See the output documentation.
See the performance documentation.
Known issues are documented in the known issues documentation.
Please create an issue if it is not already listed in Known Issues or in the issues tracker.
Any publication that discloses findings arising from using this source code, the model parameters or outputs produced by those should cite:
@article{Abramson2024,
author = {Abramson, Josh and Adler, Jonas and Dunger, Jack and Evans, Richard and Green, Tim and Pritzel, Alexander and Ronneberger, Olaf and Willmore, Lindsay and Ballard, Andrew J. and Bambrick, Joshua and Bodenstein, Sebastian W. and Evans, David A. and Hung, Chia-Chun and O’Neill, Michael and Reiman, David and Tunyasuvunakool, Kathryn and Wu, Zachary and Žemgulytė, Akvilė and Arvaniti, Eirini and Beattie, Charles and Bertolli, Ottavia and Bridgland, Alex and Cherepanov, Alexey and Congreve, Miles and Cowen-Rivers, Alexander I. and Cowie, Andrew and Figurnov, Michael and Fuchs, Fabian B. and Gladman, Hannah and Jain, Rishub and Khan, Yousuf A. and Low, Caroline M. R. and Perlin, Kuba and Potapenko, Anna and Savy, Pascal and Singh, Sukhdeep and Stecula, Adrian and Thillaisundaram, Ashok and Tong, Catherine and Yakneen, Sergei and Zhong, Ellen D. and Zielinski, Michal and Žídek, Augustin and Bapst, Victor and Kohli, Pushmeet and Jaderberg, Max and Hassabis, Demis and Jumper, John M.},
journal = {Nature},
title = {Accurate structure prediction of biomolecular interactions with AlphaFold 3},
year = {2024},
volume = {630},
number = {8016},
pages = {493–-500},
doi = {10.1038/s41586-024-07487-w}
}
AlphaFold 3's release was made possible by the invaluable contributions of the following people:
Andrew Cowie, Bella Hansen, Charlie Beattie, Chris Jones, Grace Margand, Jacob Kelly, James Spencer, Josh Abramson, Kathryn Tunyasuvunakool, Kuba Perlin, Lindsay Willmore, Max Bileschi, Molly Beck, Oleg Kovalevskiy, Sebastian Bodenstein, Sukhdeep Singh, Tim Green, Toby Sargeant, Uchechi Okereke, Yotam Doron, and Augustin Žídek (engineering lead).
We also extend our gratitude to our collaborators at Google and Isomorphic Labs.
AlphaFold 3 uses the following separate libraries and packages:
- abseil-cpp and abseil-py
- Chex
- Docker
- DSSP
- HMMER Suite
- Haiku
- JAX
- jax-triton
- jaxtyping
- libcifpp
- NumPy
- pybind11 and pybind11_abseil
- RDKit
- Tree
- Triton
- tqdm
We thank all their contributors and maintainers!
If you have any questions not covered in this overview, please contact the AlphaFold team at alphafold@google.com.
We would love to hear your feedback and understand how AlphaFold 3 has been useful in your research. Share your stories with us at alphafold@google.com.
This is not an officially supported Google product.
Copyright 2024 DeepMind Technologies Limited.
The AlphaFold 3 source code is licensed under the Creative Commons Attribution-Non-Commercial ShareAlike International License, Version 4.0 (CC-BY-NC-SA 4.0) (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at https://github.com/google-deepmind/alphafold3/blob/main/LICENSE.
The AlphaFold 3 model parameters are made available under the AlphaFold 3 Model Parameters Terms of Use (the "Terms"); you may not use these except in compliance with the Terms. You may obtain a copy of the Terms at https://github.com/google-deepmind/alphafold3/blob/main/WEIGHTS_TERMS_OF_USE.md.
Unless required by applicable law, AlphaFold 3 and its output are distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. You are solely responsible for determining the appropriateness of using AlphaFold 3, or using or distributing its source code or output, and assume any and all risks associated with such use or distribution and your exercise of rights and obligations under the relevant terms. Output are predictions with varying levels of confidence and should be interpreted carefully. Use discretion before relying on, publishing, downloading or otherwise using the AlphaFold 3 Assets.
AlphaFold 3 and its output are for theoretical modeling only. They are not intended, validated, or approved for clinical use. You should not use the AlphaFold 3 or its output for clinical purposes or rely on them for medical or other professional advice. Any content regarding those topics is provided for informational purposes only and is not a substitute for advice from a qualified professional. See the relevant terms for the specific language governing permissions and limitations under the terms.
Use of the third-party software, libraries or code referred to in the Acknowledgements section above may be governed by separate terms and conditions or license provisions. Your use of the third-party software, libraries or code is subject to any such terms and you should check that you can comply with any applicable restrictions or terms and conditions before use.
The following databases have been: (1) mirrored by Google DeepMind; and (2) in part, included with the inference code package for testing purposes, and are available with reference to the following:
- BFD (modified), by Steinegger M. and Söding J., modified by Google DeepMind, available under a Creative Commons Attribution 4.0 International License. See the Methods section of the AlphaFold proteome paper for details.
- PDB (unmodified), by H.M. Berman et al., available free of all copyright restrictions and made fully and freely available for both non-commercial and commercial use under CC0 1.0 Universal (CC0 1.0) Public Domain Dedication.
- MGnify: v2022_05 (unmodified), by Mitchell AL et al., available free of all copyright restrictions and made fully and freely available for both non-commercial and commercial use under CC0 1.0 Universal (CC0 1.0) Public Domain Dedication.
- UniProt: 2021_04 (unmodified), by The UniProt Consortium, available under a Creative Commons Attribution 4.0 International License.
- UniRef90: 2022_05 (unmodified) by The UniProt Consortium, available under a Creative Commons Attribution 4.0 International License.
- NT: 2023_02_23 (modified) See the Supplementary Information of the AlphaFold 3 paper for details.
- RFam: 14_4 (modified), by I. Kalvari et al., available free of all copyright restrictions and made fully and freely available for both non-commercial and commercial use under CC0 1.0 Universal (CC0 1.0) Public Domain Dedication. See the Supplementary Information of the AlphaFold 3 paper for details.
- RNACentral: 21_0 (modified), by The RNAcentral Consortium available free of all copyright restrictions and made fully and freely available for both non-commercial and commercial use under CC0 1.0 Universal (CC0 1.0) Public Domain Dedication. See the Supplementary Information of the AlphaFold 3 paper for details.