lucidrains/alphafold3-pytorch

Implementation of Alphafold 3 from Google Deepmind in Pytorch

What it solves

This project provides a PyTorch implementation of AlphaFold 3, a model designed for the accurate structure prediction of biomolecular interactions. It allows researchers to predict the 3D coordinates of atoms in complex biological molecules, including proteins and other biomolecules, which is critical for understanding biological functions and drug discovery.

How it works

The implementation translates the algorithms described in the AlphaFold 3 paper into PyTorch code. It utilizes a diffusion-based approach to sample atom positions and incorporates several specialized modules:

  • Input Handling: Processes PDB (Protein Data Bank) data, including Multiple Sequence Alignments (MSA) and templates.
  • Pairformer Stack: A core architectural component for processing structural information.
  • Diffusion Module: An atom encoder, token transformer, and atom decoder that work together to refine and generate the 3D coordinates of atoms.
  • Training Pipeline: Includes scripts for filtering and clustering PDB datasets to prepare high-quality training data from mmCIF files.

Who it’s for

  • Computational Biologists: Who need to predict the structure of biomolecular complexes.
  • ML Researchers: Interested in implementing or studying the architecture of AlphaFold 3 in a flexible PyTorch environment.
  • Bioinformatics Engineers: Who require tools for preparing and curating large-scale PDB datasets for structural biology models.

Highlights

  • Full PyTorch Implementation: Brings the AlphaFold 3 architecture to the PyTorch ecosystem for easier modification and training.
  • Comprehensive Data Pipeline: Includes detailed scripts for downloading, filtering, and clustering PDB data from the RCSB Protein Data Bank.
  • End-to-End Workflow: Supports the entire process from parsing PDB files to generating sampled atom positions.
  • Docker Integration: Provides a Dockerfile for consistent environment setup with GPU support.

Related

  • Project
  • Project
  • Project
  • Project
  • Dispatch